亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

在Windows Phone 7中如何獲取用戶信息和設備信息呢?只需要使用Microsoft.Phone.Info命名空間下的UserExtendedProperties類和DeviceExtendedProperties類對應的成員函數就可以了。具體怎樣操作?請看正文。

獲取用戶信息

使用UserExtendedProperties類的GetValue和TryGetValue方法即可。目前這兩個函數的入參,都只支持“ANID”。

GetValue用法如下:

1 string anid = UserExtendedProperties.GetValue("ANID") as string;

2 string anonymousUserId = anid.Substring(2, 32);

TryGetValue用法如下:

view sourceprint?1 object anid = new object();

2 string anonymousUserId = "";

3 if (UserExtendedProperties.TryGetValue("ANID", out anid))

4 {

5 anonymousUserId = anid as string;

6 anonymousUserId = anonymousUserId.Substring(2, 32);

7 }

需要注意的是,如果你的WP7手機沒有綁定Live ID,GetValue返回的字符串為null,TryGetValue返回的對象也為null。因此在項目中要注意對返回字符串和對象的非空判斷。

獲取設備信息

與獲取用戶信息相似,使用DeviceExtendedProperties類的GetValue和TryGetValue方法,這兩個方法的使用方式也與上面相同,不同的是入參。Windows Phone 7可以獲取的設備信息如下:

屬性名稱 值類型 描述 補充說明
DeviceManufacturer
字符串
(最大長度256) 設備的生產廠商。該字符串沒有標準格式。微軟建議同一個廠商生產的手機使用相同的字符串,但這不是強制的。 注意,該值也可能為空
DeviceName 字符串
(最大長度256) 設備名稱。該字符串沒有標準格式。 注意,該值也可能為空
DeviceUniqueId
長度為20的byte數組 設備的唯一標識。該值是唯一不變的,即使系統升級。 注意,不要使用該值來標識用戶,因為用戶可能可以更換手機,同一手機也有可能被不同用戶使用
DeviceFirmwareVersion 一個字符串 當前設備運行的固件版本。如果安裝了新版本的固件,該值將會增長。 注意,該值也可能為空
DeviceHardwareVersion
一個字符串 當前設備的硬件版本。 注意,該值也可能為空
DeviceTotalMemory
長整型 設備物理內存的大?。▎挝皇荁yte) 該值通常小于實際的RAM大小略小,因此可以用它來判斷RAM是否夠用。
ApplicationCurrentMemoryUsage
長整型 當前應用程序使用的內存(單位是Byte) 可以用它來觀察當前應用程序消耗內存的情況
ApplicationPeakMemoryUsage
長整型 當前應用程序泄漏的內存(單位是Byte) 可以用它來觀察當前應用程序內存泄漏情況

先來看看獲取設備廠商的方法:

1 string strDeviceManufacturer = DeviceExtendedProperties.GetValue("DeviceManufacturer").ToString();

其它的設備信息獲取都與設備廠商一樣,把GetValue或TryGetValue的參數換一下就可以了。

有一個有點不同,就是DeviceUniqueID。有時候我們就需要保存一個字符串來標識設別的唯一性就好了,用Byte數組有點麻煩,我在這里遍歷了該數組,把它轉為了一個長度為60的字符串,代碼如下:

01 byte[] byteArray = DeviceExtendedProperties.GetValue("DeviceUniqueId") as byte[];

02 string strTemp = "";

03 string strDeviceUniqueID = "";

04 foreach (byte b in byteArray)

05 {

06 strTemp = b.ToString();

07 if (1 == strTemp.Length)

08 {

09 strTemp = "00" + strTemp;

10 }

11 else if (2 == strTemp.Length)

12 {

13 strTemp = "0" + strTemp;

14 }

15 strDeviceUniqueID += strTemp;

16 }
1 我在Demo中的界面只放置了幾個獲取設備信息的Button和TextBlock,很多都一樣,就沒有都列出來

1 上圖是我在模擬器上運行的結果,無法綁定LiveID,所以用戶信息一項取不到,為空。其它都正常。
1 我在真機上測試都可以取到相關信息。:)
1 為了方便大家使用,我把獲取用戶和設備信息的代碼封裝到了一個類中,都是Public的靜態方法,直接就可以用了。
demo下載

分享到:
標簽:手機 用戶信息 獲取 編程 設備
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定