天天看點

Windows Phone 7 Tips (3)

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()) { //網絡可用

6.Windows Phone 7中的導航類:PhoneApplicationFrame 和 PhoneApplicationPage . Windows Phone 7中的

  1. <nav:UriMapper x:Key="nav">   
  2. <nav:UriMapping Uri="Home" MappedUri="/Pages/Views/Default.xaml"/>   
  3. <nav:UriMapping Uri="About-Us" MappedUri="/Pages/Views/Misc/About.xaml"/>   
  4. <nav:UriMapping Uri="Page/{number}" MappedUri="/Pages/Views/Books/Page{number}.xaml"/>   
  5. <nav:UriMapping Uri="Customers/{id}" MappedUri="/Pages/Views/Data/Page.xaml?action=getCustomer&amp;id={id}"/>   
  6. <nav:UriMapping Uri="Products/{id}" MappedUri="/Pages/Views/Data/Page.xaml?action=getProduct&amp;id={id}"/>   
  7. <nav:UriMapping Uri="Orders/{type}&amp;{id}&amp;{date}" MappedUri="/Pages/Views/Data/Page.xaml?action={type}&amp;orderId={id}&amp;orderDate={number}"/>   
  8. </nav:UriMapper> 

7.WMAppManifest.xml :一個包含了應用程式特定資料的中繼資料檔案,包括标題,圖示位置,功能等等。

8. 頁面導航方案

  1. (1)在XAML代碼直接寫XAML檔案位址,如<HyperlinkButton Content="Pasta" NavigateUri="/Pasta.xaml" Height="30" HorizontalAlignment="Left"   
  2. Margin="10,10,0,0" Name="hyperlinkButton1" VerticalAlignment="Top" Width="200" />  
  3. (2)在XAML代碼中利用别名進行導航,需要在App.xaml中配置  
  4. (3)利用事件處理,如 NavigationService.Navigate(new Uri("/Pasta.xaml", UriKind.Relative)); 
9. 各種啟動器的描述      
  • EmailComposeTask–允許使用者通過郵件賬戶發送電子郵件。
  • MarketplaceDetailTask–啟動Windows Phone Marketplace,讓使用者檢視某個特定的産品。
  • MarketplaceHubTask–啟動Windows Phone Marketplace,預設情況下允許你顯示某一類别的應用程式。
  • MarketplaceReviewTask–将使用者帶到Windows Phone Marketplace中目前程式的評論頁。
  • MarketplaceSearchTask–啟動Windows Phone Marketplace的搜尋結果,此結果來源于使用者輸入的搜尋項(或者是你來制定的)。
  • MediaPlayerLauncher–啟動内置的媒體播放器,并播放你指定的媒體檔案。
  • PhoneCallTask–啟動電話程式并顯示電話号碼和姓名。電話隻在使用者點選“通話”後才會撥出。
  • SearchTask– 可以把這個看成是在你的程式中提供Bing搜尋功能的途徑。
  • SMSComposeTask –啟動資訊程式并向使用者展示發送資訊的功能。你可以指定資訊接收人和資訊内容,但隻能通過使用者來發送。
  • WebBrowserTask–打開網絡浏覽器,跳轉到指定的URL。
10. 各種選擇器的描述      
  • CameraCaptureTask – 為使用者提供在程式中直接拍照的功能。
  • EmailAddressChooserTask – 在程式中允許使用者從聯系人裡面選擇一個郵件位址。
  • PhoneNumberChooserTask – 在程式中允許使用者從聯系人裡面選擇一個電話号碼。
  • PhotoChooserTask – 在程式中允許使用者從裝置裡選擇一張照片。