この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
android:command [2017/08/27 22:50] ko322jp [ファイル転送] |
android:command [2017/08/27 22:57] (現在) ko322jp [ビルド] |
||
|---|---|---|---|
| ライン 91: | ライン 91: | ||
| adb logcat -v time -d | Vim -g -</code> | adb logcat -v time -d | Vim -g -</code> | ||
| - | APKファイル署名 | + | ===== APKファイル署名 ===== |
| - | jarsigner -verbose -storepass <STOREファイルパスワード> -keypass <エイリアスパスワード> -keystore <キーストアファイル名> -signedjar <署名後のファイル名>.apk <署名するファイル名>.apk <キーペアのエイリアス> | + | jarsigner -verbose -storepass <STOREファイルパスワード> -keypass <エイリアスパスワード> -keystore <キーストアファイル名> -signedjar <署名後のファイル名>.apk <署名するファイル名>.apk <キーペアのエイリアス>\\ |
| -signedjar を省略すると、対象ファイルに署名して上書きされます。 | -signedjar を省略すると、対象ファイルに署名して上書きされます。 | ||
| - | ビルド | + | ===== ビルド ===== |
| - | build.xml を生成 | + | * build.xml を生成<code> |
| - | android update project -p <プロジェクトのパス> -n <プロジェクト名> | + | android update project -p <プロジェクトのパス> -n <プロジェクト名></code>(例)<code> |
| - | (例) android update project -p /usr/local/android-ndk-r7/samples/hello-jni -n hello-jni --target 8 | + | android update project -p /usr/local/android-ndk-r7/samples/hello-jni -n hello-jni --target 8</code>AndroidManifest.xml に target 指定がない場合は、次のメッセージが表示されますので、target(Android SDK のバージョン)を指定します。<code> |
| - | AndroidManifest.xml に target 指定がない場合は、次のメッセージが表示されますので、target(Android SDK のバージョン)を指定します。 | + | Error: The project either has no target set or the target is invalid.</code> |
| - | Error: The project either has no target set or the target is invalid. | + | * その後、ant を実行してビルドします。<code> |
| - | + | ||
| - | その後、ant を実行してビルドします。 | + | |
| adb clean debug | adb clean debug | ||
| - | adb clean release | + | adb clean release</code> |
| - | + | * release ビルドする場合は、ant.properties をプロジェクトに作成して署名の情報を記述します。<code> | |
| - | release ビルドする場合は、ant.properties をプロジェクトに作成して署名の情報を記述します。 | + | |
| key.store=/home/hoge/my.keystore | key.store=/home/hoge/my.keystore | ||
| key.alias=samples | key.alias=samples | ||
| key.store.password=storepass | key.store.password=storepass | ||
| - | key.alias.password=aliaspass | + | key.alias.password=aliaspass</code> |
| - | + | * JNI<code> | |
| - | JNI | + | |
| javah | javah | ||
| - | javah -classpath ../bin/classes -d . pkg.MyClassname | + | javah -classpath ../bin/classes -d . pkg.MyClassname</code>-classpath native メソッドを定義したクラスがビルドされたディレクトリ\\ -d ヘッダーファイルの出力先ディレクトリ<code> |
| - | -classpath native メソッドを定義したクラスがビルドされたディレクトリ | + | |
| - | -d ヘッダーファイルの出力先ディレクトリ | + | |
| android.mk | android.mk | ||
| application.mk | application.mk | ||
| - | ndk-build | + | ndk-build</code> |
| - | + | * zipalign\\ zipalign -v 4 元apk 最適化後apk\\ (例)<code> | |
| - | zipalign | + | zipalign -v 4 sample_org.apk sample.apk</code> |
| - | + | * apktool<code> | |
| - | zipalign -v 4 元apk 最適化後apk | + | java -jar apktool.jar d 対象apk</code>(例)<code> |
| - | (例) | + | java -jar ~/apktool.jar d sample.apk</code> |
| - | zipalign -v 4 sample_org.apk sample.apk | + | |
| - | apktool | ||
| - | java -jar apktool.jar d 対象apk | ||
| - | (例) | ||
| - | java -jar ~/apktool.jar d sample.apk | ||