Tim Bry、「Androidアプリケーションの展望」

開発者として、幅広いデバイスでアプリケーションを利用できる統合開発プラットフォームとしてのAndroidの可能性に非常に満足しています。 スマートフォンからテレビまで-現在、Androidはさまざまなデバイスで使用されています。

昨年のAndroid SDK 1.6のリリースは、さまざまなデバイスをサポートする最初のものであり、HTC Tatooなどのデバイスに道を開いた-小さな画面とオートフォーカスのないカメラを備えていた。 Google TVなどの将来のデバイスには、加速度計や電話など、現在期待されている機能が含まれない可能性があります。

できるだけ多くのデバイスでアプリを利用できるようにしたいと考えています。 しかし、一部のデバイスでは、単に意味をなさないため、アプリケーションが動作するデバイスでのみ利用できることが重要です。

Androidマーケットルール番号1:既存のアプリケーションに新しいデバイスのサポートを拒否させない


キュレーターとしての私たちの最も重要な責任の1つは、消費者と開発者が自分のデバイスを使用する市場のプログラムのみを使用できるようにすることです。

Android SDKには、アプリケーションに必要なハードウェア機能を決定するための組み込み機能が含まれているため、さまざまなハードウェア機能を備えたプラットフォーム向けの市場にはさまざまなプログラムがあります。

マニフェストでアプリケーションのハードウェアのニーズを示します


これには、SDKのターゲットバージョンと最小バージョン、サポートされる画面解像度、およびアプリケーションが起動しない場合に必要なハードウェアが含まれます。

<uses-feature android:name="android.hardware.microphone" />

マニフェストの更新に必要なすべてのハードウェア機能を添付することにより、アプリケーションをサポートできない将来の機器を効果的に放棄します。

Androidマーケットルール番号2:既存のアプリケーションに新しいデバイスのサポートを拒否させない


Android 1.6での小さな画面の導入などの「極端な」状況では、開発者はこれらのアプリケーションが新しいデバイスの市場に出るかどうかを明確に選択する必要があります。

それ以外の場合、Androidマーケットは、アプリケーションによって要求された機能が利用可能なハードウェアで実行できるかどうかを分析します。 たとえば、CALL_PHONE関数を実行するには電話モジュールが必要です。

より便利なツールを提供するまで、SDK(2.2以降)でAAPTを使用してアプリケーションを分析できます。

aapt dump badging myApp.apk

アプリケーションが特別な機器を使用しているが、それがなくても動作することがわかっている(そしてテストで証明された)場合、必要な属性をfalseに設定することでオプションとして指定できます。

<uses-feature android:name="android.hardware.telephony" android:required="false" />

アプリケーションのマニフェストで、アプリケーションに必要なハードウェアとオプションのハードウェアが正しく決定されていることを確認してください。


機能的に使用される文字列の名前が表示される( 翻訳者のメモは機能名の文字列を使用します)ことで、アプリケーションがAndroidマーケットに表示され、現在および将来のデバイスでサポートされるかどうかをすぐに確認できます。

アプリケーションが適切に機能し、できるだけ多くのデバイスで実用的であることが、開発者としての関心事です。 次に、アプリケーションの動作をテストし、マニフェストを更新して、アプリケーションをサポートするハードウェア構成を決定し、機能しない構成を破棄します。

ご清聴ありがとうございました!

Source: https://habr.com/ru/post/J98619/


All Articles