ден деветнадесети

влизане

Проучване на възможността за Windows Phone 7, не е възможно да не забележите, Push Уведомление механизъм уведомление, което не беше в предишните версии на Windows Mobile. Самият механизъм е много удобна за разработчици и потребители, и ви позволява да уведоми асинхронно потребителя за текущите събития. Например, една услуга от облака може да информира потребителя за това, което се е случило дадено събитие, на които ние трябва да по някакъв начин да отговори. Нека да видим какво има вътре механизма.







Ако още не сте чули, че на известия за предаване, тогава не се притеснявайте. Това е много проста: вместо да си заявление за проверка на сървъра за нови данни на всеки няколко минути, сървъра ви се казва на потребителя, че новите данни.

Защо да използваме известия за предаване?

Една от основните причини - за да пести енергията на батерията. Постоянни заявки до сървъра - това е допълнително натоварване на устройството, което води до разход на енергия.

Втората причина - с помощта на механизма за уведомяване, можете да съобщите на потребителя, появата на интересни събития, дори ако вашето приложение не се изпълнява в момента. Можете да уведоми потребителя, който искате да отворите приложението да извършва някакво действие.

Как Push Уведомление

В структурата на известия за предаване има специална услуга в облака (домакин за сметка на капацитета на Microsoft), което прави възможността да работя известия. При използване на устройство иска да бъдат уведомени за разговори към тази услуга и се създава постоянна връзка с него. В отговор на услугата дава устройството уникален URI, използвайки който можете да изпратите чрез HTTP съобщение. Това съобщение получава една и съща услуга в облака и го изпраща към съответното устройство. Логично е, че този URI ще бъде уникален за всяко устройство и приложение. По този начин, Windows Phone 7 уведомления за експлоатация могат да бъдат описани по следния начин:

Схематично този алгоритъм може да се представи по следния начин.

ден деветнадесети

типове известия

Има три различни видове известия за Windows Phone 7:

  • Плочки Известия - ако вашето приложение се закрепва върху Старт на началния екран, можете да актуализирате плочката (плочка) на вашата кандидатура. Например, можете да промените фоновото изображение, с помощта на поредица от номера 0-99. При изпращане на уведомлението определя URL на картина, която се намира в мрежата. Когато устройството получи уведомление, че автоматично да изтегля изображение от мрежата и го актуализира устройство десктоп.
  • Тост Известия - ако получите този тип уведомление на екрана се появява малко съобщение, съдържащо текста на уведомлението. Ако в момента това приложение може да бъде активна. Когато кликнете върху това съобщение, потребителят може бързо да превключвате към съответната нотификация.
  • Сурови Известия - ако получите този тип уведомление се предава директно към съдържанието на заявлението. Прилагане на правото да обработва съдържанието на уведомлението, както намери за добре в собствената си алгоритъм. Това е най-гъвкав начин да получавате известия от външни услуги.






Помислете за всички описани случаи. Ако искате да преминете през един пример, аз препоръчвам да видите пример в Обучителен на Windows Phone Developer, което е описано подробно как се работи с Push Уведомление.

плочки Известия

След това трябва да се създаде инстанция на ShellTileSchedule клас. който ще се актуализира приложенията за плочки. App.xaml.cs Отворете вашия проект файл, намерете проектирането на приложението App и го поставете веднага след следния кодов фрагмент.

На другите свойства и методи:

Сега, отидете в App () конструктор и добавяне на функции предизвикателство CreateShellTileSchedule:

Първи по поръчка URI от съобщението от мрежата Push

За работата, която трябва да се изгради Microsoft.Phone.Notification. От друга страна, ние можем да получите право услуга URI от Push Уведомление (ПНС), писане на 10 реда код. Първо ние създаваме HttpNotificationChannel инстанция, която е свързана автоматично с ПНС (отделна нишка). Остава ни да се създаде събитие, за да улови отговор услуга.

Това е, че отговорът е в моя случай:

Ние работим с Тост за уведомяване

Вземете нашите Push URI, ние трябва само да създадете HTTP-съобщение и да го изпратите на нашия URI. Ето как изглежда това в код:

Както можете да видите, че кодът е доста дълъг и сложен. Така че още веднъж Аз препоръчвам да учат примера на Kit обучение Телефон за разработчици на Windows (Push Уведомление например). Там целият процес е описано подробно от началото до края, и е показано как мощен механизъм актуализация в молбата си пред очите на потребителя.

Сурови Известия

Сега създайте манипулатор, който ще бъде задействана в момента на получаване на уведомлението. За тази цел, ние вече се регистрирали за събитието HttpNotificationReceived. Параметрите предадени на събитието манипулатор възразят HttpNotificationEventArgs, което позволява достъп до тялото на HTTP заявка, която е получена от приложението, създало уведомлението. В най-простия случай, нека това съобщение се показва на потребителя. Тялото на съобщение е на разположение като поток (поток). За да я прочетете, ще използваме StreamReader обекта.

В този манипулатор, ние използваме елемент за управление на ReceivedData. За да стане това възможно, е необходимо да се добави към формата. Направете го лесно движение на ръката.

При изпращане на уведомлението, в отговор, ние също получи две глави "X-DeviceConnectionStatus" и "X-NotificationStatus", които позволяват да се определи състоянието на устройството е свързано към мрежата и статуса на доставката на това съобщение. По този начин, кодът на нашата просто приложение, ще бъде както следва.

Сега, когато стартирате приложението и да изпращате текстови, този текст ще се появи на екрана на мобилното си устройство.

Ние ви сътворихме от един тривиален приложение, което получавате линия просто да го показва на екрана. Въпреки това, цялата сила на Сурови Известия е, че можем да определим поведението на всяка една марка за обработка на уведомления. Например, нека да промените приложението така, че при получаване на имената на някои цветове, тя се променя цвета на буквите, уведомяването на съобщението.

Сега, когато ви изпрати нотификация, която съдържа имената на цветове, цвета на текста в приложението ще се различават.

Ясно е, че това също е много прост алгоритъм за обработка. Въпреки това, той е добре доказано, че никой тук не ни ограничават в това как да се изгради на обработката на уведомленията. Като цяло, можем да създадем напълно всякакъв вид манипулация или промени поведението на заявлението.