Windows Phone School HSE Lecture 6
-
Upload
dmitry-gridnev -
Category
Technology
-
view
80 -
download
0
Transcript of Windows Phone School HSE Lecture 6
![Page 1: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/1.jpg)
Школа разработчиков Windows Phone
![Page 2: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/2.jpg)
Занятие №6
Сборная солянка
![Page 3: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/3.jpg)
Получение геолокации
• Определение координат девайса с помощью A-GPS
• Нужны пермишены для этих действий (при установке аппа)
• Энергозатратная операция
![Page 4: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/4.jpg)
Пример
![Page 5: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/5.jpg)
Пример
![Page 6: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/6.jpg)
Многозадачность
• Ее нет • Есть механизмы, создающие имитацию
многозадачности • Tombstoning (захоронение)
![Page 7: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/7.jpg)
Жизненный цикл приложения
![Page 8: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/8.jpg)
Захоронение
• Создает иллюзию непрерывной работы приложения
• Не имеет недостатков “настоящей” непрерывной работы
• Загружает заранее сохраненное состояние на момент выгрузки приложения из памяти телефона
![Page 9: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/9.jpg)
Реализация
• В App.xaml.cs доступны 4 события, связанные с жизненным циклом: Launching, Closing, Activated, Deactivated
• При переходе со страницы на страницу вызываются события OnNavigatingFrom и OnNavigatedTo
![Page 10: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/10.jpg)
![Page 11: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/11.jpg)
Фоновые агенты
• Небольшие программы, не имеющие интерфейса и имеющие доступ к определенным частям вашего аппа (IsolatedStorage)
• Переодические• Ресурсоемкие• Аудио
![Page 12: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/12.jpg)
Периодические агенты
• Выполняются раз в 30 минут (в зависимости от количества фоновых задач на девайсе)
• Необходимо обновлять каждые 2 недели• Обновляют тайлы, создают тост-
нотификации и т.д.•
![Page 13: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/13.jpg)
Создание
![Page 14: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/14.jpg)
Project -> Add reference -> Projects
![Page 15: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/15.jpg)
Создание объекта в нашем коде
![Page 16: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/16.jpg)
Tip
• Так как существует ограничение на время выполнения (14 дней с момента добавление в стек периодических агентов), то best practice – обновлять ваш таск каждый раз, когда юзер заходит в апп
![Page 17: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/17.jpg)
Запрещенные APIs
![Page 18: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/18.jpg)
Ресурсоемкие агенты
• Выполняются гораздо реже (примерно раз в сутки)
• Имеют большие ограничения (заряд должен быть не меньше 90%, юзер не должен говорить в этот момент по телефону, девайс должен быть подключен к WiFi)
• Под выполнение выделяются серьезные мощности, время выполнения может занимать до 10 минут
![Page 19: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/19.jpg)
Как работать
![Page 20: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/20.jpg)
Обработка JSON
• Библиотека JSON.NET (musthave)
![Page 21: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/21.jpg)
Facebook SDK for .NET
• Очень удобный и простой инструмент для взаимодействия с API Facebook
• Бурно развивается, open-source
![Page 22: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/22.jpg)
Работа с запросами
• RestSharp, прекрасная библиотека для работы со всеми необходимыми запросами и серверными взаимодействиями
![Page 23: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/23.jpg)
Тулкиты
• Windows Phone Silverlight Toolkit• Coding4Fun• Telerik (100$)
![Page 24: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/24.jpg)
Resharper
• Плагин от JetBrains для Visual Studio• 30$• Без него не могу уже работать
![Page 25: Windows Phone School HSE Lecture 6](https://reader033.fdocuments.net/reader033/viewer/2022052904/557f0169d8b42ac46e8b48c0/html5/thumbnails/25.jpg)
Q&A