So-net無料ブログ作成
検索選択

Androidアプリ開発 リリース時にレイアウトを自動選択する adbによるapkのリモートインストール [Androidアプリ開発]



ご存じのように、MapViewを使用するときは、APIキーを取得して、レイアウトファイルで指定しなければならい。
APIキーは、署名時に使用する証明書を使って取得する必要がある。デバッグ時に使用する証明書とリリース時に使用する証明書が異なるため、APKをエクスポートする際に、いちいち切り替えないといけない。

これが、めんどうなので、自動化することにした。

まず、デバッグモードで実行しているのかどうなのかは、BuildConfig.DEBUGをみればわかる。

BuildConfigクラスは、ADTが自動生成する。BuildConfig.javaに存在しているクラス。
レイアウトとして、main_release.xmlとmain_debug.xmlのふたつを用意しておいて、それぞれにデバッグ用と本番用のAPIキーを設定しておく。

アクティビティのsetContentViewでレイアウトを指定する際に、BuildConfig.DEBUGをみて、main_release/main_debugのどちらか選択する。コードにすると以下のような感じ。

		setContentView((BuildConfig.DEBUG) ? R.layout.main_debug : R.layout.main_release);


もちろん、BuildConfig.DEBUGがtrueなら、main_debug.xmlのレイアウトを使う。

で、まずは普通にデバッグモードで実行。
地図が表示された。OK。OK。

次に、APKをエクスポートして、インストールして実行。
ありゃ、だめじゃん。

BuildConfig.DEBUGはWindows環境だとバグがあるらしい。Eclipseの「プロジェクト」メニューの「自動的にビルド」を外すと正しくAPKを作成できるようになる。
えー、自動的にビルドを外したら、ソース変更したときに、自動でビルドされないんだよね...

うぉー、これじゃあ、便利になったのかどうかわからん。

普段の開発時は、「自動的にビルド」を有効にしておいて、ガンガン実行をかける。
よし、リリースするAPKを作るぞ、といったときに、「自動的にビルドをはずして」、クリーンしてエクスポートすればOK?
クリーンはかけなくてもいいかも?

やっぱり、めんどくさいというか、「自動的にビルドをはずして」というところを忘れそう。
しかし、main.xmlをいちいち編集するよりかはいいか。

adbによるapkファイルのインストール

PCに接続して、デバッグ用アプリを実行させる場合は、Eclipseから操作できる。ボタンひとつでインストールができるので便利である。
署名付きのAPKファイルを作成して、動作確認をしようと思うと、まず、Android端末側で、デバッグ用のアプリを一度アンインストールしないと署名付きのAPKがインストールできない。
次に、PCからAPKをダウンロードする必要がある。
これらの操作もめんどくさいのよねぇ。後ダウンロードとか特に。

Eclipseから操作できないのかなぁ...
専用のアプリを作ってしまうか。

と調べてみると、adbでインストールできることが判明。PC側の操作になる。

まずは、adb.exeにパスを通す。
次に、以下の内容でバッチファイルをAPKファイルのあるフォルダに作成。

adb uninstall cx.fam.asai.AREarthroid
adb install AREarthroid.apk


パッケージ名、APKのファイル名は適宜変更して欲しい。
コマンドプロンプトから上記のバッチファイルを実行。

adbでapkをインストール.png

おっ、なんかできた。

ついでなので、Pro用のインストールバッチも作成。

adb uninstall cx.fam.asai.AREarthroidPro
adb install AREarthroidPro.apk


こっちもできた。
では、Xperiaにも入れてみよう。A100とXperiaのふたつの端末を同時にUSBで接続。

だめだ。エラーになった。
A100の方にはインストール済なので、A100を外してみる。

おお、できた。ふたつの端末をつなげているとだめなのね。

関連記事


サイト内を検索


nice!(0)  コメント(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。


AREarthroidPro ARで地球を表示するアプリ

Copyright Atsushi Asai Google+朝井淳
[改訂第4版]SQLポケットリファレンス

[改訂第4版]SQLポケットリファレンス

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2017/02/18
  • メディア: 単行本(ソフトカバー)

[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)

[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2015/03/03
  • メディア: 単行本(ソフトカバー)
C言語 ポインタが理解できない理由 [改訂新版] (プログラミングの教科書)

C言語 ポインタが理解できない理由 [改訂新版] (プログラミングの教科書)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2011/04/08
  • メディア: 単行本(ソフトカバー)

かんたんAndroidアプリ作成入門 (プログラミングの教科書)

かんたんAndroidアプリ作成入門 (プログラミングの教科書)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2013/04/16
  • メディア: 単行本(ソフトカバー)