APIごとに異なるUIデザインを取得する方法を探しています。グーグル検索は私にリンクを与えました:http://developer.android.com/guide/google/play/publishing/multiple-apks.html#CreatingApks
このリンクでは、APIごとに異なるAPKを作成する方がよいと述べており、Playストアが電話に最適なAPKを選択します。
これが唯一の方法ですか、それとも簡単な方法はありますか?
APIごとに異なるUIデザインを取得する方法を探しています。グーグル検索は私にリンクを与えました:http://developer.android.com/guide/google/play/publishing/multiple-apks.html#CreatingApks
このリンクでは、APIごとに異なるAPKを作成する方がよいと述べており、Playストアが電話に最適なAPKを選択します。
これが唯一の方法ですか、それとも簡単な方法はありますか?
可能な限り、異なるAPKを使用しないようにしてください。それは混乱を引き起こします。
たとえば、API 14の特定のレイアウトを使用するには、の/res/layout-v14
代わりにフォルダーを使用します/res/layout
。/res/layout-v8
API8などの場合…</p>
Androidは、それに最も近いフォルダーからリソースを取得します。フォルダは一種の要件として機能します。したがって、API 15があり、layout-v15
フォルダーがない場合は、から取得しlayout-v14
ます。layout-v14
とlayout-v8
を使用している場合、API 10を使用している場合は、を使用しますlayout-v8
。
これを実現するために複数のAPKを作成する必要はありません。
http://developer.android.com/training/multiscreen/index.htmlのリンクを調べてください。
より多くのコードを書く準備ができていれば、それは可能です。
異なる UI で異なる API レベルを実現したい場合にできることの 1 つは、次の定数を使用して API レベルのランタイムを検出することですandroid.os.Build.VERSION.SDK_INT
。これらの値のいずれかを返します。
このバージョンによれば、アクティビティのcontentViewlayout xml
として異なる設定を行うことができます。
注: これにはメンテナンス上の危険が伴います。UI 要素を追加/削除する場合は、アプリケーション内のすべてのレイアウト XML を変更する必要があります。