2日前、Windows Phone 7.1(Mango)の新しい開発パッケージをダウンロードし、新しい機会を模索し始めました。
DeviceExtendedPropertiesクラス
が非推奨になり、推奨されない(非推奨)ことが
わかりました。 これは、より理解しやすく便利なクラス
DeviceStatusに置き換えられました。 彼について話しましょう。
新しい
DeviceStatusクラスは、従来のDeviceExtendedPropertiesと同じ
Microsoft.Phone.Info名前空間に属します。 新しいプロパティ名を覚えておく必要がないのは非常に便利です。 それらは同じままです-構文が変更されました。 たとえば、古いバージョンでは次のとおりでした。
textBlockGetManufacture.Text = DeviceExtendedProperties.GetValue( "DeviceManufacturer")。ToString();
次のようになりました:
textBlockGetManufacture.Text = Microsoft.Phone.Info.DeviceStatus.DeviceManufacturer;
さらに、新しい便利なキーボードおよび電源関連のプロパティがDeviceStatusクラスに追加されました。
すべての変更を確認するため
に、Windows Phone 7デバイスのハードウェア特性の古い例を基に、処理を開始しました。
まず、Windows Phone 7用に作成された古いプロジェクトを開始しました。次に、[プロジェクト]メニューで[プロパティ]を選択し、開いたウィンドウで[
ターゲットWindows Phoneバージョン]リストでWindows Phone 7.1を選択しました

現在では、廃止されたプロパティを新しいプロパティで置き換える必要があります。
public MainPage() { InitializeComponent(); timer = new DispatcherTimer(); timer.Interval = new TimeSpan(0, 0, 10); timer.Tick += new EventHandler(timer_Tick); } DispatcherTimer timer; private void butGetInfo_Click(object sender, RoutedEventArgs e) {

便宜上、コードロジックを2つの部分に分割しました。 最初の部分では、定数プロパティの値を表示します:製造元の名前、ファームウェア番号、合計メモリ。 廃止されたクラスDeviceExtendedPropertiesでは、
DeviceUniqueIdプロパティを介して一意のデバイス番号を取得できたことに注意して
ください 。 新しいクラスにはアナログがありませんでした。 また、以前は共有メモリ用に371が返されていましたが、マンゴーでは435 MBになりました。
新しいマンゴー機能
次に、ニュースについて少し説明します。 デバイス上のハードウェアキーボードの存在を決定する新しいプロパティ
IsKeyboardPresentがあります。 エミュレータはデスクトップキーボードを認識するため、エミュレータでは常にTrueが返されます。 Windows Mobileエミュレーターにも同じ動作があったことを思い出します。 システムユニットからキーボードワイヤを引き出して結果を確認することもできますが、この問題の調査はあなたに任せることにしました。
また、新しい
IsKeyboardDeployedプロパティが
登場しました 。これは、以前のプロパティと連動します。 これにより、ユーザーが仕事のためにキーボードを進めたかどうかを確認できます。 このプロパティを使用する前に、IsKeyboardPresentを使用してハードウェアキーボードがあることを確認してください。
別の便利な機能は
PowerSourcesです。 これにより、デバイスがバッテリー電源で実行されているか、外部電源(コンセントまたはコンピューターに接続されている)から実行されているかを確認できます。
Android、アイ
Habréに関する
私の最後の出版物の 1つで、記述されたプログラムの類似物を書くためにAndroid用のアプリケーションを書くプログラマに提案しました。 伝統を継続し、Androidスマートフォンのハードウェア特性をどのように得ることができるかを提案する
また、iPhone開発者からの連絡も嬉しいです。