Search code examples
javaandroidgoogle-play64-bitgpuimage

Google Play 64-bit requirement


I'm trying to submit an update to my app, after uploading the Android App bundle I get this error message :

enter image description here

I've read the documentation and follow all steps, after analyzing the Android App bundle :

enter image description here

My app is a Photo Editor app, with pure java, I don't use any native code, but I used some third-party library such as

implementation 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'

which supports the 64 bit as you can see in the image above

here's my Gradle file :

    android {
        compileSdkVersion 29
        dexOptions {
            preDexLibraries = false
            javaMaxHeapSize "4g"
        }
        defaultConfig {
            applicationId "maa.abc"
            minSdkVersion 18
            targetSdkVersion 29
            versionCode 14
            versionName "1.2.0"
            multiDexEnabled true
            renderscriptTargetApi 28
            renderscriptSupportModeEnabled true
            testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
            ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64' 'armeabi'
        }
        buildTypes {
            release {
                minifyEnabled true
                shrinkResources true
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
            debug {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_1_8
        }
        packagingOptions {
            exclude 'META-INF/DEPENDENCIES.txt'
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/NOTICE.txt'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/DEPENDENCIES'
            exclude 'META-INF/notice.txt'
            exclude 'META-INF/license.txt'
            exclude 'META-INF/dependencies.txt'
            exclude 'META-INF/LGPL2.annotations1'
        }
    }

    dependencies {
  implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation project(':appintro')
    /*ANDROID*/
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.exifinterface:exifinterface:1.0.0'
    implementation 'com.android.support:support-annotations:28.0.3'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.multidex:multidex:2.0.1'
    annotationProcessor 'androidx.annotation:annotation:1.1.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'


    /*PHOTO FILTERS (CONTAINS NATIVE CODE)*/
    implementation 'cn.ezandroid:EZFilter:2.0.9'
    implementation 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'

    /*ANIMATION*/
    implementation 'com.daimajia.easing:library:2.0@aar'
    implementation 'com.daimajia.androidanimations:library:2.3@aar'

    /*GLIDE*/
    annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
    implementation 'com.github.bumptech.glide:glide:4.9.0'


    /*PICK IMAGE /TAKE PICTURE*/
    implementation 'com.github.jkwiecien:EasyImage:1.3.1'

    /*TEST IMPLEMENTATION*/
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    testImplementation 'junit:junit:4.12'


    /*VIEWS*/
    implementation 'com.github.chrisbanes:PhotoView:2.3.0'
    implementation 'de.hdodenhof:circleimageview:3.0.0'
    implementation 'com.alexvasilkov:gesture-views:2.5.2'
    implementation('com.github.christophesmet:android_maskable_layout:v1.3.1') {
        exclude group: 'com.intellij', module: 'annotations'
    }
    implementation 'com.h6ah4i.android.widget.verticalseekbar:verticalseekbar:1.0.0'
    implementation 'com.github.duanhong169:checkerboarddrawable:1.0.2'


    /*FIREBASE*/
    implementation "com.google.firebase:firebase-core:17.0.1"
    implementation "com.google.firebase:firebase-storage:18.1.1"
    implementation 'com.google.firebase:firebase-database:18.0.1'
    implementation 'com.firebaseui:firebase-ui-database:5.0.0'

    /*HELPER*/
    implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.9'
    implementation 'org.apache.commons:commons-collections4:4.3'
    implementation 'com.github.nanchen2251:CompressHelper:1.0.5'
    implementation 'com.google.code.gson:gson:2.8.5'
    implementation(group: 'uz.shift', name: 'colorpicker', version: '0.5', ext: 'aar')

    /*CHANGING FONT*/
    implementation 'io.github.inflationx:viewpump:2.0.2'
    implementation 'io.github.inflationx:calligraphy3:3.1.1'
}
    apply plugin: 'com.google.gms.google-services'

with this cmd I'm able to install my app on my phone successfully:

# A successful install:
> adb install --abi armeabi-v7a YOUR_APK_FILE.apk
Success

I tried to upload .APK but still I get the same error message, although I see my app support all native platforms :

enter image description here

Can anyone help me to get resolve this issue ?, I have spent almost 1 week to submit an update to my app with no success.

UPDATE:

I have contacted google before 3 days ago, they said this : Thanks for contacting Google Play Developer Support to report the behavior you're seeing with your App Bundle being flagged for 64 compliance. I’ve documented your issue and escalated it to our technical team for further investigation. Our team is working to resolve this issue for you as soon as possible. I appreciate your patience and I’ll let you know the moment I have an update. If you have any other questions in the meantime, please let me know.


Solution

  • Finally, after 1 week stuck in this situation, the problem was in RenderScript and .bc files, I have removed all .bc file from the project and removed those line as well.

    renderscriptTargetApi 28
    renderscriptSupportModeEnabled true
    

    here's my final Gradle :

     compileSdkVersion 29
        buildToolsVersion "29.0.0"
        dexOptions {
            preDexLibraries = false
            javaMaxHeapSize "4g"
        }
        defaultConfig {
            applicationId "maa.abc"
            minSdkVersion 18
            targetSdkVersion 29
            versionCode 19
            versionName "1.9"
            ndk.abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
            multiDexEnabled true
            testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        }