As per Google's update on Android 11 behavior changes, there is an important (breaking) change regarding app signing
Apps that target Android 11 (API level 30) that are currently only signed using APK Signature Scheme v1 must now also be signed using APK Signature Scheme v2 or higher. Users can't install or update apps that are only signed with APK Signature Scheme v1 on devices that run Android 11.
In order to adapt your Application, you need to enable V2 Signing through either:
- Appcircle (Recommended)
- In your Project
Enable V2 Sign in Appcircle
In order to keep your config in Appcircle, you need to Navigate through:
- Your workflows
- Select a workflow
- Edit the Android Sign workflow
- Set V2 Sign to either true or false.
Alternatively, you can accomplish the same within environment variables. The environment variable for this action is
AC_V2_SIGN . More information is found at the document below:
Enable V2 Sign Through the Android Project (build.gradle)
Alternatively, you can use
build.gradle instead to specify the signing you will use.
The current Android Sign step in Appcircle utilizes jarsigner to sign apps with the APK Signature Scheme v1 and the alternative apksigner cannot be used to sign app bundles (AAB).
The solution for this is to utilize signing in gradle within the app. A sample build.gradle file that utilizes APK Signature Scheme v2 can be found at https://github.com/appcircleio/appcircle-sample-android/blob/v2-sign/app/build.gradle and the sample code can be seen below:
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
Get help from Appcircle's support team, or see how others are using Appcircle by joining our Slack Channel.