Windows Phone 7的Launchers&Choosers简介及其行为浅析
2010-10-17 14:45:48 来源:WEB开发网Launchers和Choosers是为了统一调用系统提供的服务(程序),让每个第三方应用程序调用相同系统功能时,保持界面的一致性。
Launchers
启动器:启动Windows Phone 7内置应用程序。
包括以下几个:
EmailComposeTask:启动发送Email的应用程序。
MediaPlayerLauncher:启动MeidaPlayer应用程序。
PhoneCallTask:启动打电话应用程序。
SearchTask:启动搜索应用程序。
SmsComposeTask:启动发短信应用程序。
WebBrowserTask:启动IE。
MarketplaceDetailTask:启动Marketplace客户端应用程序,并显示指定应用的详细信息。
MarketplaceHubTask:启动Marketplace客户端应用程序。
MarketplaceReviewTask:启动Marketplace客户端应用程序的审查页面。
MarketplaceSearchTask:启动Marketplace客户端应用程序的搜索页面。
Choosers
选择器:调用Windows Phone 7的应用程序选择所需要的信息(例如照片,电话等)
CameraCaptureTask:启动照相界面,拍照后返回照片图像。
EmailAddressChooserTask:启动选Email地址界面,选择后返回Email地址。
PhoneNumberChooserTask:启动电话号码选择界面,选择后返回电话号码。
PhotoChooserTask:启动图片选择界面,选择后返回图像信息。
SaveEmailAddressTask:启动保存Email地址界面,选择后返回保存是否成功。
SavePhoneNumberTask:启动保存电话号码界面,选择后返回保存是否成功。
启动器和选择器怎样区别?
启动器只是负责把相应的应用程序启动起来就可以了。
选择器需要将相应的应用程序界面启动,等待操作结束返回的结果。
Launcher行为分析
通常情况下,Laucher启动后,App.xaml.cs中的Application_Deactivated方法被执行,应用程序进入Deactivating状态;当Launcher操作结束,Application_Activated方法被执行,返回到应用程序,进入Activating状态。不过PhoneCallTask和MediaPlayerLauncher有些特别。
统计详见下表:
Application_Deactivated | Application_Activated | 所在页面的构造函数 | |
EmailComposeTask | 执行 | 执行 | 执行 |
MediaPlayerLauncher | 执行 | 执行 | 不执行 |
PhoneCallTask | 不执行 | 不执行 | 不执行 |
SearchTask | 执行 | 执行 | 执行 |
SmsComposeTask | 执行 | 执行 | 执行 |
WebBrowserTask | 执行 | 执行 | 执行 |
MarketplaceDetailTask | 执行 | 执行 | 执行 |
MarketplaceHubTask | 执行 | 执行 | 执行 |
MarketplaceReviewTask | 执行 | 执行 | 执行 |
MarketplaceSearchTask | 执行 | 执行 | 执行 |
PhoneCallTask弹出的可以视为是一个MessageBox,只是对程序覆盖,并未将应用程序切换到后台,所以都未执行。
MediaPlayerLauncher启动后,按返回键,返回到应用程序所在页面时,并不执行该页面的构造函数,其他Launcher却都执行,没想明白,谁知道请留言,谢谢!
Chooser行为分析
通常情况下,Chooser启动后,
Application_Deactivated | Application_Activated | 所在页面的构造函数 | |
CameraCaptureTask | 执行 | 执行 | 不执行 |
EmailAddressChooserTask | 执行 | 执行 | 不执行 |
PhoneNumberChooserTask | 执行 | 执行 | 不执行 |
PhotoChooserTask | 执行 | 执行 | 不执行 |
SaveEmailAddressTask | 执行 | 执行 | 执行 |
SavePhoneNumberTask | 执行 | 执行 | 执行 |
更多精彩
赞助商链接