1. Windows Phone 7是一个多任务的操作系统,但是只允许唯一一个第三方应用程序在前 台运行
2. 启动器和选择器为应用程序提供间接访问手机内置功能的方法。
一些内置的启动器:EmailComposeTask、MarketplaceDetailTask、MarketplaceHubTask 、MarketplaceReviewTask、MarketplaceSearchTask、MediaPlayerLauncher、 PhoneCallTask、SearchTask、SmsComposeTask、WebBrowserTask。
一些内置的选择器:CameraCaptureTask、EmailAddressChooserTask、 PhoneNumberChooserTask、PhotoChooserTask、SaveEmailAddressTask、 SavePhoneNumberTask。
3. 当启动启动器或者选择器时,应用程序会进入Deactivate状态(注意不一定会 Tombstone)当Task只写完毕后,原有应用程序会被重新激活,应用程序会调用Activated事 件,页面会触发OnNavigationTo事件
4. 如果Windows Phone 7中的应用程序被Tombstone了,那么再次打开应用程序时,会生 成一个新的实例,即会调用App和页面的构造函数,所以我们的逻辑代码不要放到构造函数中 ,而是在Application_Activated、OnNavigationTo事件中写恢复状态的代码。
5. 判断Windows Phone 7中的网络是否可用
if (Microsoft.Phone.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()) { //网络可用情况下的代码 } else { //网络不可用,给以提示 }
6.Windows Phone 7中的导航类:PhoneApplicationFrame 和 PhoneApplicationPage . Windows Phone 7中的别名导航支持如下的
<nav:UriMapper x:Key="nav">
<nav:UriMapping Uri="Home" MappedUri="/Pages/Views/Default.xaml"/>
<nav:UriMapping Uri="About-Us" MappedUri="/Pages/Views/Misc/About.xaml"/>
<nav:UriMapping Uri="Page/{number}" MappedUri="/Pages/Views/Books/Page{number}.xaml"/>
<nav:UriMapping Uri="Customers/{id}" MappedUri="/Pages/Views/Data/Page.xaml?action=getCustomer&id={id} "/>
<nav:UriMapping Uri="Products/{id}" MappedUri="/Pages/Views/Data/Page.xaml?action=getProduct&id={id} "/>
<nav:UriMapping Uri="Orders/{type}&{id}&{date}" MappedUri="/Pages/Views/Data/Page.xaml?action={type}&orderId={id} &orderDate={number}"/>
</nav:UriMapper>
7.WMAppManifest.xml :一个包含了应用程序特定数据的元数据文件,包括标题,图标位 置,功能等等。
8. 页面导航方案
(1)在XAML代码直接写XAML文件地址,如
<HyperlinkButton Content="Pasta" NavigateUri="/Pasta.xaml" Height="30" HorizontalAlignment="Left"
Margin="10,10,0,0" Name="hyperlinkButton1" VerticalAlignment="Top" Width="200" />
(2)在XAML代码中利用别名进行导航,需要在App.xaml中配置
(3)利用事件处理,如 NavigationService.Navigate(new Uri("/Pasta.xaml", UriKind.Relative));