支持 Android 台设备 = 零

Supported Android Devices = zero

当有人从 Android phone 上的 google 播放应用中查找我的应用时,找不到我的应用。 (从浏览器搜索时显示查找)。这是因为 Google Play 说我的应用支持“0 台设备”。

Google play 的支持聊天人员说这是原因:

“您的应用与某些设备不兼容,因为您的应用清单与以下内容存在冲突:不支持本机平台: armeabi、armeabi-v7a 和缺少的设备功能:android.hardware.faketouch、android.hardware.screen.portrait"

我搞不懂这到底是什么意思。

我的清单文件如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.deanblakely.SafeTalk"
    android:installLocation="preferExternal"
    android:versionCode="30"
    android:versionName="1.06      " >


    <uses-sdk
        android:minSdkVersion="16"
        android:targetSdkVersion="25" />


    <uses-feature
        android:glEsVersion="0x00020000"
           android:required="false" />


    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="com.android.vending.BILLING" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <permission android:name="${applicationId}.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />
    <uses-permission android:name="${applicationId}.permission.C2D_MESSAGE" />

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <!--android:theme="@android:style/Theme.NoTitleBar" -->

        <activity android:name="SplashActivity"
            android:label="@string/app_name"
            android:theme="@style/SplashTheme">
            >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

        </activity>


        <activity
            android:name="MainActivity"
            android:label="@string/app_name"
            android:icon="@mipmap/ic_launcher"
            android:configChanges="orientation|keyboardHidden"
            android:screenOrientation="portrait" 
            android:launchMode="singleTask"
            android:theme="@style/AppTheme.NoActionBar"
            >


         </activity>

        <receiver
            android:name="com.deanblakely.SafeTalk.GcmBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND" >
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
                <category android:name="com.deanblakely.SafeTalk" />
            </intent-filter>
        </receiver>
        <service android:name="com.deanblakely.SafeTalk.GcmIntentService" />

    </application>

</manifest>

我的gradle文件如下:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion '26.0.2'
    useLibrary 'org.apache.http.legacy'  //httpClient not supported in 23.
    lintOptions { disable 'MissingTranslation' }
    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 25
    }

    signingConfigs {
        releaseConfig {
            storeFile file("XXXXXXXXXXXXXXXXX");
            storePassword ("XXXXXXXXXX");
            keyPassword ("XXXXXXXXXX");
            keyAlias "XXXXX
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            debuggable false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.releaseConfig
        }
        debug {
            debuggable true
            applicationIdSuffix ".debug"
        }

    }
    flavorDimensions "stupidDimensionone"
    productFlavors {
        scFlavor
                {
                    applicationId 'com.deanblakely.SafeTalk.sc'
                    dimension "stupidDimensionone"
                }
        safetalkFlavor
                {
                    applicationId "com.deanblakely.SafeTalk"
                    dimension "stupidDimensionone"
                }
    }
}

dependencies {
    compile project(':dropboxChooserSDK')
    compile files('libs/gson-2.2.4.jar')
    compile files('libs/microsoft-translator-java-api-0.6.2-jar-with-dependencies.jar')
    compile 'com.android.support:appcompat-v7:25+'
    compile 'com.android.support:design:25+'
    compile 'com.google.android.gms:play-services-gcm:9.4.0'
    compile 'org.apache.directory.studio:org.apache.commons.io:2.4'

}

以前不是这样的。我想这是另一个重大变化。有人知道是什么原因造成的吗?

通常这个问题与配置权限或使用功能有关

在这种情况下看起来问题是这样的:

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

DOCUMENTATION

中检查您需要更改的用户功能

像往常一样,我正在回答我自己的问题。 . .

我在 gradle 中进行了以下替换。 . .

//编译'org.apache.directory.studio:org.apache.commons.io:2.4'

编译'commons-io:commons-io:2.6'

我从遇到同样问题的其他人那里找到了 post。我不知道它为什么会起作用,原来的人也没有遇到这个问题。我认为这要么是由于 bug Google Play 软件 and/or 完全缺乏文档造成的。