I'm trying to install and run a debug APK with Calabash-android, but it is failing because the scheme of the signature.
My original APK is signed with the debug keystore using scheme v2 (signed when building it via gradle):
$ apksigner verify -v myapp.apk
Verifies
Verified using v1 scheme (JAR signing): false
Verified using v2 scheme (APK Signature Scheme v2): true
Verified using v3 scheme (APK Signature Scheme v3): true
However, it cannot be used as it is with calabash-android (getting error No signature files found in META-INF. Cannot proceed.), so I need to resign it with calabash:
$ calabash-android resign myapp.apk
Signing process seems to work fine, but when I try to install the just signed APK I'm getting this error:
adb: failed to install /Users/acampos/myapp.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Scanning Failed.: No signature found in package of version 2 or newer for package com.myapp]
When trying to verify the signature of the new APK, this is the result:
$ apksigner verify -v myapp.apk
DOES NOT VERIFY
ERROR: Target SDK version 30 requires a minimum of signature scheme v2; the APK is not signed with this or a later signature scheme
...
It seems that the latest Android versions need scheme v2 for the signatures, but calabash resign action is still using v1.
I have already tried creating a new debug.keystore, changing to different versions (ruby, calabash-android, etc.),..., but no success.
Any idea about how to make calabash sign the APK using scheme v2?
Thank you!