Android 内部测试与我的设备不兼容

Android internal test not compatible with my device

我在 Google Play 上发布了我的应用作为内部测试。将测试人员电子邮件添加到测试人员列表并向他们发送选择加入 URL 以下载应用程序。

他们成功地从 Google 下载应用程序,没有任何问题。

我尝试用我的 OnePlus One 下载应用程序,但我在 Google Play 中得到了 "This app is incompatible with your device.",即使 phone 在 Google Play 控制台中被列为兼容.

我使用添加到测试人员列表中的帐户连接到 Play 商店,该帐户与我的开发帐户不同。

如何检测兼容性问题的根源?

这是我的应用程序 build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.danilecx.oofmusicplayer"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 2
        versionName "1.0.1"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation 'com.google.android.gms:play-services-ads:17.1.3'
}

AndroidManifest.xml:

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_oof"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_oof_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~xxxxxxxxxx"/>
    </application>

</manifest>

更新:安装适用于 BlueStacks 但不适用于 Nox 或我的 phone(OnePlus One)。

我自己找到了解决方案,但我会分享它。

问题不是出在我的代码上,而是出在我的 OnePlus One 上。

将build.prop中的指纹更改为"ro.build.fingerprint=oneplus/bacon/A0001:4.4.4/KTU84Q/XNPH38R:user/release-keys"后,成功了!

有关详细信息,请转到此 reddit thread。希望这对您有所帮助!