web-dev-qa-db-ja.com

Android APK署名V2に署名

Androidアプリケーションを使用してAndroidスタジオバージョン2.2.2およびGradleバージョン2.2.2を開発しています。署名付きAPKを生成しようとしています。通常のAndroid Studioを使用して署名済みAPKを生成するプロセス。その後、Zipalignプロセスを実行しました。生成されたAPKは以下で正常に機能しますAndroid 6。 Android= Nの場合、APKのインストール中に次のエラーが表示されます。

    Failed to install C:\Users\User\AppData\Roaming\Skype\My Skype Received Files\ap
p-dev3-release_zipalign.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Fail
ed to collect certificates from /data/app/vmdl25816781.tmp/base.apk: META-INF/CE
RT.SF indicates /data/app/vmdl25816781.tmp/base.apk is signed using APK Signatur
e Scheme v2, but no such signature was found. Signature stripped?]

ドキュメントのとおりAndroid studio 2.2は、サインインV1およびV2のサインインを自動的に処理します。何か問題がありますか?ヘルプが必要です。

9
nilkash

Gradle用AndroidプラグインおよびAndroid Studio 2.2以降では、デフォルトでv1(JAR署名)およびv2スキーム(APK署名スキームv2)で署名されたAPKが生成されます。v2-への変更署名済みのAPKはv2署名を無効にします。これはAndroid Nougat(Android 7.0)以降の検証であるため、Android Nougat以降のバージョンにAPKをインストールできません。

ソリューション:

  1. 署名済みのAPKでzipalignを実行しないでください-Android Plugin for GradleおよびAndroid Studioは、リリースビルド用にすでにZipに揃えられたAPKを生成します。

  2. Zipalignを実行する必要がある場合は、APKに署名する前に実行してください。 https://developer.Android.com/studio/command-line/zipalign.html および https://developer.Android.com/studio/publish/app-signing。 html#signing-manually

  3. Build.gradleファイルでv2署名を無効にします。 https://developer.Android.com/studio/releases/gradle-plugin.html 、特にv2SigningEnabledを参照してください。

13
Alex Klyubin

ionicアプリに署名するときにこのエラーが発生した場合は、 これらの手順を使用して)署名してください。

0
che-azeh