当前位置: 首页 > 知识库问答 >
问题:

Google Play开发者控制台:支持的Android设备:0

轩辕瑞
2023-03-14

我尝试过多次上传。我还研究了许多关于同一问题的其他SO问题。在我的物理设备上运行良好,但当上传到google play时,它声明支持0台设备。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.slhdevelopmentf.ammobotammofinderprimetime">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ammobot_main_icon"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">
    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />

    <activity
        android:name=".activities.MainActivity"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".activities.SecondaryActivity"
        android:label="@string/title_activity_secondary" />
    <activity
        android:name=".activities.ShowGunbotDealActivity"
        android:label="@string/title_activity_show_gunbot_deal" />
    <activity
        android:name="com.google.android.gms.ads.AdActivity"
        android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
        android:theme="@android:style/Theme.Translucent" />

</application>

建造。Gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.slhdevelopmentf.ammobotammofinderprimetime"
        minSdkVersion 9
        targetSdkVersion 21
        versionCode 7
        versionName "2.2"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main {
            resources.srcDirs = ['src/main/resources', 'src/main/resources/raw', 'src/main/resources/lib']
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile files('src/main/resources/lib/jsoup-1.8.1 (1).jar')
    compile files('src/main/resources/lib/jsoup-1.8.1-javadoc.jar')
    compile files('src/main/resources/lib/jxl.jar')
    compile 'com.google.android.gms:play-services:6.+'
}

编辑

所以我反编译了我的。apk。这表明android清单是完全空白的。

EDIT\u 1,所以我尝试在清单中添加标记,而不是依赖gradle。开发人员控制台仍然认为我的应用程序支持零设备(在测试设备上运行良好)。

我还创建了一个新的密钥库并生成了一个签名的apk。然后重命名了我的软件包,并作为一个名为“test”的独立应用程序上传到google play开发者控制台,它仍然表示它支持零设备。

我还在windows中安装了android studio,然后生成了签名的apk。它也不起作用。我这样做是为了确保它不是我的配置或操作系统。

可能的假设?

当我第一次下载android studio时,我以root用户身份启动了它:“sudo/演播室sh’。我想这可能会让它更灵敏。这导致android sdk被安装为root用户。所以现在,我必须以root用户身份启动android studio。这会对生成签名的apk产生任何影响吗?可能是配置/构建文件?虽然我确实在windows box上尝试过它(仍然不起作用),但可能是因为root用户弄乱了项目的构建文件而启动它。

AAPT OUTPUT版本代码会有所不同,因为我多次尝试将其上传到google play(不得不更改版本号/代码)。

root@my-pc:/root/Android/Sdk/build-tools/21.1.2# /root/Android/Sdk/build-tools/21.1.2/aapt dump badging /home/horvste/Documents/PreviousCodeProjects/documents-export-2014-12-23/AmmoBot/app/build/outputs/apk/app-debug.apk

package: name='com.slhdevelopment.ammobot' versionCode='12' versionName='2.7' platformBuildVersionName='5.0.1-1624448'
sdkVersion:'9'
targetSdkVersion:'21'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.ACCESS_NETWORK_STATE'
application-label:'AmmoBot'
application-label-ca:'AmmoBot'
application-label-da:'AmmoBot'
application-label-fa:'AmmoBot'
application-label-ja:'AmmoBot'
application-label-nb:'AmmoBot'
application-label-de:'AmmoBot'
application-label-af:'AmmoBot'
application-label-bg:'AmmoBot'
application-label-th:'AmmoBot'
application-label-fi:'AmmoBot'
application-label-hi:'AmmoBot'
application-label-vi:'AmmoBot'
application-label-sk:'AmmoBot'
application-label-uk:'AmmoBot'
application-label-el:'AmmoBot'
application-label-nl:'AmmoBot'
application-label-pl:'AmmoBot'
application-label-sl:'AmmoBot'
application-label-tl:'AmmoBot'
application-label-am:'AmmoBot'
application-label-in:'AmmoBot'
application-label-ko:'AmmoBot'
application-label-ro:'AmmoBot'
application-label-ar:'AmmoBot'
application-label-fr:'AmmoBot'
application-label-hr:'AmmoBot'
application-label-sr:'AmmoBot'
application-label-tr:'AmmoBot'
application-label-cs:'AmmoBot'
application-label-es:'AmmoBot'
application-label-it:'AmmoBot'
application-label-lt:'AmmoBot'
application-label-pt:'AmmoBot'
application-label-hu:'AmmoBot'
application-label-ru:'AmmoBot'
application-label-zu:'AmmoBot'
application-label-lv:'AmmoBot'
application-label-sv:'AmmoBot'
application-label-iw:'AmmoBot'
application-label-sw:'AmmoBot'
application-label-fr-CA:'AmmoBot'
application-label-lo-LA:'AmmoBot'
application-label-en-GB:'AmmoBot'
application-label-bn-BD:'AmmoBot'
application-label-et-EE:'AmmoBot'
application-label-ka-GE:'AmmoBot'
application-label-ky-KG:'AmmoBot'
application-label-km-KH:'AmmoBot'
application-label-zh-HK:'AmmoBot'
application-label-si-LK:'AmmoBot'
application-label-mk-MK:'AmmoBot'
application-label-ur-PK:'AmmoBot'
application-label-hy-AM:'AmmoBot'
application-label-my-MM:'AmmoBot'
application-label-zh-CN:'AmmoBot'
application-label-ta-IN:'AmmoBot'
application-label-te-IN:'AmmoBot'
application-label-ml-IN:'AmmoBot'
application-label-en-IN:'AmmoBot'
application-label-kn-IN:'AmmoBot'
application-label-mr-IN:'AmmoBot'
application-label-mn-MN:'AmmoBot'
application-label-ne-NP:'AmmoBot'
application-label-pt-BR:'AmmoBot'
application-label-gl-ES:'AmmoBot'
application-label-eu-ES:'AmmoBot'
application-label-is-IS:'AmmoBot'
application-label-es-US:'AmmoBot'
application-label-pt-PT:'AmmoBot'
application-label-zh-TW:'AmmoBot'
application-label-ms-MY:'AmmoBot'
application-label-kk-KZ:'AmmoBot'
application-label-uz-UZ:'AmmoBot'
application-icon-160:'res/drawable-mdpi-v4/ammobot_main_icon.png'
application-icon-213:'res/drawable-hdpi-v4/ammobot_main_icon.png'
application-icon-240:'res/drawable-hdpi-v4/ammobot_main_icon.png'
application-icon-320:'res/drawable-xhdpi-v4/ammobot_main_icon.png'
application-icon-480:'res/drawable-xxhdpi-v4/ammobot_main_icon.png'
application-icon-640:'res/drawable-xxhdpi-v4/ammobot_main_icon.png'
application: label='AmmoBot' icon='res/drawable-mdpi-v4/ammobot_main_icon.png'
application-debuggable
launchable-activity: name='com.slhdevelopment.ammobot.activities.MainActivity'  label='AmmoBot' icon=''
feature-group: label=''
  uses-feature: name='android.hardware.touchscreen'
  uses-implied-feature: name='android.hardware.touchscreen' reason='default feature for all apps'
main
other-activities
supports-screens: 'small' 'normal' 'large' 'xlarge'
supports-any-density: 'true'
locales: '--_--' 'ca' 'da' 'fa' 'ja' 'nb' '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' 'it' 'lt' 'pt' 'hu' 'ru' 'zu' 'lv' 'sv' 'iw' 'sw' 'fr-CA' 'lo-LA' 'en-GB' 'bn-BD' 'et-EE' 'ka-GE' 'ky-KG' 'km-KH' 'zh-HK' 'si-LK' 'mk-MK' 'ur-PK' 'hy-AM' 'my-MM' 'zh-CN' 'ta-IN' 'te-IN' 'ml-IN' 'en-IN' 'kn-IN' 'mr-IN' 'mn-MN' 'ne-NP' 'pt-BR' 'gl-ES' 'eu-ES' 'is-IS' 'es-US' 'pt-PT' 'zh-TW' 'ms-MY' 'kk-KZ' 'uz-UZ'
densities: '160' '213' '240' '320' '480' '640'
native-code: 'jsoup-1.8.1.jar' 'jxl.jar'

共有3个答案

毛胜
2023-03-14

我不得不在android studio中重新创建一个新的android项目。然后复制并粘贴android清单、src目录、res目录和build目录。该应用程序上传到google play,表示它支持7000多台设备。不得不这么做很烦人,但这是我的解决办法

高琛
2023-03-14

在清单中添加以下行,我希望它有效

<uses-sdk
    android:maxSdkVersion="21"
    android:minSdkVersion="8"
    android:targetSdkVersion="19" />

注意:android:maxSdkVersion、android:minSdkVersion、android:targetSdkVersion取决于您的需求

董宜然
2023-03-14

由于您的屏幕截图显示您正在使用“1个功能”,而我找不到您正在使用的两个特定权限所隐含的任何功能,因此我现在建议您执行以下操作:

您可以使用Android SDK中包含的aapt工具来确定Google Play将如何根据其声明的功能和权限过滤您的应用程序。要执行此操作,请使用转储徽标命令运行aapt。这将导致aapt解析应用程序的清单,并应用与Google Play相同的规则来确定应用程序所需的功能。

要使用该工具,请执行以下步骤:

  1. 首先,将您的应用程序构建并导出为未签名的. apk。如果您正在使用ADT在Eclipse中开发,请右键单击该项目并选择Android Tools

注意:您必须使用为可用的最新平台工具组件提供的aapt版本。如果您没有最新的平台工具组件,请使用Android SDK管理器下载它。

<代码>$aapt转储徽标

下面是上面第二个蓝牙示例的命令输出示例:

$ ./aapt dump badging BTExample.apk
package: name='com.example.android.btexample' versionCode='' versionName=''
uses-permission:'android.permission.BLUETOOTH_ADMIN'
uses-feature:'android.hardware.bluetooth'
sdkVersion:'3'
targetSdkVersion:'5'
application: label='BT Example' icon='res/drawable/app_bt_ex.png'
launchable activity name='com.example.android.btexample.MyActivity'label='' icon=''
uses-feature:'android.hardware.touchscreen'
main
supports-screens: 'small' 'normal' 'large'
locales: '--_--'
densities: '160'
 类似资料:
  • 代码是很容易出现错误的。你也很可能犯错误……哦,我在说什么?只要你是人,你 一定 会犯错误(在写代码的时候),除非你是 机器人。 但在浏览器中,默认情况下用户是看不到错误的。所以,如果脚本中有错误,我们看不到是什么错误,更不能够修复它。 为了发现错误并获得一些与脚本相关且有用的信息,浏览器内置了“开发者工具”。 通常,开发者倾向于使用 Chrome 或 Firefox 进行开发,因为它们有最好的开

  • 我在Google Play上发布了一个应用程序,但我的一些用户无法使用他们的设备找到它。 该应用程序的最小apk为11(Android 3.0)。 例如,当有人使用Android4.0的三星银河SII时,该应用程序无法找到,因为SII的初始版本是Android2.3。有了SIII就没问题了。 在开发者控制台中,控制台在上传apk时自动检查哪些设备兼容。作为开发人员,我可以禁用设备进行下载,但不能启

  • 在Google Play控制台中设置android应用程序时遇到问题。上传apk后,我看到“支持的Android设备-0设备”。 这是舱单 这里是gradle设置 该应用程序已经在一些设备上进行了测试。 我知道这是一个常见的问题,但是我发现的大多数问题都与相机的许可有关。 我做错了什么?

  • 我也被他们的支持吓坏了,我只得到了一般的“嘿,你看过我们的常见问题吗?”对电子邮件的答复。

  • 我可以在崩溃报告中看到一些应用程序崩溃 我想知道的是,android是否总是收集关于崩溃的数据,或者用户是否需要手动报告崩溃,以便我能够在开发者控制台中查看崩溃报告?我已经看到几个应用程序在我的设备上崩溃,但我不记得有人要求我确认报告问题。

  • 现在有了新的重新设计,还有什么方法可以得到这些信息吗? 谢谢