Myst、Bento、VMware Fusion、Windows 7 RC、Ubuntu 9.04 日本語版、Android 1.5 SDK、YouTube キャプチャー動画公開

iTunesApp Store で公開されるアプリは iPhone OS 3.0 上で動作することが必須になったので、遅ればせながら iPhone SDK 3.0 beta 5 をインストールしました。問題なく動作しています。

iTunes 上のApp Store で、次の2つの iPhoneiPod touch 用アプリケーションを購入してみました。

Myst
カテゴリ/ゲーム
\700
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=311941991&mt=8
Bento
カテゴリ/仕事効率化
\600
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=314638461&mt=8

ずいぶん昔になりますが、Mystセガサターン(コンシューマ用ビデオゲーム機)で遊んだ記憶があります。エンディングを見たかは覚えていませんが、攻略本は確か購入したはずです。現在はなくしてしまいましたが!iPhoneiPod touch 版の Myst は 727 MB もあります。私の iPod touch は 32GB 版なので、容量的には問題はありません。日本語にはローカライズされていませんが、懐かしかったので購入してしまいました。本当によくできています。

私は試していませんが

How To Beat Myst on the iPhone in 5 Minutes | Mac|Life
http://www.maclife.com/article/howtos/how_beat_myst_5_minutes

で 5分でエンディングが見れるようです。

Bento はあまり使用していないので、判断しにくいですね。 Cover Flow のインターフェイスは面白いのですが、私が使った限り機能的には実用性に乏しいと思いました。

また Windows 7 RC 版が公開されました。

Windows 7 にようこそ
http://www.microsoft.com/japan/windows/windows-7/default.aspx

当たり前かもしれませんが、Mac OS X 上の Safari から Windows 7 RC版をダウンロードを試みましたが無理でした。VMware Fusion 上の Windows XP Professional から IE を使ってダウンロードしました。(Windows Live ID が必要でしたので MSN Hotmail アカウントを新規登録せず Gmail のメールアドレスを使って作成しました。)

VMware Fusion を使って Windows 7 RC 版 ‘仮想マシン‘ を作成するために

VMware: Team Fusion: Windows 7 on Mac with VMware Fusion: A Practical Guide Revisited
http://blogs.vmware.com/teamfusion/2009/05/windows-7-on-mac-with-vmware-fusion-a-practical-guide-revisited.html

上記ページを参考にしました。別に難しいところはありません。気をつけるところは

オペレーティング システム: Microsoft Windows
バージョン: Windows Vista (64版のときは Windows Vista x64 Edition)

と設定するぐらいです。何の問題もなくインストールできました。正常に動作しています。

VMware: Team Fusion: Windows 7 on Mac with VMware Fusion: A Practical Guide Revisited
http://blogs.vmware.com/teamfusion/2009/05/windows-7-on-mac-with-vmware-fusion-a-practical-guide-revisited.html
Stop Windows 7 From Suspending Itself Every 30 Minutes

は設定しておくべきです。実行画面を添付しておきます。

話は変わって

Ubuntu Desktop 日本語 Remix CDのダウンロード | Ubuntu Japanese Team
http://www.ubuntulinux.jp/products/JA-Localized/download

Ubuntu 9.04 日本語版が公開されたので ‘BitTorrent プロトコル対応のファイル共有ソフト’ Transmission を使ってダウンロードしました。また Android 1.5 SDK, Release 1も発表されていたので

Android 1.5 SDK, Release 1 | Android Developers
http://developer.android.com/sdk/1.5_r1/index.html

Ubuntu 9.04 日本語版に

Installing the Android SDK | Android Developers
http://developer.android.com/sdk/1.5_r1/installing.html

Android 1.5 SDK, Release 1 をインストールしてみました。AVD について詳しく述べられていないので

Developing In Eclipse, with ADT | Android Developers
http://developer.android.com/guide/developing/eclipse-adt.html
Running Your Application
Android Virtual Devices | Android Developers
http://developer.android.com/guide/developing/tools/avd.html

を参考に作成しました。

簡単に言えば、アプリケーション ‘端末’ 上で

android create avd -n my_android1.5 -t 2
android create avd -n my_android1.1 -t 1

を実行しただけです。

また、Hello, Android: Introducing Google‘s Mobile Development Platform

のサンプルをビルドする方法を記載しておきます。Hello, Android 本は

日本語訳も発売されているようです。

Upgrading the SDK | Android Developers
http://developer.android.com/sdk/1.5_r1/upgrading.html#UpdateYourProjects
Update Your Projects

上記資料が参考になります。

まず最初に、Eclipse のメニュー ‘File/Import…’ を選び

‘General’ タブの ‘Existing Projects into Workspace’ を選択し、Next ボタンを押します。

ウインドウが開いたら ‘Select root directory’ の ‘Browse…’ ボタンを押し、読み込みたいプロジェクトのフォルダを指定します。(ここではサンプル OpenGL で説明します。)

‘Copy projects into workspace’ にチェックを入れ、’Finish’ ボタンを押します。これでプロジェクトが読み込まれます。このままではエラーが出て Run できません。そこで次の設定を行ってください。

エラー:
Android requires .class compatibilitiy set to 5.0. Please fix project properties.

というエラーが出るので、プロジェクト名 OpenGL を右クリック、メニュー ‘Properties/Java Compiler’ を選び、

‘Enable project specific settings’ にチェックを入れます。(これで正しいのか自信はありません) ‘Apply’ ボタンを押し適用した後、

エラー:
Project has no target set. Edit the project properties to set one.

のエラーを取り除くため、’Android‘ を選択し (プロジェクト名 OpenGL を右クリック、メニュー ‘Properties/Android‘)、’Project Build target’ の ‘Target Name’ を選択します。通常 ‘Android 1.5′ にチェックを入れます。’Apply’ ボタンを押して適用し、OK ボタンを押します。

エラー:
The type R is already defined             R.java

上のエラーは ファイル R.java が重複して存在するためです。Project Explorer 上の OpenGL で ファイル ‘gen/org.example.opengl/R.java‘ を確認した後、ファイル src/org.example.opengl/R.java を右クリックして Delete を選び、削除してください。

警告:
WARNING: Application does not specify an API level requirement !

と警告が出るので ‘AndroidManifest.xml‘ に設定を追加する必要があります。

Android 1.5 Version Notes | Android Developers
http://developer.android.com/sdk/android-1.5.html

を参考に Project Exploer 上で ファイル ‘AndroidManifest.xml‘ をダブルクリックし、表示されたソースの右下部分 ‘AndroidManifest.xml‘ タブをマウスで選択し ‘Sdk version’ を次のように指定します。


...

...

Eclipse のメニュー ‘File/Save’ を選択し、ファイル ‘AndroidManifest.xml‘ を保存してください。後は、プロジェクト名 OpenGL を右クリック、メニュー ‘Run As/Android Application’ を選択すれば動作を確認できます。

Linux デスクトップ上の操作を録画できる動画キャプチャーソフト ‘XVidCap Screen Capture’ 、Mac の動画変換ソフト ‘携帯動画変換ちゃん’、’iMovie‘ を使ってデスクトップを録画、編集し、YouTube に投稿してみました。添付しておきます。

Hello, Android: Introducing Google's Mobile Development Platform

前回 [ [id:KYoshiaki:20090329] ] 書いたように、あいかわらず iPhone SDK 3.0 は、インストールしていません。しかし、資料はコツコツ読んでいます。NDAのため詳細について残念ながら触れることはできませんが!

ところで、前回 [ [id:KYoshiaki:20090329] ] Mac OS X 上の VMware FusionUbuntu ja-8.10 仮想マシンを使い、Android SDK を試した実行画面を載せましたが

Android 1.5 Early Look SDK | Android Developers
http://developer.android.com/sdk/preview/

が公開されていたので、試してみました。上の説明通り実行すれば、何の問題もなく動作します。注意するところといえば、Android エミュレーターを実行するには Android Virtual Device (AVD) を作成する必要があることぐらいです。上記に書かれている通り、コマンドラインを実行し、eclipse の設定をするだけです。

本格的に取り組むつもりはないと書きましたが、試しに

を購入してみました。

この書籍で知ったのですが、Android エミュレータの画面を実行中に横向きに変更するには CTRL + F11 キーを押せばよいようです。ただし、私の iMac では ‘F11’ キーは音量の調整に利用されています。そこで ‘/アプリケーション/システム環境設定.app’ の

キーボードとマウス/キーボード
'F1、F2 などのすべてのキーを標準のファンクションキーとして使用'

にチェックを入れる必要がありました。

一通り読み終えました。一番の利点はプログラミングを通して Android の仕組みや端末の作法を学べることです。実際、iPhone の場合、テーブルの行の並び替えや削除の方法はプログラミングを通して学びました。

上の書籍のサンプル ‘数独‘ を作りながら Android 端末の ‘Menu’ キーや ‘Back’ キーをどういうところで利用するのか理解できました。

インターフェイス、リソースの作成には XML 形式のファイルを利用します。ほとんど経験がありませんが、どちらかというと Windows Vista 上の XAML プログラミング (WPFアプリケーション) に似ていると思います。

iPhoneフレームワークなどは多少違いますが、構造としては Mac 上のデスクトップアプリケーションとそんなに変わりがないと思います。

Android は、プロセスとアプリケーションが同一ではありません。(まだ、深く理解していないので間違っているかもしれません。) アプリケーションを起動すると前面にアプリケーションの画面 (activity) が作成されます。アプリケーションは複数の画面 (activity) を持つことができます。 ユーザーが他のアプリケーションを呼ぶ度に画面 (activity) が作成され system’s activity manager が application stack に追加し、管理します。また、’Back’ ボタンを押すことで前の Activity に戻ることができます。また必要なくなった Activity は system’s activity manager が削除します。

Activity、Intent、Service、Content Provider など説明だけだと理解しにくいと思いますが、

で実際サンプル ‘数独‘ を作成してみると理解しやすいと思います。

また、iPhone シミュレーターは初期の頃 OpenGL には対応していませんでした。Android エミュレータの場合は問題ないようです。

試しに

のサンプル OpenGLMac OS X 上の VMware FusionUbuntu ja-8.10 仮想マシンを使い、実行した画面をで付けておきます。(VMware Fusion の’仮想マシンのハードウェア設定’/ディスプレイ/3Dグラフィックの高速化にチェックは必要ないようです。)

メモリ増設

3月17日に iPhone OS 3.0 が発表されましたね!私自身、iPhone SDK 2.2.1 環境が必要なので、iPhone OS 3.0 beta はダウンロードしましたが 、インストールはしていません。

iPhone Dev Center - Apple Developer Connection
http://developer.apple.com/iphone/index.action

また

TOEIC テスト 英単語・熟語 マスタリー 2000
カテゴリ/教育
\900
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=305620660&mt=8
神の雫 第1巻
カテゴリ/電子書籍
\450
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=301761549&mt=8

を購入してみました。

神の雫‘ はいろいろなところで紹介されていましたし、ドラマ化されるぐらい有名です。私自身、ワインについての知識はありませんが、十分楽しめました。携帯向けに作り直しているのではなく、コミックの画像をそのまま表示してるだけですが、コミック1巻丸ごと入っているので、リーズナブルです。拡大したまま次のページに移動できないのは残念ですが、iPod touch を横向きにして読みました。ぜひ続きを読みたいですね。

話は変わりますが、VMWare Fusion で Windows XP Professional を起動したまま Mac OS X 上の Safari で 20個ぐらいタブを開くと突然反応が鈍くなります。私の使用している機種は iMac 24インチ 2.4GHz Intel Core 2 Duo でメモリは 2GB です。

/アプリケーション/ユーティリティ/アクティビティモニタ.app を起動して、メニュー ‘ウインドウ/アクティビティモニタ‘を開き、ウインドウ下にある ‘システムメモリ’ タブを選択するとメモリの使用状況が確認できます。下図は VMware Fusion を起動していない普段の状態です。

アクティビティモニタ.app のヘルプと

Memory Usage Performance Guidelines: Introduction to Memory Usage Performance Guidelines
http://developer.apple.com/documentation/Performance/Conceptual/ManagingMemory/ManagingMemory.html#//apple_ref/doc/uid/10000160

で用語を確認すると上図の VMWare Fusion を起動していない状況でも、ページアウト(物理メモリからディスクにデータを移動) が 214.90MB 発生しています。スワップ使用領域(ディスク上に確保された仮想メモリの使用領域)も 391.33 MB あります。メインメモリが 2GB あれば十分だと思っていたのですが、足りないようです。それでメモリを増設することにしました。

アップル - サポート
http://www.apple.com/jp/support/
iMac の識別方法
http://support.apple.com/kb/HT1463?viewlocale=ja_JP

iMac を識別しようと思ったのですが、表で示された ‘箱のマーケティング番号’ に ‘Z0E40026H’ がないので ‘EMC 番号’ で判断しました。結果は

EMC 番号: 2134
iMac (24-inch Mid 2007) MA878XX/A XX=JP

です。

iMac に付属した取扱説明書 (Everything Mac、Mac のすべて) に書いてあるように iMac には 2基のメモリスロットがあり、最大 4GB まで増設できます。

Memory Usage Performance Guidelines: Introduction to Memory Usage Performance Guidelines
http://developer.apple.com/documentation/Performance/Conceptual/ManagingMemory/ManagingMemory.html#//apple_ref/doc/uid/10000160

Mac OS X の性能としては、上の資料より 32-bit プロセスで 4 ギガバイト、64-bit プロセスでおおよそ 18 エクサバイトのようです。
一通り読んでみたのですが、MallocDebug はガベージコレクションを使ったものには対応していないようですし、ObjectAlloc は Instruments に含まれているようです。

私の場合には 各々のスロットに 1GB のメモリが差し込まれていました。それで 2GB のメモリを2枚買うことにしました。

Apple Store で確認すると 2.0 GB で 10,080 円します。

秋葉館オンラインショップ | Mac本体、Mac専用メモリ/HDD/パーツ、オリジナル外付けハードディスク、その他周辺機器を扱うMac専門ショップ。
http://www.akibakan.com/

秋葉館では 2GB が2枚で 5580 円で買えます。(選択によってはまだ安くなります。)

DDR2 SDRAM PC2-5300 2GB(2048MB) SO-DIMM SAMSUNG純正 [200-2048MS5300 AS]
単品 \ 2,790 x 2個 = \ 5,580

早速注文しました。

iMac に付属した取扱説明書 (Everything Mac、Mac のすべて) を参考にメモリを取り付けました。スロットにメモリモジュールを強く押し込む必要がありました。

ちゃんとメモリが 4GB と認識しました。VMWare Fusion で Windows XP Professional を起動し、/アプリケーション/ユーティリティ/アクティビティモニタ.app で確認すると

ようになりました。ページアウト、スワップ使用領域のどちらも 0 MB で、同時に Safari を実行しても動作が鈍くなることもありません。

Windows XP Professional で一度は試したかった X68000エミュレータ を遅ればせながらインストールしてみました。エミュレータには XM6、WinX68k高速版などがありますが、今回は XM6 を使用することにしました。フォントデータは WinX68k高速版で作成し、ROMやソフトウェアなどは

X68000 LIBRARY
http://retropc.net/x68000/

からダウンロードしました。最初は軽く触れるつもりでいたのですが、mint、MicroEmacs などをインストールすると熱中してしまい、GCC環境まで作ってしまいました。随分昔になるので記憶は曖昧ですが、私の実機での環境では SX-WINDOW 上の make はメモリ不足でできなかったと思います。エミュレータ環境なのでメモリも最大にしました。SX-WINDOW 上で make が余裕でできるのは感慨深いものがあります。

エミュレータのハードディスク上へのファイル移動は、シャープが公開しているディスクイメージの中身を空にして

DiskExplorer
http://hp.vector.co.jp/authors/VA013937/editdisk/index.html

でファイルをディスクイメージ上にコピーし XM6 で読み込みました。

最初に LZHアーカイブ高速展開プログラム lx.r の圧縮ファイルを Windows 上で展開し、 実行ファイル lx.r を DiskExplorer でディスクイメージにコピーし XM6 上に移動させれば、ディスイメージに LZH ファイルをコピーして、XM6 上の X68000 で展開させることができます。WinX68k高速版 にはもっと便利な機能があるようですが!

SX-WINDOW でマウスを利用するには Mac OS X で割り当てられているファンクションキー機能を無効にする必要があるので、システム環境設定の ‘キ−ボートとマウス’ の ‘キーボート’タブを選び、’F1、F2 などのすべてのキーを標準のファンクションキーとして使用’ にチェックを入れました。当たり前ですが X68000 上での make の時間が速くなるわけではないんですね!



話は脱線しましたが、本当の目的は Ubuntu 上での Android です。ちょっと試してみたかっただけで、本格的に取り組むつもりはないのですが!