如何仅发布带有矢量绘图的平板电脑 Android 应用程序
How to publish tablet only Android app with vector drawables
我已经创建了 Android 仅针对平板设备的应用程序。在 AndroidManifest 中,我设置了以下屏幕支持:
<supports-screens
android:largeScreens="true"
android:normalScreens="false"
android:requiresSmallestWidthDp="600"
android:smallScreens="false"
android:xlargeScreens="true" />
我的所有图形都是矢量图,所以XML文件直接放在drawable
目录下。只有位图是启动器图标,如下所示:
res\mipmap-hdpi\ic_launcher.png
res\mipmap-xxhdpi\ic_launcher.png
res\mipmap-xhdpi\ic_launcher.png
res\mipmap-xxxhdpi\ic_launcher.png
res\mipmap-mdpi\ic_launcher.png
在开发人员控制台中,我收到一条警告,提示我的应用程序未正确设计用于平板电脑 "Use Assets Designed for Tablet Screens"。
我尝试添加 mipmap-large-mdpi\ic_launcher.png
和 mipmap-xlarge-mdpi\ic_launcher.png
但它对警告没有影响。
我该怎么做才能让我的应用程序为平板电脑正确设计?
如果您认为它不适用于您,唯一的解决办法就是向 Google 申诉。所有其他解决方案都是不必要的解决方法。
您可以联系 Google 就 "Designed for tablets" 的问题提出申诉:
https://support.google.com/googleplay/android-developer/contact/tabletq
要在 Google-Play 中仅针对平板电脑 运行 ICS 过滤您的应用,您可以在 AndroidManifest 中执行此操作:
<supports-screens
android:largeScreens="true"
android:normalScreens="false"
android:requiresSmallestWidthDp="600"
android:smallScreens="false"
android:xlargeScreens="true" />
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="14" />
要获得 HoneyComb 平板电脑,您只需更改您的 minSdk
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="14" />
同一应用始终适用于 phone 和平板电脑。 Phone和tablet是同一个分类。但是 Android 电视,可穿戴设备是不同的类别。 Google 开发者控制台要求您提供平板电脑屏幕图像,因为平板电脑需要相对较大的图像。这些图像是位图。所以在发布Apk的时候必须要为平板提供位图图片。
因为 VectorAssets 在每个密度(尺寸)屏幕上看起来都一样。但对于 位图(例如,ic_launcher.png、操作栏和选项卡图标、通知图标),应使用 Android Studio Asset Manager 进行适当设计。
"Use Assets Designed for Tablet Screens" 是明确指出的问题。因此,使用 Android Studio Asset Manager 生成所有 位图 。
例如,要生成(替换您的启动器图标):右键单击 ic_launcher.png" package > new > Image Asset > 将 Asset type 更改为 image > 然后完成....
下图更清楚。
注意:您不需要 AndroidManifest.xml
中的以下行。您可以删除整个 <supports-screens />
块。
<supports-screens
android:largeScreens="true"
android:normalScreens="false"
android:requiresSmallestWidthDp="600"
android:smallScreens="false"
android:xlargeScreens="true" />
`android:largeScreens="true"`
到
`android:largeScreens="false"`
参考 声明应用程序仅适用于平板电脑 在 Here
Caution:
如果您将元素用于反向场景(当您的应用程序不兼容更大的屏幕时)并且 将更大的屏幕尺寸属性设置为 "false",则外部服务如 Google 播放不应用过滤。 您的应用程序仍可用于更大的屏幕,但在运行时,它不会调整大小以适合屏幕。相反,系统将模拟手机屏幕尺寸(大约 320dp x 480dp;有关更多信息,请参阅屏幕兼容模式)。如果你想阻止你的应用程序被下载到更大的屏幕上,请使用 ,如上一节中关于声明应用程序仅适用于手机的部分所述。
向您致以最良好的祝愿,希望这对您有用。
我已经创建了 Android 仅针对平板设备的应用程序。在 AndroidManifest 中,我设置了以下屏幕支持:
<supports-screens
android:largeScreens="true"
android:normalScreens="false"
android:requiresSmallestWidthDp="600"
android:smallScreens="false"
android:xlargeScreens="true" />
我的所有图形都是矢量图,所以XML文件直接放在drawable
目录下。只有位图是启动器图标,如下所示:
res\mipmap-hdpi\ic_launcher.png
res\mipmap-xxhdpi\ic_launcher.png
res\mipmap-xhdpi\ic_launcher.png
res\mipmap-xxxhdpi\ic_launcher.png
res\mipmap-mdpi\ic_launcher.png
在开发人员控制台中,我收到一条警告,提示我的应用程序未正确设计用于平板电脑 "Use Assets Designed for Tablet Screens"。
我尝试添加 mipmap-large-mdpi\ic_launcher.png
和 mipmap-xlarge-mdpi\ic_launcher.png
但它对警告没有影响。
我该怎么做才能让我的应用程序为平板电脑正确设计?
如果您认为它不适用于您,唯一的解决办法就是向 Google 申诉。所有其他解决方案都是不必要的解决方法。
您可以联系 Google 就 "Designed for tablets" 的问题提出申诉:
https://support.google.com/googleplay/android-developer/contact/tabletq
要在 Google-Play 中仅针对平板电脑 运行 ICS 过滤您的应用,您可以在 AndroidManifest 中执行此操作:
<supports-screens
android:largeScreens="true"
android:normalScreens="false"
android:requiresSmallestWidthDp="600"
android:smallScreens="false"
android:xlargeScreens="true" />
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="14" />
要获得 HoneyComb 平板电脑,您只需更改您的 minSdk
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="14" />
同一应用始终适用于 phone 和平板电脑。 Phone和tablet是同一个分类。但是 Android 电视,可穿戴设备是不同的类别。 Google 开发者控制台要求您提供平板电脑屏幕图像,因为平板电脑需要相对较大的图像。这些图像是位图。所以在发布Apk的时候必须要为平板提供位图图片。
因为 VectorAssets 在每个密度(尺寸)屏幕上看起来都一样。但对于 位图(例如,ic_launcher.png、操作栏和选项卡图标、通知图标),应使用 Android Studio Asset Manager 进行适当设计。
"Use Assets Designed for Tablet Screens" 是明确指出的问题。因此,使用 Android Studio Asset Manager 生成所有 位图 。
例如,要生成(替换您的启动器图标):右键单击 ic_launcher.png" package > new > Image Asset > 将 Asset type 更改为 image > 然后完成....
下图更清楚。
注意:您不需要 AndroidManifest.xml
中的以下行。您可以删除整个 <supports-screens />
块。
<supports-screens
android:largeScreens="true"
android:normalScreens="false"
android:requiresSmallestWidthDp="600"
android:smallScreens="false"
android:xlargeScreens="true" />
`android:largeScreens="true"`
到
`android:largeScreens="false"`
参考 声明应用程序仅适用于平板电脑 在 Here
Caution:
如果您将元素用于反向场景(当您的应用程序不兼容更大的屏幕时)并且 将更大的屏幕尺寸属性设置为 "false",则外部服务如 Google 播放不应用过滤。 您的应用程序仍可用于更大的屏幕,但在运行时,它不会调整大小以适合屏幕。相反,系统将模拟手机屏幕尺寸(大约 320dp x 480dp;有关更多信息,请参阅屏幕兼容模式)。如果你想阻止你的应用程序被下载到更大的屏幕上,请使用 ,如上一节中关于声明应用程序仅适用于手机的部分所述。
向您致以最良好的祝愿,希望这对您有用。