5

我的应用程序没有出现在 Nexus 7 上。在设备列表中显示 Nexus 7 的 Play 商店控制台:

Unsupported devices due to your manifest settings:

Nexus 7(grouper)"

我的清单如下所示:

...

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="14">
</uses-sdk>

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.android.vending.BILLING" />

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

<compatible-screens>
    <screen android:screenSize="normal" android:screenDensity="mdpi"/>
    <screen android:screenSize="normal" android:screenDensity="hdpi"/>
    <screen android:screenSize="normal" android:screenDensity="xhdpi"/>

    <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"/>

    <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"/>
</compatible-screens>

...

我不需要相机,这似乎是常见的不兼容问题。我没有使用该supports-screens条目(我想排除所有小屏幕设备以及 ldpi 普通设备,并且使用支持屏幕条目 AFAIK 是不可能的)。

知道可能是什么问题吗?

一个有趣的细节可能是 nexus 7 报告具有 DENSITY_TV (213dpi)。但是,“tv”不是 android:screenDensity 标签的可能值。

编辑:开发人员控制台报告以下所需权限:

Permissions: 
android.permission.INTERNET, 
android.permission.ACCESS_NETWORK_STATE, 
android.permission.WAKE_LOCK, 
android.permission.READ_PHONE_STATE, 
android.permission.WRITE_EXTERNAL_STORAGE, 
com.android.vending.BILLING, 
android.permission.ACCESS_WIFI_STATE

Features: 
android.hardware.screen.landscape, 
android.hardware.touchscreen, 
android.hardware.wifi
4

3 回答 3

7

这确实是真的,你不能添加"tvdpi"到清单中。但是有一个解决方法,如果您"213"改为输入,正如您所指出的那样,这是dpi密度的值,eclipse 会对此感到满意,并且您的应用程序也将显示在 nexus 7 设备上。

于 2012-10-10T14:55:49.667 回答
4

阅读您的权限列表,READ_PHONE_STATE可能会导致 Google Play 暗示您的应用需要android.hardware.telephonyNexus 7 上不可用的功能。

尝试将此添加到您的清单以解决此问题:

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

您可以在此处阅读有关“暗示功能要求的权限”的更多信息。

于 2012-10-10T15:49:32.307 回答
3

有一次,我上传了我的应用程序。Nexus 7 也无法使用它。就我而言,这是因为我的清单文件中有

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

我有上述线路是因为我可以在一个应用程序屏幕中拨打带有 Intent 的电话号码。此功能是次要功能,对于应用程序根本不是关键。也就是说,我希望应用程序在没有电话功能的设备中运行。

我在 Android 开发者博客中找到了这篇文章《未来硬件幸福的五个步骤》,它准确地解释了这个问题。

将下一行添加到清单文件,生成新的 APK,并将其上传到 Play 商店,使我的应用程序与包括 nexus 7 在内的另一组设备兼容。

<uses-feature android:name="android.hardware.telephony" android:required="false"/>
于 2012-10-28T08:21:47.033 回答