1. #1 Android SDK 編
  2. #2 PhoneGap 編
  3. #3 実機にデプロイ編

はじめに

前回と前々回は、普通に Ubutu 上での Android アプリ開発環境構築についての記事となりましたが、今回はいよいよ IS01 についてです。
前回はエミュレータ上でアプリを実行してみましたが、今回は同じことを IS01 実機上にて行います。

IS01 実機の準備

まずは、 IS01 の設定をデバッグモードに変更します。
デバッグモードといっても、通常のアプリを扱っている分には特に関係ないので、常に On でも問題なさそうです。

IS01 メニュー

メニューから「設定」を選択する

メニューから「設定」→「アプリケーション」へ進みます。

Configuration Screen

「提供元不明のアプリ」にチェック

「提供元不明のアプリ」にチェックを入れたら、同じ画面の「開発」という項目を選択します。

Debug Mode

「USBデバッグ」にチェックを入れる

これで、 IS01 上の設定は完了です。

Ubuntu PC の設定

ここでは、 Android SDK の中に含まれる adb (Android Debug Bridge) というコマンドを使用します。
Android SDK のインストールについては Android SDK 編をご覧ください。

IS01 を USB で Ubuntu PC に接続します。
特に設定を行なっていない状態だと、デバッグ用のデバイスとして上手く認識されません。

$ adb devices
List of devices attached
????????????	no permissions

これを上手く認識させるには、 /etc/udev/rules.d/51-android.rules というテキストファイルを作成し、以下のように記述します。

SUBSYSTEM=="usb", SYSFS{idVendor}=="04dd", MODE="0666"

ただし、上記は IS01 用の設定なので、ご注意ください。
Ubuntu のバージョンや、 Android 端末の製造元によって書き換える必要があります。
詳しくは以下のページをご覧ください。
Developing on a Device Android Developers

念のため、全てのグループに読み込み権限を与えておきます。

sudo chmod a+r /etc/udev/rules.d/51-android.rules

これらが完了したら、 USB 接続をやり直し、再び以下のコマンドで、デバッグ用デバイスが認識されているか確認します。

$ adb devices
List of devices attached
SSHEX060626	device

上記のように出力されれば、設定は完了です。

IS01 実機へのデプロイ・実行

あとは、 PhoneGap 編で、エミュレータ上で実行したときと変わりません。
ただし、エミュレータは終了して、デバッグ端末は IS01 1 台のみ、という状態にしておきます。

PhoneGap アプリのあるディレクトリへ移動して、以下のコマンドを実行します。

$ ant debug install && adb logcat

上手くいけば、エミュレータのときと同様、メニューにアプリが追加されます。

example app is added.

メニューに example アプリが登録された

実行すると、以下のように表示されます。
これも、エミュレータのときと同様ですね。

Executed example app.

example アプリを起動

UUID の部分だけ隠しています。

そして、縦バージョン。

Rotated Ver.

縦にしてみる

まとめ

というわけで、全 3 回で、 Ubuntu 上に IS01 の開発環境を構築する方法について紹介してきました。
ここまでできれば、あとは HTML, CSS, JavaScript を駆使して、アプリの開発が楽しめることでしょう。

このブログでも、引き続き Android アプリの開発について書いていく予定です。
今回は PhoneGap の紹介になりましたが、使ってみておもしろければ Titanium 等の類似フレームワークについても紹介していければと思っています。

個人的には、今回初めて Android アプリをさわってみて、 HTML5 や CSS3 について興味を持てたことも面白かったです。
HTML や CSS を書く機会が普段あまり無いので、いい機会になりました。

本格的なアプリを作る場合は、 Java や Objective-C でゴリゴリ書いていくのがいい場合もあるでしょう。
しかし、スマートフォンアプリはほとんどがアイディアの勝負だと思うので、こういった間口の広い環境があるのは素晴らしいことだとおもいます。
プログラムを書いたことがある人も無い人も、楽しくアプリ開発しましょう !

See also

,

Ubuntu 上に IS01 の開発環境構築シリーズ

  1. #1 Android SDK 編
  2. #2 PhoneGap 編
  3. #3 実機にデプロイ編

はじめに

せっかく Android が手に入ったので、アプリを作ってみようと勉強中です。主にネットと、 Kindle で買ったオライリー本を参考にしています。

[エラー: isbn:1449383262 というアイテムは見つかりませんでした]

せっかくなので、このブログにも作業手順をメモしていこうと思います。
開発環境はいろいろあり得ますが、ここでは私自身の環境である Ubuntu, IS01 を前提に説明します。

大まかな順序としては、以下のように進めて行く予定です。

  1. Android SDK のインストール
  2. PhoneGap のインストール
  3. IS01 実機の設定
  4. サンプルアプリの生成・デプロイ

[エラー: isbn:1449383262:n というアイテムは見つかりませんでした]PhoneGap での開発についての書籍なので、まずはそれに倣う形となっていますが、後々は Titanium 等にも手を出して、紹介していければというところです。

というわけで、今回は Android SDK のインストール手順について紹介します。
なお、今回については、ほとんど IS01 に限らない話になるので、他の Android 端末でも同じ手順で問題無いと思います。

私の環境

Ubuntu 10.04 にて検証しております。
といっても、これより多少 (古い|新しい) バージョンでも基本的には問題無いと思います。

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.04
DISTRIB_CODENAME=lucid
DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS"

Android SDK のインストール手順

Android Developers サイトの Android SDK のページから、 Linux 用のパッケージをダウンロードし、展開します。

$ wget http://dl.google.com/android/android-sdk_r07-linux_x86.tgz
$ tar xvzf android-sdk_r07-linux_x86.tgz
# インストールディレクトリはとりあえず /opt とする。
$ sudo mv android-sdk-linux_x86/ /opt

パッケージを展開したら、 SDK のディレクトリにパスを通します。 ~/.bashrc 等を開いて、以下の行を追加します。

# Android SDK
export PATH=$PATH:/opt/android-sdk-linux_x86/tools

保存したら、以下のコマンドで ~/.bashrc を再読み込みし、反映させます。

$ source ~/.bashrc

これで、 android コマンド等が有効になったはずです。
ターミナルで $ android コマンドを実行すると、以下のような画面が立ち上がります。

Android SDK and AVD Manager

Android SDK and AVD Manager

Android Virtual Device の生成

次に、 Android Virtual Device を生成し、それをエミュレータで起動してみましょう。

SDK をインストールしただけでは、エミュレータで起動する仮想デバイス (Android Virtual Device) はどこにもない状態なので、インストールします。
先ほど起動した Android SDK and AVD Manager を利用します。

Available Packages

インストール可能なパッケージ

IS01 では OS のアップデートが断念されたので、 Android 1.6 より上のバージョンを入れてもしょうがないのですが、今後別の端末を購入する可能性もありますし、とりあえず全部入れちゃいましょう。
全てのパッケージを選択した状態で、 Install Selected ボタンを押します。

Choose Packages to Install

インストールするパッケージを選択する

再びインストールするパッケージについて聞かれるので、 Accept All にチェックを入れ、 Install ボタンを押します。
インストールには数分かかるので、しばし待ちましょう。

インストールが完了すると、以下のように Installded Packages というところにリストアップされます。

Installded Packages

インストールされたパッケージ

パッケージが全てインストールされたことを確認したら、 仮想デバイス (Android Virtual Device) を生成します。
Virtual Devices というメニューを選択し、 New ボタンを押します。
画面が現れたら、以下のように入力しましょう。

Create AVD

仮想デバイス (Android Virtual Device) の生成

Create AVD ボタンを押すと、生成が行われます。
完了したら、生成した AVD を選択し、 Start ボタンを押します。
すると、以下のようなエミュレータが立ち上がります。 (多少待たされます)

Emulator

エミュレータの起動画面

実際にブラウザ等のアプリを立ち上げて、実験することもできます。

ここまでで、 Android SDK のインストールはひとまず完了です。
次回は、 HTML, CSS, JavaScript で Android アプリを開発するための開発環境、 PhoneGap をインストールします。

,

Au IS01

Au IS01

巷で話題の 8 円祭りに乗っかる形で、 IS01 を入手しました。

8 円運用への手順については、既に多くのサイトで解説されているので、ここでは省きますが、私が行った某激安の殿堂のケータイコーナーでは、ショップ店員が「どうせ 8 円運用なんでしょ ?」と言わんばかりに導いてくれて、予想以上に簡単に入手できました。おまけに最後には「それでは SIM 抜いておきますね」という心尽くし。某・キホーテ++。

というわけで、購入から今日までの 3 日間で使ってみたアプリを一斉レビューしてみます。

なお、操作感については、 IS01 端末を前提としておりますので、同じことがその他の Android 端末にも当てはまるというわけではありません。
IS01 は他の端末と比べて特殊なインターフェイスを持っているので、大分違ってくる部分もあると思います。

ブラウザ/ネットサーフ

ブラウザ プリインストール ★★★☆☆
WebKit ベースの標準ブラウザ。標準としては最低限以上の機能はあるものの、いつの間にかウィンドウが増えまくるのは難点。また、何故か画面が常に右にに出しており、横スクロールが発生してしまっているのが残念。何とかならないんでしょうか …
Dolphin Browser Dolphin Browser ★★★☆☆
タブブラウザ。恐らく WebKit ベース。一見タブが邪魔だが、ダブルタップすれば隠れる。ジェスチャによる操作もでき、高機能だが、リンクを長押しすると強制終了するなど、今後の修正に期待したいところ。
はてなB Lite sak+ ★★★☆☆
はてなブックマーク用クライアント。ブラウザ等で「ページを共有」を選択したときに、このアプリを利用してブックマークすることもできる。これといってめぼしい機能はないものの、 PC でとりあえずブックマークしておいたページを、移動時等に読めるのは楽しい。

Twitter

TweetDeck TweetDeck Inc ★★★★☆
PC では定番の Twitter クライアント。 PC 版と同様、必要なカラム (TL, Mentions, または検索結果等) をたくさん増やせる。Foursquare, Facebook, GoogleBuzz にも対応。カラムの切り替えは左右にスライドするだけで簡単なので、使い勝手はいい。ただ、個別のツイートを選択すると、強制的に縦画面に切り替わるのが難点。今のところメインで使っている。
twicca Tetsuya Aoyama ★★★★☆
プラグインでいろいろ拡張できる Twitter クライアント。表示するタイムラインの切り替え操作については、 TweetDeck に劣るものの、機能的には充分。使いこなせるようになったらこっちに乗り換えるかも。

動画/音楽

ワンセグ プリインストール ★★★☆☆
今のところ au スマートフォンならでは。画面も広いので、 IS01 にとっては大きな特徴と言ってよさそう。録画もできる。
YouTube プリインストール ★★★☆☆
普通に観られる。検索結果が AutoPagerize されるのは良いが、コメント表示時に動画が止められるのはイケてない。目新しい機能は特に無いが、アップロード等も含めていろいろカバーされているので、基本的に困ることはあまり無さそう。
Raziko Tatsuo Nagamatsu ★★★★★
非公式の radiko プレイヤー。公式と違って、聴取地域を選択できるので、関東にいながら関西の番組が聞ける。バッファ再生やオフタイマーも設定できる。公式が強制縦画面なのに対し、こちらは横画面。 radiko を聴くのに Raziko を使わない理由が見当たらない
NicoRo α版 shisei ★★★☆☆
標準のブラウザが FlashPlayer 未対応なので、ニコニコ動画を観るときはこれを使う。コメントも表示される。保存済みキャッシュの選択をするためのインターフェイスが無かったり、バックグラウンドでキャッシュのダウンロードが進まなかったり、ビットレートの高い動画でカクカクしたり (ハードウェアの限界もある)、不満は多いが、貴重なアプリなので、ニコ厨にはおすすめ。
Last.fm Last.fm Ltd. ★★★★☆
再生履歴から曲をレコメンドして曲を聞かせてくれる Last.fm の Android 版。 PC 版と同様に聞ける。 アーティストの Biography や、アカウント情報、イベント情報も見られるなど、基本的な機能は網羅されている感がある。
Ustream View Ustream.tv, Inc. ★★★☆☆
割と普通に観られるものの、コードックの対応状況は今のところ限定的。 DOMMUNE が音だけになってしまうのが非常に残念。
Country Music RADIO BluMedialab.com B.V. ★★☆☆☆
カントリーやロカビリーといった曲が聞けるネットラジオアプリ。多数のチャンネルがある。再生中の曲名が表示されなかったり、強制縦画面だったり、不満は多いものの、垂れ流しておくだけなら問題無し。個人的には、好きなジャンルということで重宝。

電子書籍

Kindle for Android Amazon Mobile ★★★★★
個人的にはキラーアプリ ! アプリというよりは、プラットフォームが素晴らしい。 IS01 上で購入するのは操作的に辛いので、購入は PC で行い、移動時間等に IS01 で読むのが良さそう。画像のズームができないのが難点。
青空プロバイダ miduhima ★★★★☆
お馴染み青空文庫に登録されている書籍を、作者別・作品別に探すことができる。書籍を読むための機能は無いので、読むには別のアプリを使う。機能は最小限 + α 程度だが、本棚に書籍を保存することもでき、とても便利。
縦書きビューワ 2SC1815J ★★★☆☆
主に、上記の青空プロバイダと連携して使う。しおりで読んでいる箇所を保存したり、見出しをリスト表示することもできる。これがあれば版権の切れた日本文学がいくらでも読める
Bible LifeChurch.tv ★★★☆☆
文字通り聖書。旧約から新約まで読める。データはネットから読み込んでいる模様。登録が必要なので試してはいないけど、 Reading Plans というメニューがあり、期間を設定して読めるようなので、英語教材としても使えそう。

ニュース

NewsSeeds cafehobbit ★★★☆☆
英語の教材としてよく使われている、 VOA NewsVOA Special English 。ニュースを読みながら音声も聞けるので便利。ただし、広告に邪魔されてニュースが読みづらいのが難点。

地図/経路検索

マップ プリインストール ★★★☆☆
お馴染み Google マップ。アプリの問題ではないものの、位置情報がなかなか検出ないので、全然使えてません …
乗換案内 Jorudan CO.,Ltd. ★★★★☆
お馴染みジョルダンの乗り換え案内。乗り換え検索については Google マップよりも精度が高いので、初めての場所に行くとき等は重宝しそう。

システム

Advanced Task Killer ReChild ★★★★☆
Android ではお馴染みのタスクマネージャ。チェックボックスで選択して一気に kill できるので、標準のタスクマネージャより操作性良し。無視リストも設定できる。 Auto Kill については、個人的にはまだ使いこなせていないものの、タスクが残りがちな Android では重宝しそうです。

開発

Ruboto IRB Ruboto Community ★★★☆☆
Ruby の REPL (read-eval-print-loop) シェル irb が Android 上で動く。スクリプトファイルを読み込ませて、インタプリタとして使うこともできる。開発時のちょっとした確認以外での用途は特に思いつきません。 Android の VM 上で JRuby を動かそうという Ruboto Community による成果物。コミュニティへの期待度は ★★★★★ 。 Ruby で Android 開発したい。
ConnectBot Kenny Root and Jeffrey Sharkey ★★★☆☆
SSH クライアント。公開鍵の生成にも対応している。生成した公開鍵をメール等でサーバーに送り、それを authorized_keys に登録することで、公開鍵方式のサーバーにもログインできる。 top コマンドの監視や、サーバーの再起動程度なら難なくこなせるので、緊急時等にはお世話になるかも。まだ試してはいないものの、ポートフォワーディングにも対応しているようなので、オフィスへのリモート接続等にも使えそう。

Android OS のアップデート断念のニュースの影響で、残念な雰囲気も漂っていますが、投資額を考えれば充分過ぎるぐらい遊べます。

既に店頭から姿を消し初めていますが、気になる人は、店頭で見つけたら即ゲットでいいんじゃないでしょうか。

せっかくなので、これからは Android アプリの開発にも手を出してみたいとおもいます。

See also