既存の未署名のapkがあり、debug.keystoreファイルを使用してそれに署名したいと思います。 ここ チュートリアルを見つけました。
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
しかし、何をalias_nameとして記述し、何をパスフレーズにする必要がありますか?署名中にEclipseが使用するalias_nameとパスフレーズを見つける方法はありますか?
デバッグキーで実際に作成する必要はありませんが、
-alias androiddebugkey
-keystore /the/path/debug.keystore
-storepass Android
-keypass Android
jarsigner -verbose -keystore ~/.Android/debug.keystore -storepass Android -keypass Android path/to/my.apk androiddebugkey
これでうまくいきました。
私の場合、最初にすべてのパスワードとエイリアスを使用してデバッグキーストアを作成し、エイリアスを「Android」にしてから、[設定]-> Android->ビルドに移動して、カスタムデバッグキーストアとして入力します。私のデバッグは、追加の作業を行うことなく、そのキーで自動署名されます!
警告:私は自分の過ちから一生懸命学びました。そのデバッグキーストアを使用してAPKをGoogleストアにアップロードし、それをアルファテスト用に公開しました(購入をテストし、Googleゲームプレイにサインインします...)。最初に、キーストア、パスワードの再入力、apkの作成、デバイスへのインストールなどの問題なしに、アプリをコンパイルしてデバッグモードで実行できるため、非常に便利でした...
ただし、問題は、テスト後、リリースされたapkを(私の公式キーストアで)そのプロジェクトにアップロードできないことです(以前にロードされたものとは異なるキーがあるため)。そのプロジェクトも削除できません(公開されているため)。最後に、私はそれを維持し、アプリのパッケージの名前を変更し、新しいプロジェクトを作成し、新しいGoogle APIのIDを更新し、新しいAPKをアップロードして、正式リリースする必要があります。
デバッグ証明書の有効期限デバッグモードでアプリケーションに署名するために使用される自己署名証明書の有効期限は、作成日から365日です。証明書の有効期限が切れると、ビルドエラーが発生します。