4

Android携帯にハードウェアメニューボタンがあるかどうかを調べようとしています.検索して、この方法を見つけました:

ViewConfiguration.get(getApplicationContext()).hasPermanentMenuKey();

しかし、これは Android 2.1 では動作しないようで、Android 2.1 以降で動作するアプリを作成しようとしています。Android バージョン 3.0 未満の電話にハードウェア ボタンがあるかどうかを検出することは可能ですか?

4

3 に答える 3

3

互換性のあるすべての 2.1 Android デバイスには、CDD の一部であるため、メニュー キーがありました。

http://source.android.com/compatibility/2.1/android-2.1-cdd.pdf

セクション 8.7 を参照してください。

「ホーム、メニュー、および戻る機能は、Android ナビゲーション パラダイムに不可欠です。デバイス実装は、アプリケーションの状態に関係なく、これらの機能を常にユーザーが利用できるようにする必要があります。」

したがって、デバイスが android 2.1 を実行している場合は、メニュー キーがあると想定しても安全です。それ以降のバージョンを実行している場合は、見つけた API を使用できます。

于 2012-06-07T10:05:21.827 に答える
1

hasPermanentMenuKey()は API レベル 14 以降に導入されました。これは、Android 3.0 以降、デバイスがメニュー キーを持たないことが許可されたためです。したがって、2.1 デバイスにはメニュー キーがあると想定しても問題ないと思います。詳細については、これに関する Android ドキュメントを確認してください。Android ビューの構成 hasPermanantMenuKey

于 2012-06-07T10:07:40.227 に答える
0

hasPermanentMenuKey()API レベル 14 (3.0) で利用可能になりました。3.0 未満で実行されているデバイスにキーがあると想定しても安全だと思います。3.0 以上では、このメソッドを呼び出して、代替メソッドを提供する必要があるかどうかを判断できます。

于 2012-06-07T10:07:51.510 に答える