.apkファイルについて

apk.png

デバッグ用.apk(署名なし)ファイルの作成

ndk-buildした後、
Eclipseを立ちあげて
「File」->「New」->「Project」->「Android Project from Existing Code」で作ったNativeActivityプロジェクトフォルダを指定する。
すると
「android.app.NativeActivity」みたいなプロジェクトができる。
それを右クリックして
Android Tools->Add Native Support
でlibなんとか.soを指定せよみたいな画面になるので

/libs/armeabi/libnative-plasma.so

と記入。(ちゃんとlibsフォルダから指定しないとエラーになっちゃう、そしてエラーに成ったあとの直し方がわからん)
そして右クリックして
Debug as->Debug as Native Application
とすると、binフォルダのしたにapkファイルが出来上がる。これをインストールすればいい。たとえこの時点でPATHがみつからんとかいうエラーが出ても、実行可能である・。

出来上がった.apkファイルを端末にインストールする方法

adb install <androidアプリのパッケージ名>.apk

adb install bin/<androidアプリのパッケージ名>.apk

署名付きapk

ant release

と打つ。すると、binフォルダに.apkファイルができている。だがしかし、このままでは実機にインストールできないので鍵を作る。

鍵を作る

keytool -genkey -dname "c=JP" -keypass <keyパスワード> -keystore <署名ファイル名>.key -storepass <storeパスワード> -validity 12000 -alias <プロジェクト名> -keyalg RSA

てなかんじで。keytoolっていうコマンドがjavaのSDKに入ってるらしい。
もし出来なかったらjavaのsdkのbinを環境変数PATHに加える。
パスワードは6文字以上じゃないといけないらしい。

鍵を.apkに埋め込む

jarsigner -keystore <署名ファイル名>.key -keypass <keyパスワード> -storepass <storeパスワード> <名称>-unsigned.apk <プロジェクト名>

  1. 実機が接続された状態で

adb install なんちゃら.apkと打つとアプリがインストールされる。

もしすでにインストールしているなら-rオプションをつけるといい(reinstall)

adb install -r なんちゃら.apk

tegra developer kitをインストールしてから、普通のコマンドプロンプトでndk-buildしたらエラーになるようになった。cygwinで開いてndk-buildすればうまくいく。
EclipseのC++プラグインにより、コードの軽いエラーチェックをすることにした。
INSTALL_FAILED_ALREADY_EXISTSエラー及び、INSTALL_FAILED_UPDATE_INCOMPATIBLEを繰り返す場合
パッケージ名が同じだと、同じアプリケーションとみなされるみたい。
パッケージ名はアプリケーションごとに変えよう!!

apkを直接端末ダウンロードするには?

apkファイルをAndroid端末(実機)にインストールする方法

  1. Android SDKを使用(PCと端末をつないでインストール)
  2. 端末に直接ダウンロードしてインストール(直URLまたはQRコードから)
  3. マウントして端末内に保存したapkファイルからインストール
  4. Dropboxを使用(apkファイルを同期して、端末からインストール)

apkを直接インストールするためのコマンド

adb install -r DeviceInfoViewer2.apk
pause

-r は上書きすると言う意味です

サポートサイト Wikidot.com