使App兼容平板电脑Android



我想知道我必须改变我的应用程序与平板电脑兼容的一切。

目前在Play商店显示我的应用程序不兼容平板电脑。我刚刚为一些布局做了一个超大的布局,我需要做什么呢?由于

可能有很多问题。我将解释其中的一些。

Play Store根据设备的要求检测设备。我的意思是,如果你添加了拨号权限或一些权限,这是不包括在平板电脑。无法下载。使用使用-feature而不是permission,并将所需属性设置为false。

<uses-permission android:name="android.permission.CALL_PHONE" android:required="false"/>

用下面的代码代替上面的

<uses-feature android:name="android.permission.CALL_PHONE"  android:required="false"/>

为支撑屏

<supports-screens
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true" />

<compatible-screens>
    <!--no small size screens -->

    <!--all normal size screens -->
    <screen android:screenSize="normal" android:screenDensity="ldpi" />
    <screen android:screenSize="normal" android:screenDensity="mdpi" />
    <screen android:screenSize="normal" android:screenDensity="hdpi" />
    <screen android:screenSize="normal" android:screenDensity="xhdpi" />
    <!-- all large size screens -->
    <screen android:screenSize="large" android:screenDensity="ldpi" />
    <screen android:screenSize="large" android:screenDensity="mdpi" />
    <screen android:screenSize="large" android:screenDensity="hdpi" />
    <screen android:screenSize="large" android:screenDensity="xhdpi" />
    <!-- all xlarge size screens -->
    <screen android:screenSize="xlarge" android:screenDensity="ldpi" />
    <screen android:screenSize="xlarge" android:screenDensity="mdpi" />
    <screen android:screenSize="xlarge" android:screenDensity="hdpi" />
    <screen android:screenSize="xlarge" android:screenDensity="xhdpi" />
    <!-- Special case for Nexus 7 -->
    <screen android:screenSize="large" android:screenDensity="213" />
</compatible-screens>

 <screen android:screenSize="normal" android:screenDensity="480" />
     <screen android:screenSize="large" android:screenDensity="480" />
     <screen android:screenSize="xlarge" android:screenDensity="480" />`

平板电脑可能不支持你的应用程序需要的某些功能。

检查清单中的以下功能-

http://developer.android.com/guide/topics/manifest/uses-feature-element.html。

<uses-feature>声明的目的是通知任何外部实体您的应用程序所依赖的硬件和软件特性集。

为了防止应用程序在无意中可用,Google Play假设某些与硬件相关的权限表明默认情况下需要底层硬件特性。

例如,使用蓝牙的应用程序必须在<uses-permission>元素中请求BLUETOOTH权限-对于遗留应用程序,Google Play假设权限声明意味着应用程序需要底层android.hardware.bluetooth功能,并根据该功能设置过滤。

对于下面的任何权限,您都可以通过显式地在<uses-feature>元素中使用android:required="false"属性显式地声明隐含特性来禁用基于隐含特性的过滤。例如,要禁用基于CAMERA权限的任何过滤,您可以将以下<uses-feature>声明添加到清单文件中:

<uses-feature android:name="android.hardware.camera" android:required="false" />

正如@ILMostro_7在评论中指出的那样,您应该对android:required="false"进行故障排除,并确定平板电脑中缺少的功能导致应用程序无法在Google Play中显示。

如果功能在平板电脑中不支持,但在manifest文件中声明没有明确声明为android:required="false",那么该平板电脑将从Google Play中过滤掉。

将以下代码添加到您的android manifest.xml文件中,使应用程序与平板电脑兼容。

<supports-screens
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true" />

尝试在AndroidManifest.xml中添加此功能

<uses-feature
    android:name="android.hardware.camera"
    android:required="false" />
<uses-feature
    android:name="android.hardware.telephony"
    android:required="false" />

最新更新