Android-x86での各種設定、アプリケーションのインストール

ご注意: この記事は2年以上前に書いたもので、内容が古いです。記事の内容の一部は今でも役に立つと思いますが、最新のAndroid x86については、Android ICSをVirtualBoxで動かした記事「Android ICSをVirtualBoxで動かす」を書きました。(Jan 3, 2012)

1. Android-x86をインストールする際の注意

Android-x86を普通にインストールしたら、256 MBのSDカードがデフォルトで用意されるが、確か空きがほとんどなかったため、ブラウザでファイルをダウンロードする際、空きがなくダウンロードエラーになる。大容量のSDカードを持たせるため、パーティションを作成しておく。具体的には、VMware仮想マシンで36 GBのハードディスクを用意し、Android-x86本体インストール用に20 GBのプライマリパーティション/dev/sda1を、SDカード用に16 GBのプライマリパーティション/dev/sda2を用意する。両方共、ext3でフォーマットする。/dev/sda2の作成、フォーマットは、下記3で行う。なお、容量の大きさは、大きさが十分なら好きに設定してよい。また、VMwareで仮想ハードディスクをもう一つ作成してパーティションを作成してみたが、作成したパーティションはSDカードとしてマウント出来なかった。

2. ネットワーク設定

固定IPアドレスだと、ネットマスクを設定しても、再起動で設定が消えてしまうので、DHCPを選択しないといけない。ネットマスクの設定が消えてしまうのはバグか?

3. SDカードの設定

BIOSの設定を変更して、CDドライブから起動するように設定する。Ubuntuインストーラとかで、ライブモードで起動し、16 GBのプライマリパーティション/dev/sda2を作成し、ext3でフォーマットする。

$ sudo fdisk /dev/sda2

$ sudo mkfs.ext3 /dev/sda2

パーティション/dev/sda1を/mediaディレクトリにマウントし、menu.lstを編集する。

$ sudo mount /dev/sda1 /media

$ sudo vi /media/grub/menu.lst

Android-x86 ...のタイトルにあるkernel行の末尾に

SDCARD=/dev/sda2

を追加。VMware仮想マシンを終了させ、ハードディスクから起動するようにBIOSの設定を変更後、システムを起動する。Androidの「設定」 - 「SDカード & 端末容量」をクリックし、SDカードの合計容量が約16 GBになっていることを確認する。

4. AndAppStoreのインストール

まず、Androidの「設定」 - 「アプリケーション」 - 「 提供元不明のアプリ」にチェックを入れる。
Androidのブラウザで、http://www.android-x86.org/documents/apphowtoにあるリンク AndAppStoreにアクセスし、Downloadの下のリンクをクリックして、ファイルを保存。Androidの上部にあるバーをプルダウンして、ダウンロードしたファイルの通知をクリック。インストールするか問われるので、インストールボタンを押す。

5. 各種アプリケーションのインストール

AndAppStoreを起動し、虫眼鏡のアイコンをクリックし、上部のテキストエリアにキーワードを入れ、検索する。インストールしたいアプリケーションがあったら、クリックし、ダウンロードする。タイトルバーにReady to installの表示が出たら、上部のバーをプルダウンして、ダウンロードしたファイルの通知をクリック。インストールするか問われるので、インストールボタンを押す。

6. Google携帯HT-03Aのマーケット(market)のアプリケーションのインストール

ここでは、Google携帯HT-03Aのマーケット(market)のアプリケーションをx86 Android環境にインストールする方法を説明する。なお、有料アプリケーションをコピーしてx86 Androidにインストールすることができるかもしれないが、これは著作権法に触れると思うのでやめてほしい。また、無料アプリケーションのインストールも、可否の判断がグレーなので自己責任で行ってほしい。Google携帯HT-03Aでは、AppManagerというアプリケーションのバックアップソフトがある。これを使い、HT-03AでアプリケーションをSDカードにバックアップし、AndFTPというHT-03AのFtpクライアントソフトで手元のLinuxマシンにファイル転送する。転送したファイルのファイル名に日本語やスペースが含まれていると、以下のインストールがうまくいかないので、英数字を用いたファイル名にリネームする。拡張子はapkでないとダメだ。ファイルをHTTPサーバーで公開し、Android-x86環境でブラウザでダウンロードする。5と同様にAndroidの上部のバーをプルダウンして、ダウンロードしたファイルの通知をクリックして、インストールする。この方法で例えば2chブラウザのanちゃんをインストールしてみたが、一応正常動作する。JavaVM DalvikVM、おそるべし。

7. 困っていること

AndAppStoreで、音楽再生ソフトRock On Music Playerをインストールしたが、このソフトは音楽ファイルが/sdcard/RockOnディレクトリにないと音楽を再生できないようだ。AndAppStoreを使ってインストールしたFTPクライアントAndFTPで、Android環境にmp3ファイルをFTP転送したが、mp3ファイルは/sdcardディレクトリ直下には入るが、/sdcard/RockOnディレクトリに移動できない。これは、Androidが携帯電話用に開発されたため、悪意のあるソフトウエアが悪さをしないように、アプリケーションごとに固有のユーザIDを持たせていて、異なるアプリケーションの関連するディレクトリの間でファイルの移動ができないためだ。VMware仮想マシンをUbuntuインストーラのライブモードで起動し、/sdcardのパーティションをマウントして、mp3ファイルをRockOnディレクトリ直下にsudo mvで移動しようとしたが、コマンドは正常終了したように見えたが、実際にAndroidを起動すると、ファイルが/sdcard/RockOnディレクトリに保存されていなかった。多分、SDカードの好きなディレクトリにファイルを保存したいのなら、本物のSDカードかUSBメモリを用いて、WindowsないしLinuxでそれをマウントしてファイルを保存して、Andorid-x86環境に持って行ってマウントする必要があるだろう。

8. 参考URL

http://www.android-x86.org/documents/sdcardhowto

http://www.android-x86.org/documents/apphowto

9. 追記(Oct 15, 2009)

7で記したパーミッションの制限をFAT32フォーマットのパーティションをSDカードとして用いることで回避できないか実験してみた。パーティション/dev/sda2をFAT32(パーティションタイプb)で作成し、FAT32のファイルシステムを構築して、SDカードとしてマウントした。システム上はマウントされているように見えるが、Webブラウザ等でファイルをダウンロードしようとすると、空きがないと言われてダウンロードに失敗する。これは、FAT32のパーティションをSDカードに利用したとき、上記6の方法ではマーケットのアプリケーションをインストールすることができないことになる。また、8であげた参考URLの1によると、SDカードとして利用できるパーティションはfat32かext2、ext3ということになっている。従って、Android-x86では、ハードディスクパーティションをSDカードとして利用しようとすると、ext2かext3でフォーマットしないといけないかもしれなく、7で記したパーミッションの制限を回避することは困難なようだ。ただし、ここでの議論はVMware仮想マシンでのものなので、EeePCなどの実機のPCで本物のSDカードやUSBメモリを利用した場合、FAT32でフォーマットして使用して問題ないかもしれない。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-01-03 (火) 10:54:38 (2093d)