上一章主要讲了如何用C#通过编程方式获取设备的信息。在本章中,我们将学习更有趣的东西(Launchers和Choosers)。Launchers和Choosers框架使WindowsPhone应用程
上一章主要讲了如何用C#通过编程方式获取设备的信息。在本章中,我们将学习更有趣的东西(Launchers和Choosers)。
Launchers和Choosers框架使Windows Phone应用程序可以为用户提供一些功能,比如拨打电话,发送电子邮件,选择图片等。
Windows Phone应用程序模型使每个应用程序的执行(包括内存隔离)以及文件存储相互隔离。Windows Phone应用程序不能直接读取一些信息,比如联系人列表,也不能直接启动另外一个应用程序,比如拨号应用程序和短信息应用程序。为了支持一些一般任务比如拨打电话或者发送短信息,Windows Phone提供了一系列Launcher和Chooser使应用程序可以间接完成这些事情。Launchers和Choosers切换当前应用程序至内置应用程序,并在将当前运行的应用程序切换至后台的时候提供一种无缝的体验。
该框架分为以下两部分:
• Launcher - 一个“没有返回信息” 的动作, 它可以调用一个特定的手机功能,比如发送短信息,打开一个Web页面,或者拨打电话
• Chooser – 一个 “打开文件对话框” 的动作, 它可以选择一个特定应用程序存储区域的信息,比如选择电子邮件地址,联系人,或者照片。
以下是代号为“芒果”的Windows Phone 7提供的完整的Launcher和Chooser列表:
Launcher
• EmailComposeTask – 撰写新的电子邮件
• MarketplaceDetailTask – 启动Marketplace并显示指定应用程序的详细信息
• MarketplaceHubTask –启动Marketplace
• MarketplaceReviewTask –启动Marketplace以便为当前应用程序提供评论
• MarketplaceSearchTask –启动Marketplace并执行相关内容的搜索
• MediaPlayerLauncher –启动媒体播放器
• PhoneCallTask – 向指定的号码拨打电话
• SaveEmailAddressTask – 撰写新的电子邮件
• SavePhoneNumberTask –保存电话号码
• SearchTask –启动网页搜索应用程序
• SmsComposeTask –撰写新的短信息
• WebBrowserTask –可以启动Web浏览器到指定的URL
Choosers
• EmailAddressChooserTask – 从联系人列表中选择一个电子邮件地址
• CameraCaptureTask – 打开照相机应用程序以便拍照
• PhoneNumberChooserTask –从联系人列表中选择一个电话号码
• PhotoChooserTask – 从Picture Gallery中选择一张图片
• Contacts –根据姓名,电子邮件地址,电话号码搜索联系人.
• Appointments –搜索一段时间内的用户的日程安排
应用程序什么时候会被墓碑化?
一般来说,当用户向前导航并离开当前应用程序的时候,应用程序会被墓碑化(即,应用程序被放置到到回退栈中)。当然也有少数例外,当系统需要额外的资源来激活应用程序时,处于后台运行的应用程序会被墓碑化。
当启动一些特殊的任务的时候,应用程序不会被自动墓碑化,这样使得用户感觉这些操作像是应用程序原生的功能。这些任务帮助用户完成一些功能,比如选择照片。避免墓碑化可以保证应用程序和这些特殊的任务之间的平滑过渡(比如,当选择一张图片回到应用程序的过程之间不会感觉到延迟)。
下面是这些任务,当他们被调用的时候,调用它的应用程序不会自动被墓碑化:
• PhotoChooserTask
• CameraCaptureTask
• MediaPlayerLauncher
• EmailAddressChooserTask
• PhoneNumberChooserTask
有三种场景在后台的应用程序会被立即墓碑化:
• 用户向前导航并离开应用程序(比如用户按下开始键)
• 应用程序启动一些不在上述列表中的 launchers或者choosers
• 系统需要更多的资源来运行当前激活状态的应用程序
注意: 所有上述关于墓碑化的信息均针对Windows Phone 7.0有效。在Windows phone 7.1上,所有的launchers和choosers都不会导致应用程序墓碑化,但是应用程序仍然可能被墓碑化,如果系统需要更多的资源。更多关于最新的Windows phone 7.1应用程序执行模型的信息请参考相关文档。
本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。