Windows Phone 7 - wstęp Andrzej Chybicki.

Slides:



Advertisements
Podobne prezentacje
Projekt Do kariery na skrzydłach – studiuj Aviation Management Projekt współfinansowany ze ś rodków Europejskiego Funduszu Społecznego. Biuro projektu:
Advertisements

Usługi sieciowe Wykład 9 VPN
Statistics – what is that? Statystyka dla gimnazjalistów.
1 Ochrona środowiska – historia od PLAN 1.Wprowadzenie 2.Przegląd wydarzeń od 1972 roku 3.Podsumowanie 4.Literatura.
Projekt Do kariery na skrzydłach – studiuj Aviation Management Projekt współfinansowany ze ś rodków Europejskiego Funduszu Społecznego. Biuro projektu:
Projekt Do kariery na skrzydłach – studiuj Aviation Management Projekt współfinansowany ze ś rodków Europejskiego Funduszu Społecznego. Biuro projektu:
Projekt Do kariery na skrzydłach – studiuj Aviation Management Projekt współfinansowany ze ś rodków Europejskiego Funduszu Społecznego. Biuro projektu:
Projekt Do kariery na skrzydłach – studiuj Aviation Management Projekt współfinansowany ze ś rodków Europejskiego Funduszu Społecznego. Biuro projektu:
Sun altitude Made by: Patryk Cichy Patryk Cichy Mateusz Dąbrowicz Mateusz Dąbrowicz Mariusz Król Mariusz Król Mariusz Dyrda Mariusz Dyrda Group leader:
Wstęp do geofizycznej dynamiki płynów. Semestr VI. Wykład
ALLEGRO PIERWSZA GRA: WYŚCIG
Agnieszka Piekarska & Łukasz Trzciałkowski Digital Photography Agnieszka Piekarska and Łukasz Trzciałkowski.
Copyright for librarians - a presentation of new education offer for librarians Agenda: The idea of the project Course content How to use an e-learning.
In Katowice Providence Project meeting Poland, Katowice, 8th of June 2010.
Software Engineering 0. Information on the Course Leszek J Chmielewski Faculty of Applied Informatics and Mathematics (WZIM) Warsaw University of Life.
Team Building Copyright, 2003 © Jerzy R. Nawrocki Requirements Engineering Lecture.
Dzielenie relacyjne / Relational Division
Parallel Processing, Pipelining, Flynn’s taxonomy
Ministerstwo Gospodarki Poland'sexperience Waldemar Pawlak Deputy Prime Minister, Minister of Economy March 2010.
Polaryzacja światła.
Współprogramy Plan: Motywacja Składnia Scenariusz obiektu współprogramu Przykłady Producent – konsument ( instrukcja attach ) Czytelnik -pisarze ( instukcja.
Exact Software Poland Sp z o.o. Adam Sasin AXA TUiR
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Tworzenie aplikacji sieciowych w języku Java Threads Prezentacja.
MS SQL SERVER udział w rynku. Source: Gartner Dataquest (May 2006) Company Market Share (%) Market Share (%) Growth (%) Oracle6, ,
1 Building Integration System - Training Internal | ST-IST/PRM1 | 02/2008 | © Robert Bosch GmbH All rights reserved, also regarding any disposal,
More Secure and Dependable 1.User Account Protection, more secure boot, anti-spyware and anti-phishing 2.Restart Manager (fewer reboots) 3.Instant-on.
XXVII Liceum Ogólnokształcące im. Tadeusza Czackiego w Warszawie easy - creative - effective ICT in Czacki | Marcin Stanowski | XXVII LO im T. Czackiego.
Tadeusz Janasiewicz IT Group, Tadeusz Janasiewicz, WSUS, IT Group, r.
Wstęp do programowania urządzeń z systemem. Windows Phone 7
Najpopularniejsze aplikacje ASP.NET i PHP.
Avaya IP Office - Wersja 8
CLOUD COMPUTING.
Windows Phone 7 - wstęp Andrzej Chybicki.
SQL i internet PHP i MySQL. Programy MySQL: serverMySQL: server WWW serverWWW server Interpreter PHPInterpreter PHP Przeglądarka stron wwwPrzeglądarka.
Piotr Nowak Development Manager Construction Innovation and Development Department The Chartered Institute of Building.
Download the latest version at This message wont show up when youre presenting Windows Phone 7.
______________________________________ TARGU-JIU 2010.
Theory of Computer Science - Basic information
Comenius The Great Wonders of Europe The Polish school is called … is called …
Zarządzanie magazynem danych - Storage Spaces w Windows Server 2012 oraz w Windows 8 Błażej Miśkiewicz MCTMCP MCSA MCTS MCITP.
Damian Wojdan Kraków,
Microsoft Lync Online Service Overview.
Wprowadzenie do Windows 8 Marcin Iwanowski. Agenda Podstawowe koncepcje Windows 8Wprowadzenie do Windows Run-timeWindows Store Zrozumiecie: W co Microsoft.
REGIONALNE CENTRUM INFORMACJI I WSPOMAGANIA ORGANIZACJI POZARZĄDOWYCH REGIONAL INFORMATION and SUPPORT CENTER for NGOs EVALUATION V BALTIC SEA NGO FORUM.
WYDZIAŁ DS. OCHRONY PRAW WŁASNOŚCI INTELEKTUALNEJ SŁUŻBA CELNA RZECZPOSPOLITEJ POLSKIEJ Protection of Intellectual Property Rights in the Customs Service.
BLOOD DONATION.
Zasoby elektroniczne w cyklu akademickim Biblioteka w kryzysie czy kryzys w bibliotece Łódź 2010.
Click to show the screen.
The educational project: „ HIGH SCHOOL EXAM - WE WILL BE ABLE!”
POLAND. we will take you on a journey during which you will learn something about us.
Na podstawie: The Illusion Of Life Disney Animation.
Podstawy licencjonowania Exchange, SharePoint oraz Lync.
KINECT – czyli z czym to się je?. Damian Zawada
Kliknij Tylko jedna minutka. M ó wi si ę, ż e by kogo ś d ostrzec wystarczy 1 sekunda 1 godzina by kogo ś oceni ć 1 dzie ń by kogo ś polubi ć lub pokocha.
Teksty prymarne (original texts) to teksty autentyczne, nie są przeznaczone dla celów dydaktycznych; teksty adaptowane (simplified/adapted texts)są przystosowane.
Rozdział 9: Przegląd usług sieciowych
Rozdział 3: Bezpieczeństwo w sieci opartej na systemie Windows 2000.
WELCOME TO Gdańsk Culture & Sport Sport Football.
NEW MODEL OF SCHOOL HEADS PREPARATION, INDUCTION AND CONTINUING PROFESSIONAL DEVELOPMENT IN POLAND Roman Dorczak, Grzegorz Mazurkiewicz   Jagiellonian.
Copyright © 2010 Intel Corporation. All rights reserved. Intel and the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries.
dla programistów Windows Phone
TROCHĘ HISTORII Marek Zając PO CO UŻYWAĆ OPENCL? Marek Zając.
Silverlight 4 dla Windows Phone 7
Polish cadastral system Land Administration Domain Model
1.
POLISH FOR BEGINNERS.
Wydział Elektroniki Kierunek: AiR Zaawansowane metody programowania Wykład 6.
Windows Phone 7. Plan prezentacji  Podstawowe informacje o Windows Phone  Platforma programistyczna  Demo.
Platforma programistyczna  C#(VB) i XAML  Platforma programistyczna  Visual Studio 2010 Express for Windows Phone (Visual Studio 2010)  Windows Phone.
Media Release for Free and Reduced-Price Meals
Zapis prezentacji:

Windows Phone 7 - wstęp Andrzej Chybicki

Windows Phone 7 - początki Microsoft o Windows Phone 7: In golf, it’s known as a “mulligan”; in schoolyard sports, it’s called a “do-over”; and in the computer industry, we say it’s a “reboot.” Dwie ścieżki programowania : - XNA -Silverlight Silverlight – platforma developerska łącząca wygodę tworzenia interfejsu, automatycznym łączeniem zdarzeń z możliwością zaawansowanego przetwarzaniem danych XNA – platforma developerska do tworzenia gier (2D i 3D), -game-loop -XBOX, PC, Zune (mobile)

Środowisko pracy aplikacji Kod w pełni zarządzalny przez .NET Framework Języki programowania Sugerowane rozwiązanie – C# XNA i Silverlight współdzieli niektóre biblioteki, ale nie można tworzyć projektów „mieszanych”

Silverlight vs. XNA Dla aplikacji użytecznych (RIA) XAML (Extensible Application Markup Language ) Interfejs użytkownika Przekazywanie zdarzeń Niektóre elementy logiczne oraz animacyjne WP7 Silverlight = Silverlight 3 – niektóre rzeczy, których nie można zrobić na telefonie + niektóre rzeczy które można zrobić tylko na telefonie 

XNA vs. Silverlight Gry, aplikacje medialne, animacje z interakcją z użytkownikiem wymagające zaawansowanego renderowania grafiki Wewnętrzna synchronizacja wątków odświeżania i użytkownika 2D (sprites) i 3D (models) Silverlight (vector graphics) vs. XNA (bitmap graphics) Time-steered vs. user (event) steered apps

Two Flavors of Applications High performance game framework Rapid creation of multi-screen 2D and 3D games Rich content pipeline Mature, robust, widely adopted technology spanning Xbox 360, Windows, and Zune Modern XAML/event-driven application UI framework Rapid creation of visually stunning apps Metro-themed UI controls HTML/JavaScript 500,000 developers spanning Windows and web

Windows Phone 7 jest w chmurze! Mapy Bing (LBS) Xbox Live Windows Phone Marketplace

General Concept Software Architecture App Model Cloud and Integration Services Hardware Foundation UI Model General Concept

New Concept DESIGN: END USER COMES FIRST PLATFORM: RICHER, DEEPER, EASIER APPS HARDWARE: FASTER TO MARKET, LESS HEAVY LIFTING

Metro UI

Hardware Foundation (in 7.0) MIX 11 3/26/2017 Hardware Foundation (in 7.0) Capacitive touch 4 or more contact points 800 Sensors A-GPS, Accelerometer, Compass, Light, Proximity, Camera 5 mega pixels or more Multimedia Common detailed specs, Codec acceleration Memory 256MB RAM or more, 8GB Flash or more GPU DirectX 9 acceleration CPU Qualcomm MSM8x55 800Mhz or higher Hardware buttons | Back, Start, Search 480 © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Sprzęt, wymagania i usługi Wielodotykowy ekran OLED (“organic light emitting diode”) Przyciski: Rozmiar ekranu: 480 x 800 (480 x 320) (160 px) Modem 3G, Wi-fi, Camera, Akcelerometr Vibration FM Radio Push Notification

Windows Phone Developer Tools Phone Emulator Samples Documentation Guides Community Packaging and Verification Tools Tools Windows Phone device Packaging & Verification Tools Windows Phone Emulator myapp.xap

Deployment Process Develop & Debug Submit & Validate Certify & Sign Windows Phone Application Deployment Service Marketplace

Certyfikacja aplikacji – główne filary Applications are reliable. Applications make efficient use of resources. Applications do not interfere with the phone functionality. Applications are free of malicious software.

Obszary procesu certyfikacji Application Policies Content Policies Application Submission Requirements Technical Certification Requirements Additional Requirements for Specific Application Types Patrz materiały do wykładu

Application Policies – Aplikacja… …musi być w pełni funkcjonalna i nie może żądać dodatkowej opłaty za udostępnienie swojej funkcjonalności, chyba że… … nie może promować planów taryfowych połączeń … nie może stanowić zagrożenia dla bezpieczeństwa telefonu oraz Marketplace … jeśli aplikacja pobiera lub zajmuje ponad 50 MB danych musi poinformować o tym użytkownika … jeśli wymaga uwierzytelniania w komunikacji peer2peer należy się upewnić że użytkownik ma ponad 13 lat

Application Policies (2)– Aplikacja… … może określać pozycję tylko na podstawie API ... może udostępniać lokalizację tylko za zgodą użytkownika … musi spełniać jeszcze inne wymagania : patrz materiały do wykładu

Content Policies Logo i znaki towarowe aplikacja może (powinna) posiadać swoje logo Może korzystać z innych znaków towarowych pod warunkiem akceptacji właściciela Nie może zawierać treści niezgodnych z prawem, w szczególności Promowanie przemocy, rasizmu, alkoholu, broni palnej i innych Treści, które ogólnie nie są obraźliwe ale mogą być uznane za takie w niektórych krajach ->treść powinna uwzględniać aspekt prawny każdego kraju w jakim MarketPlace oferuje swoje aplikacje

Application Submission Requirement Maksymalny rozmiar pliku XAP – 225 MB Używanie tylko API Windows Phone Zabronione jest korzystanie z metod wywołania typu Pinvoke oraz obiektów COM Nie może zawierać konfiguracji DEBUG Nie jest możliwe łączenie technologii XNA i Silverlight Microsoft.Xna.Framework.Game System.Windows.Controls Phone Capabilites czyli prawidłowy Manifest

Technical Certification Requirements Kompatybilność z różnymi telefonami WP 7 (2) Unexpected closure Responsywność aplikacji Operacji trwające dłużej niż 3 sekundy muszą być obsługiwane przez ProgressBar lub BusyIndicator W momencie przekazania aplikacji do MarketPlace wszystkie zdalne serwisy i zasoby aplikacji muszą być dostępne i wpływają na proces certyfikacji! Czas startu i responsywności po starcie – 5 s. i 20 s.

Technical Certification (2) Elementy obsługi przycisków telefonu…. Zajętość pamięci Max 90 MB RAM, dla urządzeń do 256 MB RAMU całkowitego Zaleca się użycie obiektów DeviceExtendedProperties DeviceStatus Aplikacja nie może blokować , opóźniać, przerywać odbioru połączeń telefonicznych, wiadomości SMS oraz innych zdarzeń wywoływanych z poziomu OS

Additional Requirements Lokalizacja Jeśli użytkownik nie życzy sobie … Aplikacje działające w tle a oszczędność baterii Aplikacje działające w tle do pobierania danych Muszą umożliwiać podgląd stanu zaawansowania pobierania oraz anulowania

Software Architecture App Model Cloud and Integration Services Hardware Foundation UI Model Software Architecture

Silverlight Capabilities Inputs Keyboard, Mouse, Touch, Ink XAML UI Core Common Controls, Text, Images, Data Binding, Page Navigation, Vector Graphics, Animation, Transformation, Styles and Templates Media Capture and Playback, VC1, WMA, MP3 Data LINQ to Objects, LINQ to XML, Isolated Storage, XML Base Class Library Generics, Collections, Cryptography, Threading Communication REST, RSS/ATOM, SOAP

Multitouch OOB Controls support touch Translate touch events to mouse events ScrollViewer has built-in support for pan and flick Manipulation for all UIElements Scale Translate

Keyboard Silverlight TextBox integrates with the SIP (on screen keyboard) Password has a delay SIP supports input scoping Key InputScopes: Text, Url, Number, Time, TelephoneNumber, EmailNameOrAddress

Media Media support H/W decode MediaStreamSource PlayReady DRM MediaElement Limitations One MediaElement only XNA sound effect API Supports polyphonic, looping wav data

Isolated Storage Compatible APIs with Silverlight on desktop No quota limits Not shared No write access to Media Library, use XNA for that Use for your application settings

Application Model Software Architecture App Model Cloud and Integration Services Hardware Foundation UI Model Application Model

Activation and Navigation Activation Events Handled by the Application instance Launching, Activated, Deactivated and Closing Navigation Events Handled by each PhoneApplicationPage class OnNavigatedTo, OnNavigatedFrom, OnBackKeyPressed, OnChooserReturn, OnOrientationChanged Controlled by Hardware using Back and Home keys Software using Navigation Service

Application Lifecycle Developer should check the IsApplicationInstancePreserved property to know if the application is returning from being dormant or tombstoned state. If it’s value true, then the application was in dormant state else tombstoned state. Application Lifecycle Load State!

Application Bar and System Tray No integration, but does affect Layout Show:Hide using SystemTray.IsVisible Application Bar Up to 4 Buttons Menu Items (Recommended 6) Toggle Visibility <mypage>.ApplicationBar.IsVisible

Panorama Part of the native Windows Phone look and feel Panorama is a long horizontal canvas PanoramaItem serves as a container that hosts other content and controls

Pivot Provides a quick way to manage views or pages Pivot is a container of pivot items PivotItem contain individual page content such as controls, grids, or links

Many more… Standard Controls Buttons, Image, Layout, ListBox, TextBox, Slider, Other… Bing Maps Bing Map Control, Integration with Bing Maps Services Deep Zoom Included in core run-time , Optimized to take advantage of GPU, Consumes same content as SL on desktop, Supported for Online content Web Browser Displays network and local content, Supports pan, double tap and pinch to zoom, Supports transforms & projections, Application can interact with javascript

Integration Services Software Architecture App Model Cloud and Integration Services Hardware Foundation UI Model Integration Services

Launchers & Choosers Enable applications to provide a set of common phone tasks to their users Launchers let you fire and forget SMS, Email, Web Browser, Dialer, Search, etc. Choosers let you fire and pick the results back Picture, Camera, Contact, etc.

Push Notifications

Types of Push Notifications Tile notifications Update tile count, title and background image Toast notifications Display a on-top-like message Raw notifications Can be used in application logic

Location and Services The service obtains location data from multiple sources such as GPS, Wi-Fi, and cellular Applications can access location information Allows you to create location- aware applications

Accelerometer +Y +X +Z Measures force applied on each axis over time Determine in which direction the user is moving the device Expressed as a 3-dimensional vector +Y -Y +X -X +Z -Z

Register Your Device Test on a physical device Register your device Install, run, and debug unsigned applications Use Zune to register your device

Programowanie Windows 7!! Visual Studio 2010 Zune software (zamiast ActiveSync) Oczywiście będą problemy z deployowaniem aplikacji na Windows Mobile (dlaczego ma być zbyt prosto?) Co trzeba zrobić aby zsynchronizować kalendarz Windows XP z Windows Phone 7? UŻYĆ GOOGLA!!

Pierwsza aplikacja Silverlight Windows Phone Application WMAppManifest.xml Title="SilverlightHelloPhone„ Deployowanie na emulator albo prosto do urządzenia Rozdzielczość ekranu emulatora jest taka sama jak w urządzeniu Możliwość zmiany orientacji emulatora

Układ plików projektu Silverlight Cztery główne pliki każdego projektu: App.xaml MainPage.xaml App.xaml.cs MainPage.xaml.cs Postulat „code-behind”

App.xaml.cs, App.xaml oraz App.g.cs

MainPage.cs.xaml - > MainPage.g.cs Element w Silverlight i XML Hierarchia obiektów:

/bin/Debug Plik XAP – spakowany, przekompilowany projekt

A teraz „Hello World” w XNA Brak wbudowanych czcionek Czcionka jest bitmapą! Wszystko jest bitmapą! Czcionka musi być osobno zaimportowana do projektu (problemy licencyjne)

Game.cs – główna część projektu w XNA

Orientacja (Sliverlight) Portrait, Landscape, PortraitOrLandscape Orientacja a dynamiczne lokowanie komponentów (dynamic layout) HorizontalAlignment VerticalAlignment

Wynik

Marigin i padding Atrybuty: ActualWidth SizeChanged Loaded ActualSize LayoutUpdated

Powiązywanie zdarzeń poprzez XAML

Wykrywanie zmiany orientacji

Orientacja XNA BackBuffer i jego rola BackBuffer a wydajność

Obsluga zmiany orientacji w XNA

Dotyk w WP7 (XNA) 4 przyciski równocześnie Obsługa przez zdarzenia (Sliverlight) W XNA sprawdzanie robimy w metodzie Update (TouchPanel) TouchCollection touchLocations = TouchPanel.GetState(); State : Pressed, Moved, Released. Position ( Vector2 ) Id TouchLocation previousTouchLocation; bool success = touchLocation.TryGetPreviousLocation(out previousTouchLocation);

Dotyk w XNA - przykład

Gesty!! Tap, doubleTap, pinch, pinchComplete, fredrag, HorizontalDrag, VerticalDrag, DragComplete

Dotyk w WP7 (Silverlight) Low-level Zdarzenie Touch.FrameReported (XNA TouchPanel), nie zawiera gestów TouchPoint Action (Down, Move, and Up). Position (Point), Size TouchDevice High-level 3 zdarzenia w klasie UIElement ManipulationStarted, ManipulationDelta, ManipulationCompleted

Routed Event handling args.Handled = true;

Bitmapy (XNA) Definicja bitmapy w Silvelight (vector drawing, image, bitmap) a w XNA (Texture2D) BMP, JPG(S), PNG(S)

Bitmapy (Silverlight) <Image Source="Images/Hello.png" Stretch="None" /> W Silverlight można pobierać obrazek z URL:

Bitmapy (XNA)

Camera

Photo Library (XNA)

Photo Library Silverlight

Sensory w WP7 - akcelerometr

Akcelerometr w XNA