10

我创建了仅针对平板设备的 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

在开发人员控制台中,我收到警告说我的应用程序不是为平板电脑正确设计的“使用为平板电脑屏幕设计的资产”

我已经尝试添加mipmap-large-mdpi\ic_launcher.pngmipmap-xlarge-mdpi\ic_launcher.png但它对警告没有影响。

我该怎么做才能让我的应用程序为平板电脑正确设计?

4

4 回答 4

8

相同的应用程序始终适用于手机和平板电脑。手机和平板电脑是同一类。但Android TV、可穿戴设备是不同的类别。Google Developer Console 要求您提供平板电脑屏幕图像,因为平板电脑需要相对较大的图像。这些图像是位图。因此,您必须在发布 Apk 时为平板电脑提供位图图像。

由于 VectorAsset 在每个密度(大小)屏幕中看起来都相同。但是对于位图(例如 ic_launcher.png、Action Bar & Tab Icon、Notification 图标),应该使用 Android Studio Asset Manager 进行适当的设计。

使用专为平板电脑屏幕设计的资产”是明确指出的问题。因此,使用 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" />
于 2017-08-18T23:09:13.883 回答
3

要让您的应用仅针对在 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" />
于 2017-08-18T08:21:37.530 回答
2

如果您认为它不适用于您,唯一的解决方案就是向 Google 申诉。所有其他解决方案都是不必要的解决方法。

您可以通过以下网址联系 Google 就“专为平板电脑设计”的问题提出申诉:https:
//support.google.com/googleplay/android-developer/contact/tabletq

于 2017-08-17T10:18:23.377 回答
1
`android:largeScreens="true"` 

`android:largeScreens="false"` 

Declaring an App is Only for Tablets in Here with a 中所述,Caution: 如果您将元素用于相反的场景(当您的应用程序与大屏幕不兼容时)并将较大的屏幕尺寸属性设置为“false”,则外部服务如由于 Google Play 不应用过滤。您的应用程序仍可用于较大的屏幕,但在运行时,它不会调整大小以适应屏幕。相反,系统将模拟手机屏幕尺寸(大约 320dp x 480dp;有关更多信息,请参阅屏幕兼容模式)。如果您想阻止您的应用程序在更大的屏幕上下载,请使用 ,如上一节有关声明应用程序仅适用于手机的部分所述。

向您致以最良好的祝愿,希望这项工作适合您。

于 2017-08-22T11:47:40.023 回答