2

我有一个试图在 Play 商店上发布的 APK。上传后,我看到没有支持的设备。我已经尝试删除所有权限并重新上传和激活 APK,我仍然得到 0 个受支持的设备。

我想知道,还有哪些其他警告会导致支持的设备降为零。我已经读过,如果我没有正确包含库,就会发生这种事情,但我不太确定,需要澄清一下。此外,是否有任何工具可以帮助检查 APK 兼容性。

这是我的清单:

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

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>

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

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

<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>

<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS"/>
<uses-permission android:name="android.permission.WAKE_LOCK" />

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="com.my.app.permission.C2D_MESSAGE"
            android:protectionLevel="signature" />
<uses-permission android:name="com.my.app.permission.C2D_MESSAGE" />


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

<uses-feature
    android:glEsVersion="0x00020000"
    android:required="true" />
<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

谢谢!

编辑

的输出

aapt 转储徽章 app.apk

package: name='com.my.app' versionCode='16' versionName='0.5.0'
uses-permission:'android.permission.INTERNET'
uses-permission:'android.permission.ACCESS_WIFI_STATE'
uses-permission:'android.permission.ACCESS_COARSE_LOCATION'
uses-permission:'android.permission.ACCESS_NETWORK_STATE'
uses-permission:'android.permission.ACCESS_FINE_LOCATION'
uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission:'android.permission.READ_EXTERNAL_STORAGE'
uses-permission:'android.permission.READ_CONTACTS'
uses-permission:'android.permission.MODIFY_AUDIO_SETTINGS'
uses-permission:'android.permission.RECORD_AUDIO'
uses-permission:'android.permission.VIBRATE'
uses-permission:'android.permission.MANAGE_ACCOUNTS'
uses-permission:'com.google.android.providers.gsf.permission.READ_GSERVICES'
uses-permission:'android.permission.GET_ACCOUNTS'
uses-permission:'android.permission.USE_CREDENTIALS'
uses-permission:'android.permission.WAKE_LOCK'
uses-permission:'com.google.android.c2dm.permission.RECEIVE'
uses-permission:'com.my.app.permission.C2D_MESSAGE'
uses-feature-not-required:'android.hardware.camera'
uses-feature-not-required:'android.hardware.location'
uses-feature-not-required:'android.hardware.location.network'
uses-feature-not-required:'android.hardware.location.gps'
uses-feature-not-required:'android.hardware.wifi'
uses-gl-es:'0x20000'
sdkVersion:'8'
targetSdkVersion:'17'
application-label:'myApp'
application-label-ca:'myApp'
application-label-da:'myApp'
application-label-fa:'myApp'
application-label-ja:'myApp'
application-label-nb:'myApp'
application-label-be:'myApp'
application-label-de:'myApp'
application-label-af:'myApp'
application-label-bg:'myApp'
application-label-th:'myApp'
application-label-fi:'myApp'
application-label-hi:'myApp'
application-label-vi:'myApp'
application-label-sk:'myApp'
application-label-uk:'myApp'
application-label-el:'myApp'
application-label-nl:'myApp'
application-label-pl:'myApp'
application-label-sl:'myApp'
application-label-tl:'myApp'
application-label-am:'myApp'
application-label-in:'myApp'
application-label-ko:'myApp'
application-label-ro:'myApp'
application-label-ar:'myApp'
application-label-fr:'myApp'
application-label-hr:'myApp'
application-label-sr:'myApp'
application-label-tr:'myApp'
application-label-cs:'myApp'
application-label-es:'myApp'
application-label-ms:'myApp'
application-label-et:'myApp'
application-label-it:'myApp'
application-label-lt:'myApp'
application-label-pt:'myApp'
application-label-hu:'myApp'
application-label-ru:'myApp'
application-label-zu:'myApp'
application-label-lv:'myApp'
application-label-sv:'myApp'
application-label-iw:'myApp'
application-label-sw:'myApp'
application-label-en_GB:'myApp'
application-label-zh_CN:'myApp'
application-label-pt_BR:'myApp'
application-label-es_US:'myApp'
application-label-pt_PT:'myApp'
application-label-zh_TW:'myApp'
application-icon-120:'res/drawable-ldpi/ic_launcher.png'
application-icon-160:'res/drawable-mdpi/ic_launcher.png'
application-icon-240:'res/drawable-hdpi/ic_launcher.png'
application-icon-320:'res/drawable-xhdpi/ic_launcher.png'
application: label='myApp' icon='res/drawable-mdpi/ic_launcher.png'
launchable-activity: name='com.my.app.myApp_fragment_pager'  label='myApp' icon=''
uses-feature:'android.hardware.microphone'
uses-implied-feature:'android.hardware.microphone','requested android.permission.RECORD_AUDIO permission'
uses-feature:'android.hardware.touchscreen'
uses-implied-feature:'android.hardware.touchscreen','assumed you require a touch screen unless explicitly made optional'
uses-feature:'android.hardware.screen.landscape'
uses-implied-feature:'android.hardware.screen.landscape','one or more activities have specified a landscape orientation'
main
other-activities
other-receivers
other-services
supports-screens: 'small' 'normal' 'large' 'xlarge'
supports-any-density: 'true'
locales: '--_--' 'ca' 'da' 'fa' 'ja' 'nb' 'be' 'de' 'af' 'bg' 'th' 'fi' 'hi' 'vi' 'sk' 'uk' 'el' 'nl' 'pl' 'sl' 'tl' 'am' 'in' 'ko' 'ro' 'ar' 'fr' 'hr' 'sr' 'tr' 'cs' 'es' 'ms' 'et' 'it' 'lt' 'pt' 'hu' 'ru' 'zu' 'lv' 'sv' 'iw' 'sw' 'en_GB' 'zh_CN' 'pt_BR' 'es_US' 'pt_PT' 'zh_TW'
densities: '120' '160' '240' '320'

和支持屏幕标签

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

3 回答 3

1

我有同样的问题 -

我在 lib/ 目录中有一些图像,并且 Play 商店说我的应用程序与 0 个设备兼容 - 在重命名目录并重新发布 apk 之后,这不再是问题了。

于 2014-02-24T14:30:56.967 回答
1

如果您要使用 GCM

  1. 您必须在 Google API 控制台中启用适用于 Android 的 Google Cloud Messaging
  2. 安装在服务器上生成的 Google API 控制台密钥

或删除这些权限

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

<uses-feature
    android:glEsVersion="0x00020000"
    android:required="true" />
于 2013-08-05T19:29:43.833 回答
0

我正在做的事情有一些问题。当我更新我的 android studio 版本时,我不得不修复一些问题。现在我的问题解决了

  1. 我正在上传应用程序的调试版本。要修复它,我必须创建一个新的密钥库和项目并上传 APK。我以为这个错误会被游戏商店捕捉到,但我想不会。
  2. 我引用的一些 jar 不在我项目的 /libs 文件夹中。即使这没有引起问题,从一开始就这样做仍然是一个很好的做法。

希望这些信息可以帮助其他一些开始在 Android 上发布的人。

于 2013-08-07T22:38:19.680 回答