Qt for Android試してみた

/// 用意した環境 ///
・Ubuntu 10.4のVMイメージ
・Virtual Box 4.1.6


/// インストール ///
1.Necessitasをダウンロードする。
 ファイル名:「necessitas-0.3-online-sdk-installer-linux」

2.ターミナルで実行権限を与える。
 > chmod a+x necessitas-0.3-online-sdk-installer-linux

3.実行する。
 「openjdk-6-jdk」がないと入れるようにインストーラに言われます。
 「Synapticパッケージ・マネージャ」でインストールしてください。

4.ひたすら待つ。
 ダウンロードする量の多さなのか相手側の回線の遅さなのかめっちゃ時間かかります。
 数時間かかるかもしれません。
 耐えてください。

5.終わったらQt Creator起動


/// Hello Worldする ///
1.「Create Project」を選択
2.「Qt Quick Application」を選択
3.保存場所とプロジェクト名「HelloWorld」を入力
4.「Qt Quick Application Type」は「Built-in elements only」を選択
5.「Target Setup」は「Android」一択なのでチェック
6.「Finish」を選んでプロジェクト作成完了
7.そのまま実行するとエミュレータを作成するか聞かれるので
  適当な名前を入力してOKする
8.necessitasのベースアプリが起動しますが、「Ministro」というアプリを入れろと言われます。
  しかしエミュレータにマーケットがないので入れれません。
9.「Ministro Service」にて、Ministro2のapkをダウンロード
10.「Projects」→「Run Settings」→「Deploy configurations」にて「Install Ministro system wide qt shared libraries instraller」にチェックして9でダウンロードしたファイルを選択します。
  (この設定は1度で元に戻ります。)
11.初回起動でライブラリダウンロードすると言われるのでOKします。
12.暫し待つと起動してきます。

おまけ
 実機で動かす場合でもMinistro2は必要なのですが、Android Marketカラダウンロードできます。
 こちら「Ministro2

/// Android的な設定 ///
・パッケージ名やAPIバージョンは、「Projects」→「Run Settings」→「Package configurations」でできます。
・apkは、「/android/bin」にあります。


/// Qt Quickアプリでの注意 ///
別のファイルに切りわけたQMLファイルをimportする際にパスの指定方法に注意が必要です。
以下のように記述する必要があります。
 通常:「import "hogehoge"」
 Android:「import "hogehoge/"」
と最後にスラッシュが必要です。
また、同一ディレクトリにあるQMLを使用する場合もインポートをあえてする必要があって、
 「import "./"」
と記述します。


Qtって本当にすばらしいですね。
これで、Rewit for Qtが、Windows/Mac/Ubuntu/MeeGo(N9)/Android/Symbian^3で動作させれました。もちろんコードは共通です。