私は現在、間もなくリリースされるAmazonKindleFireタブレットとの互換性について既存のアプリケーションをテストしようとしています。彼らはエミュレーターを600x1024に設定し、LCD密度を169に設定すると言っています(https://developer.amazon.com/help/faq.html?ref_=pe_132830_21362890#KindleFire、メールでは169ではなく160と言っています) 。 「xlarge」ではなく「large」であると見なされます(これは、サポートチームとのメール交換で、機能しないと不満を言っています)。
Googleは、この解像度とMDPIを「大きい」とリストしている場合、複数の画面サイズのテストに関するセクションでこれが正しいとサポートしているようです(http://developer.android.com/guide/practices/screens_support.html#testing) 。ただし、「layout-large」と一緒に「layout-xlarge」フォルダーを含めると、エミュレーターは常に「xlarge」をロードします。LCD密度を240のようなものに変更すると、「xlarge」ではなく「large」が読み込まれますが、これは正しくないはずであり、最終的なデバイスでは機能しないのではないかと心配しています。これをテストするために、「Multi-Res」のAPI-10サンプルを取得し、上記の一連のレイアウトフォルダーを作成しました。「xlarge」がロードされ、「large」がロードされるたびに、
だから、私の質問は、私がドキュメントを正しく読んでいるのか、それともAmazonの人々が「大きい」と報告する必要があると主張しているためにエミュレータが混乱しているのか、それが本当なら「xlarge」を正しくロードしないのかということです?
これをテストするために変更したMulti-Resの例のマニフェストにあるものは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.multires"
android:versionCode="1"
android:versionName="1.0">
<uses-permission
android:name="android.permission.INTERNET"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<activity
android:name=".MultiRes"
android:label="@string/app_name">
<intent-filter>
<action
android:name="android.intent.action.MAIN"/>
<category
android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="4" />
<supports-screens android:anyDensity="true"
android:xlargeScreens="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true" />
</manifest>