Android SDK Documentより実際の電子署名のやり方

  1. release mode でコンパイルし、.apkファイルを作成する。
  2. 鍵と証明書の作成
    
    keytool -genkey -v -keystore my-release-key.keystore
    -alias alias_name -keyalg RSA -validity 10000
    

    上記だと証明書の有効期限は10000日

  3. アプリケーションに署名をする。

    
    jarsigner -verbose -keystore my-release-key.keystore
    my_application.apk alias_name
    
  4. 署名の確認

    
    jarsigner -verify -verbose -certs my_application.apk
    

    CN=Android Debug”と表示されている場合は、Android SDKのデバックキーが使用されているので失敗。

  5. インストール

    
    adb install my_application.apk
    

keytoolとjarsignerの簡単な説明

keytool

機能鍵と証明書を管理するためのユーティリティ鍵と証明書を「キーストア」に格納。キーストアとはデフォルトではファイル

jarsigner

機能

  1. Java ARchive (JAR) ファイルに署名を付ける(androidのapkファイルは、jarファイル)
  2. 署名付き JAR ファイルの署名と完全性を検証する

ブログ内の関連する記事