Nexus5 × KENWOOD KOS-A300 続き

なぜかアプリ ラジオ関西のコンテンツが再生される。
なので、ラジオ関西のアプリを削除。
しても、ラジオ関西のコンテンツが再生される。
しょうがないので、android内のラジオ関西アプリのディレクトリ(.ssdc)を削除した。
すると、ようやくMusicフォルダの音楽が再生された!
接続してから再生開始するまで5分近くかかりますが。
今日はここまで、

Nexus5 × KENWOOD KOS-A300

ようやくビルト イン スロットができたので、接続テストです。
まず、iPhoneと違ってNexus5はUSB接続時にモードがあり、
KOS-A300に接続時の動作も次のように違います。
・メディアデバイス(MTP)の場合
[Reading…]で数分くらいかかって認識される。
 
・カメラ(PTP)の場合
KOS-A300に認識されず[No Device]
問題はここから、
上記の[Reading…]の後、音声が再生されるのですが、
なぜかアプリ ラジオ関西のコンテンツ。
まだまだ続きそう…

完成というか完了

車検からアイが帰ってきて、ようやくNexus5用のビルト イン スロットが完成しました。

外見はiPhone4Sの時よりスロットの幅が広がっただけです (w

中身はこんな。
スペーサーにペットボトルのキャップを使用 (w
ただ問題があって、
KENWOOD Music Control @Goolge play が思ったように動作してくれない?
接続しても「reading…」の状態が5分くらい続きます。
その後、Nexus5内の曲が再生されるのですが..

正常に終了する。

さて、アプリの第一歩は終了から。
iOSでもandroidでも、私が気になるのはアプリの終了です。
終了したつもりでも、バックグラウンドで動作していて思わぬバッテリ負荷になることがある。
いくつかのandroidアプリを見てみると、次の作法がいいのかな?
1. メニューキーで「終了」を選択
2. マルチタスク画面でタスクを終了
ちなみにナビゲーションバーにメニューキーが表示されるアプリもあるけど、
これはandroid 2.x系の古いデザインのようですね。
参考:
メニューの表示(onCreateOptionsMenu())
上の例が一番シンプルな実装なようなのでマネてみた。
数行でメニューができますね。
例えば、次のように追加すればアプリが終了できました。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case Menu1:
    return true;
case Menu2:
    finish();
    return true;
 default:
     return false;
 }
}
スクリーンショット(エミュレータ):

なお、開発環境はDebian 7からUbuntu Gnome 14.04に変わってますが、
そのあたりのことは後日まとめて。

androidアプリ開発の続き

まる2月ほど停滞していましたが、再開します。
android実機を触り始めて一ヶ月、
実際にアプリを使いはじめると、iPhoneとは文化が違うようです。
iPhoneアプリに比べて、悪く言えば一貫性がない、
よく言えば多種多様な感じです。
Googleのコントロールが甘いというより、
製作者のポリシーが現れるということなのでしょうね。
ということで、具体的に色々調べるとっかかりから。
まずは「android 画面の名称」
参考:
【Xperia Aの基本機能】ホーム画面や通知領域など主要部分の名称と働きを把握しよう
とりあえず、次のものを最低限知っておく必要があるかな?
・ナビゲーションバー/ソフトキー
・ホームキー/ホーム画面
・ドロワー/アプリ一覧
・メニューキー
・ステータスバー/通知領域
ハードウェアキーの有り無し、など機種依存部分が多いですが、
そこらへんはおいおい。

車の音楽環境

これまで三菱アイではiPod/iPhone4Sで音楽を聴いていました。
Nexus5に換えて、ビルト イン スロットを改修し始めたのが4月の頭でしたが、
そのパーツが予想を大幅に越えてまだ手元に届かない…
なお、KENWOOD KOS-A300対応の謹製Android アプリがありました。
KENWOOD Music Control @Goolge play
対応機種 KOS-A300があります!
というわけで、あとは工作だけすれば完了なのですが。
とりあえず、それまでの措置として、よく聴くplaylistをCD-Rに焼きました。

テスト


スマホをiPhone4S → Nexus5に変えたので、
写メをサイト上にアップするスクリプトの変更のテスト。
画像のタテヨコ回転、GPS情報などのEXIFを削除してます。
2年に一度くらいなので、シェル スクリプトの微修正(小一時間)で済ませていますが、
一度きちんとスクリプトを書いておいた方がいいのかな?
10年以上使ってるけども。

Androidアプリの開発環境を作る 続き

前回:Androidアプリの開発環境を作る
とりあえず開発環境をインストールしただけだったので、実際に動かしてみる。
以前に仕事でFlex Builderを使っていたので、eclipseのおおよそは解っているつもり (w
デフォルトで「自動的にビルド」にチェックが入っているのでソースをイジってバグを入れると、ちゃんとエラーが出る。
ビルドはOkなようだ。
次にAVD(エミュレータ)を動かす。
前回にAndroid仮想デバイス・マネージャーを開き、新規のデバイスを作って、エミュレータの起動までは確認済み。
しかし、起動しても画面はブラックアウトのまま…
ざっとググってみると必要なパッケージが不足している、というのがFAQらしい。
Android SDK Managerを開いてみると、必要なパッケージが全てインストールされているわけではないらしい。
最低限必要そうな次にチェックしてインストール。
Tools > Android SDK Tools
Tools > Android SDK Platform-tools 19.0.1
Tools > Android SDK Build-tools 19.0.2
Tools > Android SDK Build-tools 19.0.1
Tools > Android SDK Build-tools 19
Android 4.4.2 (API 19) 以下
再びAVDを起動すると、ブラックアウトからANDROIDのロゴが表れ、しばらくして例のAndroidの画面が出てきた。
軽く触ってみた限りでは、正常に動いているようだ。

Monodevelopでは問題ないけど、eclipseを使うには画面が狭いなぁ (w
なんとかしないと。

KENWOOD KOS-A300 with Android

iPhone4SからAndroidに機種変更すると、一つだけ困ったことが。
車で使っているコントローラKENWOOD KOS-A300の使い心地です。
改めてKOS-A300の仕様をみてみると、USBメモリのファイルを再生できます。
TOP > Audio File > オーディオファイルのスペック
つまり、次の方法でKOS-A300を利用できる。
 A. USBメモリに曲を入れて車に常駐させておく
 B. AndroidをUSBメモリとして接続
ロング ドライブの場合には運転中にAndroidの充電をしておきたいので、
可能ならばBの選択肢が私的には望ましい。
次にあるように、AndroidをUSBメモリとして認識させることが可能なようです。
[ Nexus 5 ] 内部ストレージをPCの外部メモリとして使用する方法 @EMOBILE
操作性はiPhoneに比べ劣りますが、AndroidでもKOS-A300を使えなくはないみたいですね。
あとはビルト イン スロットの工作かな〜。
車でiPhone 2011.11.11 (金)

Androidアプリの開発環境を作る

長年放置していたログ整形アプリも整理したので、次に進む。
iPhone4Sの電源ボタンがヘタレてクリック感がなくなったので、
次はNexus5でAndroidにしようかと考えている。
アプリを作って遊んでみたいので、その準備をはじめよう。
というわけで、Androidアプリの開発環境を構築〜。
マシン: lenovo ThinkPad Edge e135 (AMD E2-1800, 64bit)
環境: Debian 7.4
次を参考に環境を作ります。
参考:
LinuxでAndroid開発環境構築@Yahoo!知恵袋
http://note.chiebukuro.yahoo.co.jp/detail/n173086
少し違った点もあったので、以下簡単にメモ。
・AMD-Vに対応しているかチェック
$ grep –color svm /proc/cpuinfo
flags : fpu vme de … svm … lbrv svm_lock nrip_save pausefilter
flags : fpu vme de … svm … lbrv svm_lock nrip_save pausefilter
Ok, 問題ないようだ。
・Android SDKをダウンロード
adt-bundle-linux-x86_64-20131030.zip
・Pleiades最新版を次からダウンロード
http://mergedoc.sourceforge.jp/
・インストール
$ sudo apt-get install openjdk-7-jdk
$ sudo apt-get install ia32-libs
$ sudo apt-get install qemu-kvm libvirt-bin
$ sudo adduser miyajima kvm
・ADTは/optに展開
とりあえず、eclipseを起動すると日本語化されている。
デフォルトのサンプルでビルドは異常ない様子。
エミュレータAVDも動いているかな?
今日はここまで。