获取 Windows Phone 手机系统信息

wpf:1161718192021222324252627282930…

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

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

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 }

 

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

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

(0)
上一篇 2021年12月20日 下午3:00
下一篇 2021年12月20日 下午3:00


相关推荐

  • 禁止触摸_lombok插件

    禁止触摸_lombok插件我有个学弟,在一家小型互联网公司做Java后端开发,最近他们公司新来了一个技术总监,这位技术总监对技术细节很看重,一来公司之后就推出了很多”政策”,比如定义了很多开发规范、日志规范、甚至是要求大家统一使用某一款IDE。但是这些都不是我这个学弟和我吐槽的点,他真正和我吐槽的是,他很不能理解,这位新来的技术总监竟然禁止公司内部所有开发使用Lombok。但是又没给出十分明确的,可以让人信服的理由。于…

    2025年7月7日
    6
  • 剖析Disruptor

    剖析Disruptor剖析 Disruptor 为什么会这么快 一 锁的缺点原文 http ifeve com disruptor locks are bad 作者 Trisha s nbsp 译者 张文灼 潘曦 nbsp 整理和校对 方腾飞 丁一 MartinFowler 写了一篇非常好的文章 里面不仅提到了 Disruptor 而且还解释了 Disruptor 如何应用在 LMAX 的架构里 里面有提及了

    2026年1月30日
    1
  • File中createNewFile()和createTempFile()区别[通俗易懂]

    1、createTempFile():FilesampleDir=newFile(Environment.getExternalStorageDirectory().getAbsolutePath()+”/FMRecording”);mSampleFile=File.createTempFile(“FMRecording”,”.m4a”,sampleDir);主要的

    2022年4月11日
    265
  • 第5节 添加带重点词文本到剪映(Coze扣子空间剪映小助手零基础教程)

    第5节 添加带重点词文本到剪映(Coze扣子空间剪映小助手零基础教程)

    2026年3月12日
    2
  • 至尊问题「建议收藏」

    称号:已知m、n为整数,且满足下列两个条件:① m、n∈1,2,…,K,(1≤K≤10^9)② (n^ 2-mn-m^2)^2=1编一程序,对给定K,求一组满足上述两个条件的m、n,而且使m^2+n^2的值最大。比如,若K=1995,则m=987,n=1597,则m、n满足条件,且可使m^2+n^2的值最大。输入输入仅一行,K的值。输出…

    2022年4月13日
    47
  • SecureCRT显示乱码的解决办法

    SecureCRT显示乱码的解决办法SecureCRT是一款支持SSH的终端仿真程序,用于连接运行包括Windows、UNIX和VMS的工具。对于学ARM的人来说,这个软件也是十分的好用!下面来看看SecureCRT的显示问题,如果没有设置好,那么就会出现乱码这种情况。比如:我发现在连接Linux系统之后,因为我装的是中文版的Linux系统,所以在显示中文的时候,SecureCRT显示出乱码。原因在于我们的Linux

    2022年7月17日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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