野良アプリで光iフレームを活用?する

USB経由でのアプリインストールが可能になったので、いろんなソフトを光iフレームにインストールして、動作を試してみました。

Androidのバージョンが古いためにインストールできないもの、インストールはできたけど正常に動かないものもありますが、まあ6割か7割は動くような感触です。

最初、アンインストールの仕方が分からなくて困惑しました。
インストールのときは

adb install file_name

ですが、アンインストールのときは

adb uninstall package_name

なのですね。

パッケージ名はファイルの中に含まれるAndroidManifest.xmlに記載されているそうです。

アプリのファイル(apkファイル)は単なるzipアーカイブなので(このへんはJavaの流儀ですね)、unzipして読み出せないこともなさそうですが、Android SDKのコマンドを使うほうが簡単です。

aapt l -a file.apk |grep name=

これでパッケージ名を抽出できます。
こんな感じですね。

bash-3.2$ aapt l -a YouTube_signed.apk |grep name=
Package Group 0 id=127 packageCount=1 name=com.google.android.youtube
Package 0 id=127 name=com.google.android.youtube typeCount=11
bash-3.2$

“com.google.android.youtube” がパッケージ名です。
アンインストールは

adb uninstall com.google.android.youtube

という具合。

NTTの光回線に加入していれば、こんな苦労は不要なのでしょうが、私の環境では他に手段が無いので仕方ないですね。

実際にインストールしてみて、良さそうだと思ったものを挙げてみます。
動作したバージョンが分かるようにファイル名も書いておきます。

●やっぱりこれがないと…
K-9 Mail(K-9_Mail_3.801.apk) 電子メールクライアント
Dolphin Browser HD(Dolphin_Browser_HD_5.0.1.apk) Webブラウザ

●ネットのご利益を感じるには、これ
Google Maps(Google_Maps_4.7.0.apk) 地図ソフト
Tuboroidon(Tuboroidon_0.1.2.apk) 2ちゃんねるリーダー
TuneIn Player(tunein.player-1.apk) ネットラジオ
Twidroyd(Twidroyd.apk) ツイッター

●ユーティリティなど
Advanced Task Killer(Advanced_Task_Killer_1.9.6B76.apk) アプリを終了させるのに便利
ASTRO File Manager(ASTRO_File_Manager_2.5.2.apk) ファイル管理、いわゆるビジュアルシェル
Adobe Reader(Adobe_Reader_9.0.2.apk) 純正PDFリーダー

メールは、タッチパネルで入力する気にはなれませんが、読むだけなら十分使い物になります。
メール中のリンクをクリックするとブラウザに飛べますし、この連携のスピード「だけ」はiPhone/iPadより快適な気がします。

Google Mapsは、iPadほどではないものの、思ったより使い物になりそうでした。

また、Adobe Readerも日本語も表示できるし、そこそこ使えます。
電子ブックの代わりに、できなくはないかもしれないと思わないでもないですね(歯切れが悪い)。
ただ、Reader単体では使えないので、ASTRO File ManagerからSDカードのファイルを選んで、Adobe Readerを起動するようにします。

RAMが256MBしかないので、不要なアプリはこまめに終了させたほうが良さそうです。
Advanced Task Killerは通知領域に常駐してくれるので便利です。

光iフレームのルーツ探訪

光iフレームのCPU周りはどんなスペックなのだろう、と素朴な疑問が浮かび、調べてみました。

2ちゃんねる情報によると、光iフレーム(WDPF-701ME)は、韓国のMOIMSTONE社製だそうです。
ゼロから開発したわけではないでしょうから、姉妹機みたいなものがあるのではないかと思われます。

MOIMSTONE社のホームページに行ってみると、NTTのニュースリリースの紹介がありました。

NTT East To Provide Local Content To iFrame Tablet

MOIMSTONE社自身もAT730というAndroidタブレットを出していますが、Android2.2ベースなので光iフレームよりも1世代新しい感じです。

さらに調べていくと、その一つ前のモデル、AT725の資料がありました。

AT725

このAT725のスペックはAndroid 2.1ベースで、7インチLCD、2GB Flash、と光iフレームによく似ています。

また、この資料では、CPUについて

Processor : BCM11211+BCM11181

と記載されていました。
BCM11211はBroadcom社のCPU、BCM11181はCPUと組で使うメディアプロセッサのようです。

そこで、次はBCM11211について検索してみます。
すると、こんな記事が見つかりました。

[CES2011]「独自に拡張したAndroidで顧客製品を差異化する」,Broadcomがタブレット端末向けの新型アプリケーション・プロセサをデモ:ITpro

この記事で、

第1世代のアプリケーション・プロセサである「Persona」ファミリの「BCM11211」は,NTT東日本のAndroid搭載タブレット端末「光iフレーム」などが採用している。BCM11211は667MHz動作のCPUと300MHz動作のコプロセサからなるのに対し,BCM11311はそれぞれのコアが1GHzで動作するデュアル・コアを内蔵しているという。

と書かれています。

というわけで、光iフレームのCPUはBCM11211で確定ですね。
さらに調べていると、海外でこんな記事もありました。

Broadcom’s Persona Tablet becomes a product, in Japan | Ubergizmo

このリンク先の写真を見ると、もう光iフレームそっくりです。ビンゴ!という感じですね。

BCM11211の資料はあまり詳しいものが見つかりませんでしたが、Broadcom社自身のページはこちらです。

Broadcom.com – タブレット アプリケーション プロセッサ

CPUコアはデュアルコアのCortex A9ということです。クロックは、光iフレームでは667MHzのようです。

と、ここまで調べて、昨日、

adb bugreport

で取得したログがあったことを思い出して、中を見てみました。

これはバグを調べるためのかなり長いログファイルなのですが、

RAM: 24792 KB
CPU: bcm11xx
Linux Kenel: 2.6.29 (tomcat6@moimstone-server) (gcc version 4.3.2 (Wind River Linux Sourcery G++ 4.3-85) )

といった情報が見つかりました。

あと、このログを見てちょっと気になったのは、Linuxを起動している途中で

bcm11xx_wait_sesdone: no ack

というメッセージが20回あまり続いていたことですね。

どうも起動が遅いと思っていたのですが、もしかしてハードウェア故障?
あるいは、カーネルのコンフィグが間違っている?

Macで光iフレームをいじってみる

NTTの光iフレーム(WDPF-701ME)を買ったので、ちょっと遊んでみました。
この端末はAndroid 2.1ベースで、USBケーブル経由でAndroid SDKから操作できるのです。

実はAndroidはを触るのは初めてなのですが、この端末に関しては、ネット上で先人の労力の成果がけっこう豊富に得られます。

(-_-): WDPF-701ME

ただし、遊んでみるには、この端末の端子に合致する、ちょっと特殊なケーブルが必要です。
というわけでCOWON S9 USBケーブルをヨドバシカメラで買ってきました。980円…ちょっと高いですね。

これで、とりあえずは標準以外のアプリのインストールに挑戦です。
というのも、この端末はNTTの光回線経由でアプリを追加するらしいのですが、我家はADSLなので、そのサービスが利用できないのです…。

アプリの追加だけならば、ネット上の情報を見ていると、割と簡単そうです。

準備としては、Android SDKと上記のUSBケーブルがあればいいようです。
Windowsでの実例のほうが豊富なのですが、ここはやはりMacでやってみることにしました。

まずはこのへんを参考に、SDKの入手と設定。

よくわかってないBlog 移転 前 : Macbook airでadbを使えるようにしてみる (初マックです)

SDKは単にダウンロードして展開するだけ。サイズも30MB弱と比較的小規模です。

ただ、これはベースシステムで、アプリの追加を行うためのコマンドは、そのためのパッケージをベースシステムから追加インストールする必要があります。

といっても、作業としてはベースシステムを起動し、インストールしたいものを選択してボタンを押すだけで、特に困ることはありません。
設定作業も、ツール類のあるディレクトリにパスを通すだけです。
UNIXを知らない人には、ややハードルが高いかもしれませんが…。

インストールが完了し、光iフレームとMacをUSBケーブルで接続し、いざコマンドを起動!
…。

…無反応です。さすがに、そこまで簡単ではありませんでした。

Windowsだと、ドライバをインストールするステップがあるようなので、Macでもそれに相当するものがあるんだろうな…と思い、探してみるとそれらしきものを発見しました。

2009-11-09 – にゃんだふる日記

要は、いじりたい端末のUSBベンダIDを
~/.android/adb_usb.ini
に書いておけばいいようです。

では、光iフレームのUSBベンダIDは?

答えは、Windowsでこの端末を操作する場合の設定にありました。

先に挙げたリンク((-_-): WDPF-701ME)に、USBドライバの設定が書かれています。
;WDPF-701ME
%SingleAdbInterface% = USB_Install, USB\VID_18D1&PID_0002&MI_01
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_0002&REV_0230&MI_01
この、VIDがベンダIDですね。

というわけでadb_usb.iniに0x18D1を追記し、

adb kill-server
adb start-server
adb shell

を実行! これで無事、光iフレームにログインできました。

普通にシェルから端末の中のファイルシステムが見えているのですが、どういう仕組みになっているのか不思議です。
端末のファイルシステムをMac側にマウントしているのか、それとも端末上のシェルの入出力をMac側のツールに接続しているのか?
権限はrootではないので、コンソールメッセージとかも読めないのがちょっと残念です。

今回はとりあえずアプリケーションのインストールが目標なので、このあたりを参考に

光iフレームでYoutubeを見る方法(Youtubeをインストールする) | smartgoods.me

YouTubeをインストールして、光iフレームで動作ができることを確認して終了としました。

まあ、検索しようとしたらソフトキーボードがうまく表示されなかったりもして、きちんと動くというところまでは行きませんでしたが。