Google 播放:无法安装应用,错误 504 (INSTALL_PARSE_FAILED_MANIFEST_MALFORMED)

Google Play: Can't install app, error 504 (INSTALL_PARSE_FAILED_MANIFEST_MALFORMED)

我有一个应用已上传到 Google Play。问题是:它不想安装在某些设备上,例如三星 J7。另一件事是,我有两个相同的设备 (Gionee S Plus),一个有 Android 7.0 root,应用程序运行正常,另一个在 Android 6.0,但是应用不想安装。当我尝试直接使用 apk 在第二台设备上安装应用程序时,我得到:

Parse error

There was a problem parsing the package

当我尝试从商店安装它时,我得到:

Can't install the app

没有其他明确的消息。 搜索这个问题后,我发现我需要做一些事情:

我怀疑这是明显的问题,我反编译了apk但看起来没问题。

Manifest.xml Android 工作室:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.myapp">

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

    <application
        android:name="com.myapp.MainApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher"
        android:supportsRtl="true"
        android:theme="@style/PurpeTheme">
        <meta-data
            android:name="com.onesignal.NotificationOpened.DEFAULT"
            android:value="DISABLE" />

        <activity android:name="com.myapp.ActivitySplash">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        <activity android:name="com.myapp.ActivityHome" />

        <activity android:name="com.myapp.ActivityTrack"/>
        <activity android:name="com.myapp.ActivityEqualizer" />
        <activity android:name="com.myapp.ActivityAboutUs" />
        <activity android:name="com.myapp.ActivitySettings" />

        <service android:name="com.myapp.services.ServicePlayer" />
        <service android:name="com.myapp.services.DownloadService" />

        <activity android:name="com.myapp.ActivityFavorites" />
        <activity android:name="com.myapp.ActivityPrivacyPolicy" />

        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="@string/admob_app_id" />

        <meta-data
            android:name="firebase_crashlytics_collection_enabled"
            android:value="${crashlyticsEnabled}" />
    </application>

</manifest>

build.gradle 应用级别

apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.android.application'
apply plugin: 'io.objectbox'
apply plugin: 'io.fabric'

android {

    compileSdkVersion 28

    defaultConfig {
        applicationId "com.myapp"
        minSdkVersion 16
        targetSdkVersion 28
        versionCode 3
        versionName "1.2"
        multiDexEnabled true
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        vectorDrawables.useSupportLibrary = true
    }

    buildTypes {
        release {
            minifyEnabled false
            signingConfig signingConfigs.config
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            manifestPlaceholders = [crashlyticsEnabled: true]
        }

        debug {
            manifestPlaceholders = [crashlyticsEnabled: false]
        }
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}


dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'androidx.appcompat:appcompat:1.1.0-alpha03'
    implementation 'com.google.android.material:material:1.1.0-alpha04'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'com.google.android.gms:play-services-ads:17.2.0'
    implementation 'de.hdodenhof:circleimageview:2.1.0'
    implementation 'jp.wasabeef:blurry:2.1.1'
    implementation 'com.sothree.slidinguppanel:library:3.3.0'
    implementation 'com.nabinbhandari.android:permissions:3.5'
    implementation 'com.orhanobut:dialogplus:1.11@aar'
    implementation 'com.diogobernardino:williamchart:2.5.0'
    implementation 'com.h6ah4i.android.widget.verticalseekbar:verticalseekbar:0.7.2'
    implementation 'com.sdsmdg.harjot:croller:1.0.7'
    implementation 'com.ToxicBakery.viewpager.transforms:view-pager-transforms:1.2.32@aar'
    implementation 'com.google.code.gson:gson:2.8.2'
    implementation 'com.squareup.retrofit2:retrofit:2.3.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.0.2'
    implementation 'com.github.bumptech.glide:glide:4.7.1'
    implementation 'com.wang.avi:library:2.1.3'
    implementation 'androidx.multidex:multidex:2.0.1'
    implementation 'jp.wasabeef:glide-transformations:3.3.0'
    implementation 'com.codemybrainsout.rating:ratingdialog:1.0.8'
    implementation 'com.github.varunest:sparkbutton:1.0.5'
    implementation 'com.onesignal:OneSignal:[3.9.1, 3.99.99]'
    implementation 'com.google.android.gms:play-services-analytics:16.0.8'
    testImplementation 'junit:junit:4.12'

    implementation 'com.google.firebase:firebase-core:16.0.8'
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9'

}

apply plugin: 'com.google.gms.google-services'

更新:

尝试从 Android Studio 将应用程序安装到某些设备时出现 INSTALL_PARSE_FAILED_MANIFEST_MALFORMED。我找到了解决方案,在下面的回答中有详细说明。

实际上,问题出在包名上,显然某些设备和某些 android 版本 (Android 6.0) 不接受大写字母作为包名的开头。包名是指您的项目文件结构,而不是应用程序 ID。

以下是我在模拟器上试用该应用程序时得到的结果,以及帮助我​​找到问题的原因: