3

このガイドに従って apk に署名しようとしています。

  1. C:\Users\Family\workspace\ に keytools フォルダーを作成し、新しく作成した keytools フォルダーに keys フォルダーを作成しました。だから今私は C:\Users\Family\workspace\keytools と C:\Users\Family\workspace\keytools\keys フォルダーを持っています。

  2. debug.keystore を keys フォルダーにコピーし、keytool.exe と jli.dll を keytools フォルダーにコピーしました。

  3. cmd.exe を実行し、C:\Users\Family\workspace\keytools に移動して実行しましたkeytool -genkey -alias anddev.keystore -keyalg RSA -validity 20000 -keystore keys/anddev.keystore

  4. anddev.keystore ファイルが keys フォルダーに作成されます。

  5. 署名する apk を keytools フォルダーにコピーしました。また、jarsigner.exe を keytools フォルダーにコピーしました。

  6. cmd.exe では、私は C:\Users\Family\workspace\keytools にいて、実行しようとしています: jarsigner -verbose -keystore C:\Users\Family\workspace\keytools\keys\anddev.keystore -signedjar sampleapp_signed.apk sampleapp.apk anddev.keystore. それは私にこのエラーを与えます: ここに画像の説明を入力 私も実行しようとしました:

    jarsigner -verbose -keystore C:\Users\Family\workspace\keytools\keys\anddev.keystore -signedjar sampleapp_signed.apk sampleapp.apk C:\Users\Family\workspace\keytools\keys\anddev.keystore

私も実行しようとしました:

jarsigner -verbose -keystore C:\Users\Family\workspace\keytools\keys\anddev.keystore -signedjar C:\Users\Family\workspace\keytools\sampleapp_signed.apk C:\Users\Family\workspace\keytools\sampleapp.apk C:\Users\Family\workspace\keytools\keys\anddev.keystore

c:\program files\java\jdk1.6.0_23\bin に移動してそのコードを実行すると、キーストアのパスワードが要求され、キーストア パス (123456) を書き込むと、エラーが発生します。

jarsigner: c:\users\family\workspace\keytools\keys\anddev.keystore の証明書チェーンが見つかりません。c:\users\family\workspace\keytools\keys\anddev.keystore は、秘密鍵と対応するキー証明書チェーンを含む有効なキーストア キー エントリを参照する必要があります。

anddev.keystore パス (=asdfgh、キーツールがプロセスの最後に要求した 2 番目のパス) を書き込むと、次のエラーが発生します: jarsigner エラー: java.lang.RuntimeException: キーストア ロード: キーストアが改ざんされたか、パスワードが変更されました正しくない。(ただし、これは正当なエラーであると確信しています。パスがこれではなく、123456であるためです)。

私は近づいていると確信しており、その証明書チェーンエラーが問題です。右?私はステップを逃していますか、それとも何ですか?

もう1つ、コマンドラインでkeytoolがパスワードを要求したときにカーソルが動かなかった。パスワードを書きましたが、数字や星、またはカーソルの動きが見られませんでした。次に、パスワードの再入力を求められましたが、同じことが起こりました。これは大丈夫だと思います。コマンドラインの機能です。念のためにこれを書いています。

編集: Hades と Saasha の助けに基づいて、apk に署名するのは非常に簡単でした。ここに興味がある人のために、私の手順を示します。このために、MyKeys フォルダーを C:\Users\Family\workspace に作成しました。プロセスの後、sample.keystore と samplesigned.apk がそのフォルダーに表示されます。ここに画像の説明を入力

4

2 に答える 2

3

そんな面倒なことはしないでください。

日食を使用していますか?このガイドを参照している場合。

http://developer.android.com/guide/publishing/app-signing.html

この見出しまで下にスクロールし、

「Eclipse ADT でコンパイルして署名する」

キーストア用のウィザードもあります。

于 2011-06-01T09:37:52.103 に答える
3

ハロー

Eclipse を使用している場合は、以下を試すことができます。

Eclipse ADT でコンパイルして署名する

ADT プラグインで Eclipse を使用している場合は、エクスポート ウィザードを使用して、署名済みの .apk をエクスポートできます (必要に応じて、新しいキーストアを作成することもできます)。エクスポート ウィザードは、Keytool と Jarsigner とのすべての対話を実行します。これにより、前述のように、コンパイル、署名、調整の手動手順を実行する代わりに、GUI を使用してパッケージに署名できます。ウィザードがパッケージをコンパイルして署名すると、zipalign を使用したパッケージの配置も実行されます。エクスポート ウィザードは Keytool と Jarsigner の両方を使用するため、上記の「署名の基本設定」で説明したように、コンピューターでそれらにアクセスできることを確認する必要があります。

Eclipse で署名および整列された .apk を作成するには、次のようにします。

  1. パッケージ エクスプローラーでプロジェクトを選択し、[ファイル] > [エクスポート] を選択します。
  2. Android フォルダーを開き、[Android アプリケーションのエクスポート] を選択して、[次へ] をクリックします。Android アプリケーションのエクスポート ウィザードが開始され、.apk の署名に使用する秘密鍵を選択する手順 (または新しいキーストアと秘密鍵を作成する手順) を含む、アプリケーションに署名するプロセスが案内されます。
  3. エクスポート ウィザードを完了すると、アプリケーションがコンパイル、署名、調整され、配布の準備が整います。
于 2011-06-01T09:42:01.080 に答える