获取 Windows Phone 手机系统信息

wpf:1161718192021222324252627282930…

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

获取 Windows Phone 手机系统信息此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

wpf:

  1 <phone:PhoneApplicationPage
  2     x:Class="ABSystemInfo.MainPage"
  3     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5     xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
  6     xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
  7     xmlns:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls"
  8     xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  9     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 10     mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
 11     FontFamily="{StaticResource PhoneFontFamilyNormal}"
 12     FontSize="{StaticResource PhoneFontSizeNormal}"
 13     Foreground="{StaticResource PhoneForegroundBrush}"
 14     SupportedOrientations="Portrait"  Orientation="Portrait"
 15     shell:SystemTray.IsVisible="True">
 16  
 17     <!--LayoutRoot is the root grid where all page content is placed-->
 18     <Grid x:Name="LayoutRoot" Background="Transparent">
 19         <!--Pivot Control-->
 20         <controls:Pivot Title="DEVICE INFO">
 21             <controls:PivotItem Header="device">
 22                 <Grid>
 23                     <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Height="607" Width="456">
 24                         <TextBlock Text="Device Manufacturer" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 25                         <TextBlock Text="0" Margin="10" Name="DeviceManufacturerTextBlock" FontSize="36" TextAlignment="Center"/>
 26                         <TextBlock Text="Device Name" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 27                         <TextBlock Text="0" Margin="10" Name="DeviceNameTextBlock" FontSize="36" TextAlignment="Center"/>
 28                         <TextBlock Text="Device Firmware Version" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 29                         <TextBlock Text="0" Margin="10" Name="DeviceFirmwareVersionTextBlock" FontSize="36" TextAlignment="Center"/>
 30                         <TextBlock Text="Device Hardware Version" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 31                         <TextBlock Text="0" Margin="10" Name="DeviceHardwareVersionTextBlock" FontSize="36" TextAlignment="Center"/>
 32                         </StackPanel>
 33  
 34                 </Grid>
 35             </controls:PivotItem>
 36  
 37             <controls:PivotItem Header="memory">
 38                 <Grid>
 39                     <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Height="607" Width="456">
 40                         <TextBlock Text="Application Current Memory Usage" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 41                         <TextBlock Text="0" Margin="10" Name="ApplicationCurrentMemoryUsageTextBlock" FontSize="36" TextAlignment="Center"/>
 42                         <TextBlock Text="Application Memory Usage Limit" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 43                         <TextBlock Text="0" Margin="10" Name="ApplicationMemoryUsageLimitTextBlock" FontSize="36" TextAlignment="Center"/>
 44                         <TextBlock Text="Application Peak Memory Usage" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 45                         <TextBlock Text="0" Margin="10" Name="ApplicationPeakMemoryUsageTextBlock" FontSize="36" TextAlignment="Center"/>
 46                         <TextBlock Text="DeviceTotalMemory" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 47                         <TextBlock Text="0" Margin="10" Name="DeviceTotalMemoryTextBlock" FontSize="36" TextAlignment="Center"/>
 48  
 49                     </StackPanel>
 50                 </Grid>
 51             </controls:PivotItem>
 52  
 53             <controls:PivotItem Header="hardware">
 54                 <Grid>
 55                     <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Height="607" Width="456">
 56                         <TextBlock Text="Is Keyboard Deployed?" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 57                         <TextBlock Text="0" Margin="10" Name="IsKeyboardDeployedTextBlock" FontSize="36" TextAlignment="Center"/>
 58                         <TextBlock Text="Is Keyboard Present?" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 59                         <TextBlock Text="0" Margin="10" Name="IsKeyboardPresentTextBlock" FontSize="36" TextAlignment="Center"/>
 60                         <TextBlock Text="Power Source" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 61                         <TextBlock Text="0" Margin="10" Name="PowerSourceTextBlock" FontSize="36" TextAlignment="Center"/>
 62                     </StackPanel>
 63                 </Grid>
 64             </controls:PivotItem>
 65  
 66             <controls:PivotItem Header="os">
 67                 <Grid>
 68                     <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Height="607" Width="456">
 69                         <TextBlock Text="Operating System" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 70                         <TextBlock Text="0" Margin="10" Name="OperatingSystemPlatformTextBlock" FontSize="36" TextAlignment="Center"/>
 71                         <TextBlock Text="Version" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 72                         <TextBlock Text="0" Margin="10" Name="OperatingSystemVersionTextBlock" FontSize="36" TextAlignment="Center"/>
 73                     </StackPanel>
 74                 </Grid>
 75             </controls:PivotItem>
 76  
 77             <controls:PivotItem Header="clr">
 78                 <Grid>
 79                     <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Height="607" Width="456">
 80                         <TextBlock Text="Major" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 81                         <TextBlock Text="0" Margin="10" Name="ClrMajorTextBlock" FontSize="36" TextAlignment="Center"/>
 82                         <TextBlock Text="Minor" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 83                         <TextBlock Text="0" Margin="10" Name="ClrMinorTextBlock" FontSize="36" TextAlignment="Center"/>
 84                         <TextBlock Text="Revision" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 85                         <TextBlock Text="0" Margin="10" Name="ClrRevisionTextBlock" FontSize="36" TextAlignment="Center"/>
 86                         <TextBlock Text="Build" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 87                         <TextBlock Text="0" Margin="10" Name="ClrBuildTextBlock" FontSize="36" TextAlignment="Center"/>
 88                     </StackPanel>
 89                 </Grid>
 90             </controls:PivotItem>
 91  
 92             <controls:PivotItem Header="unique ids">
 93                 <Grid>
 94                     <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Height="607" Width="456">
 95                         <TextBlock Text="Device Unique ID" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 96                         <TextBlock Text="0" Margin="10" Name="DeviceUniqueIDTextBlock" FontSize="36" TextAlignment="Center" TextWrapping="Wrap"/>
 97                         <TextBlock Text="Windows Live Anonymous ID" Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/>
 98                         <TextBlock Text="0" Margin="10" Name="WindowsLiveAnonymousIDTextBlock" FontSize="36" TextAlignment="Center" TextWrapping="Wrap"/>
 99                     </StackPanel>
100                 </Grid>
101             </controls:PivotItem>
102         </controls:Pivot>
103     </Grid>
104 </phone:PhoneApplicationPage>

MainPage.cs 

  1 using System;
  2 using System.Globalization;
  3 using System.Windows;
  4 using System.Windows.Threading;
  5 using Microsoft.Phone.Info;
  6  
  7 namespace ABSystemInfo
  8 {
  9     public partial class MainPage
 10     {
 11         readonly DispatcherTimer _timer;
 12  
 13         private long _applicationCurrentMemoryUsage;
 14         private long _applicationMemoryUsageLimit;
 15         private long _applicationPeakMemoryUsage;
 16         private long _deviceTotalMemory;
 17  
 18         private const int AnidLength = 32;
 19         private const int AnidOffset = 2;
 20  
 21         public MainPage()
 22         {
 23             InitializeComponent();
 24             LoadStaticInfo();
 25             _timer = new DispatcherTimer();
 26             _timer.Interval = new TimeSpan(0, 0, 1);
 27             _timer.Tick += TimerTick;
 28             _timer.Start();
 29  
 30         }
 31  
 32         void TimerTick(object sender, EventArgs e)
 33         {
 34             try
 35             {
 36                 _applicationCurrentMemoryUsage = DeviceStatus.ApplicationCurrentMemoryUsage;
 37                 _applicationMemoryUsageLimit = DeviceStatus.ApplicationMemoryUsageLimit;
 38                 _applicationPeakMemoryUsage = DeviceStatus.ApplicationPeakMemoryUsage;
 39  
 40                 _deviceTotalMemory = DeviceStatus.DeviceTotalMemory;
 41  
 42                 ApplicationCurrentMemoryUsageTextBlock.Text = String.Format("{0} MB ({1} KB)", ((_applicationCurrentMemoryUsage / 1024) / 1024), (_applicationCurrentMemoryUsage / 1024));
 43                 ApplicationMemoryUsageLimitTextBlock.Text = String.Format("{0} MB ({1} KB)", ((_applicationMemoryUsageLimit / 1024) / 1024), (_applicationMemoryUsageLimit / 1024));
 44                 ApplicationPeakMemoryUsageTextBlock.Text = String.Format("{0} MB ({1} KB)", ((_applicationPeakMemoryUsage / 1024) / 1024), (_applicationPeakMemoryUsage / 1024));
 45                 DeviceTotalMemoryTextBlock.Text = String.Format("{0} MB ({1} KB)", ((_deviceTotalMemory / 1024) / 1024), (_deviceTotalMemory / 1024));
 46  
 47                 IsKeyboardDeployedTextBlock.Text = DeviceStatus.IsKeyboardDeployed.ToString(CultureInfo.InvariantCulture);
 48                 IsKeyboardPresentTextBlock.Text = DeviceStatus.IsKeyboardPresent.ToString(CultureInfo.InvariantCulture);
 49                 PowerSourceTextBlock.Text = DeviceStatus.PowerSource.ToString();
 50             }
 51             catch (Exception ex)
 52             {
 53                 MessageBox.Show(ex.Message);
 54             }
 55         }
 56  
 57         private void LoadStaticInfo()
 58         {
 59             DeviceFirmwareVersionTextBlock.Text = DeviceStatus.DeviceFirmwareVersion;
 60             DeviceHardwareVersionTextBlock.Text = DeviceStatus.DeviceHardwareVersion;
 61             DeviceManufacturerTextBlock.Text = DeviceStatus.DeviceManufacturer;
 62             DeviceNameTextBlock.Text = DeviceStatus.DeviceName;
 63  
 64             OperatingSystemPlatformTextBlock.Text = Environment.OSVersion.Platform.ToString();
 65             OperatingSystemVersionTextBlock.Text = Environment.OSVersion.Version.ToString();
 66  
 67             ClrBuildTextBlock.Text = Environment.Version.Build.ToString(CultureInfo.InvariantCulture);
 68             ClrMajorTextBlock.Text = Environment.Version.Major.ToString(CultureInfo.InvariantCulture);
 69             ClrMinorTextBlock.Text = Environment.Version.Minor.ToString(CultureInfo.InvariantCulture);
 70             ClrRevisionTextBlock.Text = Environment.Version.Revision.ToString(CultureInfo.InvariantCulture);
 71  
 72             string deviceUniqueId = String.Empty;
 73             for (int i = 0; i < GetDeviceUniqueId().GetLength(0); i++)
 74             {
 75                 deviceUniqueId += GetDeviceUniqueId().GetValue(i);
 76             }
 77  
 78             DeviceUniqueIDTextBlock.Text = deviceUniqueId;
 79             WindowsLiveAnonymousIDTextBlock.Text =
 80                 GetWindowsLiveAnonymousId().ToString(CultureInfo.InvariantCulture);
 81         }
 82  
 83         //Note: to get a result requires ID_CAP_IDENTITY_DEVICE
 84         // to be added to the capabilities of the WMAppManifest
 85         // this will then warn users in marketplace
 86  
 87         public static byte[] GetDeviceUniqueId()
 88         {
 89             byte[] result = null;
 90             object uniqueId;
 91             if (DeviceExtendedProperties.TryGetValue("DeviceUniqueId", out uniqueId))
 92                 result = (byte[])uniqueId;
 93  
 94             return result;
 95         }
 96  
 97         // NOTE: to get a result requires ID_CAP_IDENTITY_USER
 98         //  to be added to the capabilities of the WMAppManifest
 99         // this will then warn users in marketplace
100  
101         public static string GetWindowsLiveAnonymousId()
102         {
103             string result = String.Empty;
104             object anid;
105             if (UserExtendedProperties.TryGetValue("ANID", out anid))
106             {
107                 if (anid != null && anid.ToString().Length >= (AnidLength + AnidOffset))
108                 {
109                     result = anid.ToString().Substring(AnidOffset, AnidLength);
110                 }
111             }
112  
113             return result;
114         }
115     }
116 }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/120761.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • sklearn库的学习

    sklearn库的学习sklearn入门,sklearn库结构

    2022年10月18日
  • ASP.NET验证控件之RangeValidator「建议收藏」

    ASP.NET验证控件之RangeValidator「建议收藏」RangeValidator控件用于检测用户输入的值是否介于两个值之间。可以对不同类型的值进行比较,比如数字、日期以及字符。我们一般会用来验证输入的年龄或者考试的分数等。下面我们一块看看RangeValidator的属性:属性描述 BackColor 背景颜色 ControlToValidate

  • 移动ipv6不是公网_移动光纤申请公网ip

    移动ipv6不是公网_移动光纤申请公网ip 之前有人看到我的蜗牛在移动宽带下还能搞外网访问《奶妈级教程:移动宽带下的IPV6+DDNS+私有域名访问黑群晖》,各种问我怎么申请IPv6?搞得我一头雾水,因为真的不需要申请!!!  早在2018年5月份,全网已经开始实施IPv6全覆盖了,移动宽带光纤能到的地方貌似都已经开通了IPv6了,所以我们需要的只是一个能获取IPv6的光猫而已。  最直接的方法当然是打10086去问问啦,不过貌似客服知道的也不多,甚至不知道IPv6是啥?  那就自己度娘“光猫型号+参数”,自己去看支不支持吧?  又

  • 海量数据库解决方案 pdf(海量数据处理)

    作者序言这已经是第四次为本书写作者序言了,此时此刻过去20年的生活如同电影般在我的脑海里一一掠过。当我最初决定步入IT领域时就为自己立下了誓言,时至今日回想起多年走过的历程,其间充满了艰辛,也正是这无数的艰辛让我最终体验了收获的愉悦。回望这20多年的足迹,我一直努力用新的视角去观察他人所忽视的领域,尝试用崭新的思维和充满创意的双手去耕耘。尽管如此,也仍然无法紧跟IT技术飞快的发展步伐。我为实现理想而终日不停前行的脚步,虽然忙碌但却无限满足。众所周知,能够加工成宝石的原石比比皆是,一分耕耘,一分收

  • 计算机三级数据库技术笔记

    计算机三级数据库技术笔记文章目录第一章数据库应用系统开发方法1.1数据库应用系统生命周期1.1.1软件工程与软件开发方法1.1.2DBAS生命周期模型1.2规划与分析1.2.1系统规划与定义1.2.2可行性分析1.2.3项目规划1.3需求分析1.3.1数据需求分析1.3.2功能需求分析1.数据处理需求分析2.业务规则需求分析1.3.3性能需求分析1.3.4其他需求分析1.存储需求分析2.安全…

  • 三星ODIN刷机包的修改

    三星ODIN刷机包的修改SunnyOK系列讲座索引【第一讲】如何用Odin刷机-新手必读http://bbs.gfan.com/android-1653492-1-1.html【第二讲】I897卡刷或CWM刷机教程http://bbs.gfan.com/android-1701867-1-1.html【第三讲】APK应用程序的解包、修改、编辑、打包及应用http://bbs

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号