1 / 91

Platforma aplikacyjna Windows 8

Platforma aplikacyjna Windows 8. Tomasz Kopacz. Agenda. Windows 8 Dlaczego Windows 8 Metro i filozofia (krótko) Sklep WinRT - jak to działa pod spodem (ABI ) Drobiazgi. Nowe szanse dla twórców aplikacji. Szybkie i Płynne ( Fast and fluid ) aplikacje pełnoekranowe

hea
Download Presentation

Platforma aplikacyjna Windows 8

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Platforma aplikacyjna Windows 8 Tomasz Kopacz

  2. Agenda Windows 8 Dlaczego Windows 8 Metro i filozofia (krótko) Sklep WinRT - jak to działa pod spodem (ABI) Drobiazgi

  3. Nowe szanse dla twórców aplikacji • Szybkie i Płynne (Fast and fluid) aplikacje pełnoekranowe • OS zaprojektowany najpierw z myślą o ekranach dotykowych (Touch-first OS), jednocześnie bez poświęcenia klasycznej funkcjonalności PC • Unikalna i wyróżniająca się platforma aplikacyjna User Experience • Sklep zintegrowany z każdym Windows 8 PC • Elastyczny proces i modele zarobkowe • Mechanizmy odkrywania aplikacji skupione na konsumencie Windows Store • Umożliwia wykorzystanie istniejących umiejętności i zasobów • Bazuje na najlepszych narzędziach, szablonach i dokumentacji, do której MS przyzwyczaił programistów • Integracja aplikacji z usługami w chmurze – personalizacja, przeniesienie ustawień w zawsze dostępne miejsce Platform & Tools • Nowe partnerstwa wokół ARM oraz kontynuowane wsparcie dla x86/64 • Usprawnienia w fundamentalnych obszarach związanych z pracą mobilną • Wsparcie dla wielu urządzeń: w wielu kształtach, rozmiarach;Plus urządzenia peryferyjne Devices Cloud Services

  4. Microsoft Confidential Dlaczego warto tworzyć aplikacje W8? Live Tiles • Wasza aplikacja/zawartość na wierzchu w centrum ekranu startowego • Bogaty zestaw informacji dostępny natychmiast dla użytkowników • Powiadomienia Push dla zdarzeń i czasowych uaktualnień Search Contracts • Możliwość dodania własnego brandu i aplikacji w jednym, spójnym mechanizmie wyszukiwania • Wyszukiwanie kontekstowe powiązane z własną aplikacją • Mechanizm spójny dla całego systemu i wszystkich aplikacji Share Contracts • Łatwa możliwość wspóldzielenia zawartości bezpośrednio z poziomu aplikacji • Łatwa możliwość przyjmowania zawartości od innych aplikacji • Więcej aplikacji, bogatsze i bardziej osobiste doświadczenia z użytkowania System Contracts • Podłączenie aplikacji do wszystkiego do czego podłącza się system (PC) • Podłaczenie zawartości aplikacji do innej aplikacji, pliku, urządzanie czy usługi – oraz vice-versa Hardware • Aplikacje zawsze podłączone • Automatyczna adaptacja do nowych sposobów interakcji (pen, ekran dotykowy, klawiatura, myszka) • Łatwy dostęp do sprzętu (sensory, kamera, itd)

  5. UI – Windows 8 StoreApps i filozofia

  6. Świat i aplikacje (też biznesowe) Konsument, Konsument, Konsument Użytkownik jest również biznesmenem i konsumentem. Jeżeli parametry biznesowe są porównywalne, wybiera konsument. Konsumenci lubią piękne rzeczy Argumenty emocjonalne Racjonalne spełniamy Czyli – piękne bo JA TAK CHCĘ Nie ma innego powodu! W sklepie kupuje się oczami!

  7. Dlaczego w UI nie użyć tego, co każdy zna?

  8. Elementy: Prostota … (dużo ich)

  9. Elementy: Typografia Segoe Light (Segoe WP Light) Segoe Regular (Segoe WP) Segoe Semi-Bold (Segoe WP Semi-Bold) Segoe Bold (Segoe WP; Bolded) Segoe Black (Segoe WP Black)

  10. Elementy: Kompozycja

  11. Windows StoreApps – DesignPrinciples Pride in craftsmanship Be fast and fluid Authentically digital Do more with less Win as one

  12. Dosłownie kilka, istotniejszych szczegółów

  13. Nawigacja - hierarchia

  14. Semantic zoom

  15. Połączenie…

  16. AppBar

  17. Jak wydawać polecenia? AppBar Panel (charm) Powierzchnia aplikacji • Do tego: skróty klawiszowe, mysz, menu kontekstowe (po tapnięciu) itp.

  18. Polecenia dotyku

  19. Interakcja i czytanie (tu) Interakcja Czytanie

  20. Zasoby • Blend – niedoceniane narzędzie! • Designing UX for apps - tutaj • Planowanie • Design Guidance • Case studies z migracji Web, iOS -> Windows 8 • Wart ściągnięcia PDF z całością (lokalnie tutaj) • Szablony PSD • Przegląd animacji • Szkolenia z budowy nowoczesnego interfejsu • Z programisty projektant…; Jak myśleć i planować • (nie jest to szkolenie techniczne!)

  21. Windows Store

  22. Trochę o zarobkach

  23. Windows Store Podział zysków 70:30 lub 80:20 30 do 25000 USD Free + reklamy – dowolnie Trial / Paid | Paid In-apppurchase Rejestracja 49 lub 99 USD / rok Dreamspark, MSDN, Bizspark – bezpłatnie 1 rok! Od strony dewelopera Pełne dane na temat licencji; Recipes (przypomnienie) Symulator

  24. Najgorszy rok : 500mln PC-tów na świecie

  25. Lektura obowiązkowa: App Developer Agreement Windows 8 app certification requirements Windows Store Terms of Use Reporting Infringement to Microsoft (znaki towarowe) (przepraszam, ale to NALEŻY przeczytać ze zrozumieniem)

  26. Rating Dobrowolne: Japan – CERO Canada – ESRB New Zealand - OFLC-NZ Germany – USK Australia - COB-AU PEGI - http://www.pegi.info Morocco, Netherlands, Malaysia, Malta, Norway, Peru, Philippines, Oman, Pakistan, Kazakhstan, Kuwait, Italy, Jordan, Latvia, Israel, Lithuania, Lebanon, Libya, Poland, Turkey, Ukraine, Trinidad and Tobago, Tunisia, United Arab Emirates, Vietnam, Iraq, Uruguay, Venezuela, Romania, Saudi Arabia, Portugal, Qatar, Serbia, Sri Lanka, Thailand, Slovakia, Slovenia, Russia, Singapore, Luxembourg, Mexico, Switzerland, United Kingdom, Spain, Sweden, Ireland, India, France, Puerto Rico, China, Hong Kong SAR, Austria, Belgium, Denmark, Egypt, Cyprus, Czech Republic, Estonia, Hungary, Indonesia, Finland, Greece, Bulgaria, Algeria, Argentina, Bahrain, Chile, Croatia, Costa Rica, Colombia, Rest of World Obowiązkowe: Korea – GRB South Africa – FPB Brazil – DJCTQ Taiwan – CSRR

  27. Microsoft Account kupującego Dostępność aplikacji zależy od: Region – Location Kraju pochodzenia w profilu konta: Microsoft Wallet, Microsoft Passport, .NET Passport, Microsoft Passport Network, Windows Live ID, Microsoft Account (Dotyczy głównie DRM – filmów, muzyki) • Uwaga! To specyfika polska – fakt, że część „starszych” kont była zakładana w czasie gdy np. XBox w Polsce był niedostępny itp..

  28. https://account.live.com/EditProf.aspx

  29. Konwersja z Trial privateasyncvoidConvertTrial() { varlicenseInformation = CurrentApp.LicenseInformation; licenseInformation.LicenseChanged+= licenseInformation_LicenseChanged; if (licenseInformation.IsTrial) awaitCurrentApp.RequestAppPurchaseAsync(); } voidlicenseInformation_LicenseChanged() { if (CurrentApp.LicenseInformation.IsActive) { //Enable features.. } }

  30. varlicenseInformation = CurrentApp.LicenseInformation; varproductLicense = licenseInformation.ProductLicenses["product1"]; if (!productLicense.IsActive && licenseInformation.IsActive ) { try { awaitCurrentAppSimulator.RequestProductPurchaseAsync("product1“, false); // No exception: enable product1 } catch (Exception) { //product 1 was not purchased } } In-app purchase

  31. Symulator CurrentAppSimulator.ReloadSimulatorAsync(file);

  32. Platforma

  33. Główne „tematy” API Aplikacja jest odizolowana od innych - Sandboxing Izolacja owszem, ale kontrakty do współdzielenia Broker kontrolujący dostęp do wrażliwych API / danych Windows Store Ekrany dotykowe Zapewnienie Fast & Fluid Przechowywanie lokalnie i w chmurze Ustawienia w chmurze Rozrywka i komunikacja: zawsze podłączony Powiadamianie Sensory Bogata grafika (DX 11.1) Aplikacja ma pełną kontrolę nad całym ekranem

  34. Platforma Windows 8 Aplikacje w stylu METRO Klasyczny desktop Aplikacje LOB, .NET, Silverlight, „Stare aplikacje Windows” HTML JavaScript WinRT(Windows Runtime), Konsument XAML HTML / CSS View JavaScript (Chakra) C C++ C# VB Model Controller C C++ C# VB WinRT APIs Devices & Printing Communication & Data Graphics & Media System Services .NET / SL Internet Explorer Win32 Application Model Windows Core OS Services Core

  35. Windows 8 API a Win32 Metro style app WinRT Win32 (Desktop Subset) Win32 (Metro style Subset) Windows Core OS Services

  36. Języki Założenie: programista używa tej wiedzy, którą już posiada HTML + JavaScript, GOTOWE układy stron XAML + C# / VB.NET – też do migracji rozwiązań z Windows Phone C++ - gry, specjalistyczne algorytmy, GOTOWE fragmenty kodu Ale Windows 8 pozwala ŁĄCZYĆ te technologie UI w HTML Logika w C# Obliczenia w C++ (choć – w JavaScript będą też szybkie )

  37. Jak to działa? Aplikacja C++ Obiekt Windows Runtime (lub komponent)ABI – AbstractBinary Interface) Napisany w C++, C#, VB Projekcja Aplikacja C#/VB Projekcja CLR Aplikacja HTMLi JavaScript Chakra Projekcja Metadane Windows(WinMD)

  38. Demo – pierwsza aplikacja Jak to się robi…

  39. Demo – druga pierwsza aplikacja W C#, JS, HTML5, C++ itp.. 

  40. Bardzo ważny element - asynchroniczność

  41. Jak? – ważne, proszę przeczytać tu JavaScript .then .done (tzw. Promise) C# async await CancellationToken, TPL, Task<T>, … C++ Różne biblioteki Klasa task, metoda .then

  42. Jeżeli coś zajmuje >50 ms, musi być asynchroniczne Po co? Fast & Fluid

  43. Demo 02 – API plików

  44. Demo 02 – async / await W C#, długa operacja z postępem

  45. Demo 02 – promise W JS

  46. Jeszcze raz, To nie tak że albo C#/VB.NET i XAML albo HTML5/JS To jest raczej „I”, „ORAZ”, „TAKŻE” A – jest jeszcze C++

  47. Co właściwie uruchamiamy na Windows 8?

  48. AppxManifest.xml | package.appxmanifest

  49. App manifest i zdolności Jawnie definiuje mechanizmy integracyjne Pliki / zasoby (music/pictures/videos/documents libraries, podłączane zasoby) Urządzenia (webcam, microphone, location, sms, proximity); rozszerzalne na nowe klasy urządzeń Sieć i tożsamość (internet, private network, credentials) Powiązanie z typami plików Kontrakty (search, share, FileOpenPickeritp) De facto określa na co broker pozwala; gdzie będzie pytał użytkownika

  50. COM/ABI dla zwykłych programistów

More Related