Androidちんたら開発室 -12ページ目

XperiaのUSBデバッグ設定で大ハマリ

会社の開発環境にてXperiaのUSBデバッグを行おうとして失敗、散々手間取った
自宅の環境ではうまくできたのですっかり油断していた
以下は解決方法のメモ


状況:
 USBデバッグモードでXperiaを接続した場合に、ドライバがインストールできない


 →ドライバを検索しても、該当するドライバが見つけられない
  ドライバがインストールされないので、当然USBデバッグ接続もできない
  Xperia内のDrivers.zipを解凍して\Drivers\ADB\android_winusb.infを指定しても駄目
  (適当なドライバではない、としてインストール自体が蹴られる)
  android_winusb.infを直接インストールしようとしても駄目



解決方法:
 
ソニーエリクソンの携帯⇔PC接続用ユーティリティーソフト(PCCompanion)をインストール
 

 →たったこれだけ


 ソフトのインストール時にADBドライバもインストールしてくれるので、USBデバッグが可能になる
 自宅のPCには、Xperia関連の同期ソフトが何本か(アップデートサービス、MediaGoなど)が入っていたので
 おそらくそのタイミングでADBドライバがインストールされてたと思われる
 
 一旦ドライバが入ってしまえばPCCompanionはアンインストールしても大丈夫っぽい
 PCCompanionは名前でぐぐるとソニエリのDLサイトが見つかるのでそこからインストール

 上記のように、おそらくは他の同期関係ソフトのインストールでも同様かとは思われるが
 今回は試していない(ヘトヘトだし・・・)


 ドライバが入った後の設定は以前に書いたとおり


 
ADBドライバの変わりにマスストレージドライバがインストールされてる!!って誤解して
必死にマスストレージドライバアンインストールしてたよ
全然無関係でした

Xperia上でのデバッグ実行

端末をデバッグモードでPC接続した場合、端末上でのアプリケーションデバッグ実行が可能になる


やることは以下の3つ

 ・PCへのドライバインストール

 ・Xperiaの設定

 ・eclipseの設定


以下はすべてXperia(ver 2.1)をwinXP環境で用いた場合のメモ


設定方法:


・PCへのドライバインストール

 USBケーブルで端末をPCに接続する

 自動的にドライバがインストールされた場合、または検索後ドライバがインストールされたら

 インストールは成功しているので作業は不要

 そうでない場合は、直接ドライバをインストールする必要がある


 USB経由でストレージをマウントし、\CDBrowser\Drivers.ZIPファイルをPCへコピーして解凍する

 USBケーブルを挿抜し、再度ドライバインストールを行う

 ドライバの場所を聞かれたときには、上記解凍後のフォルダを指定する

 ドライバインストール後は念のため再起動する


・Xperiaの設定

 設定→アプリケーション→開発より

 USBデバッグ項目にチェック


・eclipseの設定

 上記作業が終わっているPCおよび端末を用いること

 端末をUSB接続しておく(マウントの必要は無い)

 転送したいプロジェクトをパッケージ・エクスプローラーから右クリック、実行→実行の構成を選択

 ターゲットタブを選択し、Deployment Target Selection Modeを手操作に変更


 上記プロジェクトを実行すると、Android Device Chooser画面が開いて、デバッグ機が選択できるようになる

 選択肢が空の場合は、端末ないしドライバの設定がうまくいっていない






署名付き.apkファイルの作り方

アプリケーションの配布のため、出自を保証するための署名が必要になる


参考書ではコマンドライン上からの操作で行っているが、現行バージョンではeclipse環境上から直に操作可能らしい


やることは以下の二つ

 ・keystoreファイルの作成

 ・上記ファイルを用いて配布ファイルへの署名


keystoreファイルとは鍵と証明書を保管するためのデータファイル

これを用いて配布ファイル(.apk)へ署名を行う

.apkはZip圧縮されたアーカイブファイルで、拡張子を.zipにリネームするとちゃんと解凍できる

(リソースファイルやxmlファイルを覗くことができる)



操作方法:

 eclipseより、署名したいプロジェクトをパッケージ・エクスプローラー上より

  右クリック→androidツール→Export Android Applicationを選択

 

 Project Checks画面

  →プロジェクトは既に選択済みなので次へ


 Keystore selection画面

  →keystoreを新規で作るならばCreate~

   すでに作成済みのものをつかうならばUse~

   を選択


 あとは指示に従い、必要項目を埋めていけばよい


 以後は実行毎に、設定した出力先フォルダへ署名済み.apkファイルが出力される

 (シミュレーター上での実行の場合でも、別途ファイルアウトされる)



注意点:

 署名はされているものの、この時点ではいわゆる勝手アプリなので

 端末にとっては提供元不明のサードパーティー製アプリとして認識される

 (出自のあやしい、内容が不確かなアプリ)

 インストールする端末上より 

  設定→アプリケーション設定→提供元不明のアプリ

 をチェックしてインストールを許可する必要がある


 インストール方法としては

 ・サーバ上からインストール

 ・ローカルインストール

 の二通り


 前者は、サーバ上に置いて、そのURLを端末のブラウザから踏めばインストール確認画面に移行する


 後者は、apkアプリをローカルインストールするアプリを用いる

 メール等に.apkファイルを添付して送り、.apkファイルを開くとインストーラーが起動する

 アプリの入手方法はMarketより

 tAttachApkInstallerなど