HSPからAndroidアプリを作るときに知っておくといい事。

HSPには、hsp3dishというマルチプラットホームに対応した機能があります。

これを使えば簡単にAndroidアプリを作ることが出来ます。

この記事は、あくまで付属のHSP3Dish android(NDK)版プログラミングガイドを読んだうえで見てください。

1.Androidアプリの環境で注意してほしいこと

最初のうちはプロジェクトが開けないまたはビルド(コンパイル)が上手くいかないで挫折するものです。

大体は、HSP3Dish helperのオプションのJava,SDK,NDK,antのパスが間違ってたり、ダウンロードしてきた物が違ったりしています。よく確認しましょう。

バージョンの確認もしてください!!

HSPでは大体において、最新版のJava,SDK,NDKは使えないことが多いですので容易にとんだ先の一番上にあるものをダウンロードしても動きません!必ず確認してください。

それでもダメだったら、下の画像のID番号が間違ってる場合があります。

http://www.onionsoft.net/hsp/v33/doclib/hsp3dish/s_and6.jpg

 

現在(HSP3.4)はサポートしているのは"android-17"(SDK4.2.2を指す)ですが、将来(HSP3.5β)では"android-19"(SDK4.4.2)がデフォルトになってます。

IDはダウンロードしたSDKのバージョンと合わせてください。

2.コンパイルできたのにすぐに落ちてしまう場合

大体の場合において画像や音声ファイルの結合ミスだと思います。

自分のプロジェクト\assetsの中にちゃんとコピーしているまたはdpmで指定しているか見てください。

3.一瞬だけ見えて落ちてしまう場合

この場合は、変数の型宣言で間違ってないかよく確認してください。

PC上では気づかないのですが整数型の変数に実数型の変数を代入するとエラーになります。十分注意してください。

4.真っ暗な場合

redrawしてますか?

5.waitの処理が効かない場合

waitじゃなくてawaitを使いましょう。

そうするとできます。

6.buttonが効かない場合

buttonもredrawではさむ必要がありさらにrepeat~loop等でプログラムを回しておく必要があります。

dishにおいてstop処理を描くことはほぼないと思います。

7.コンバータエラー(hsp3cnv.exe)がエラーを吐く場合

使えない命令がスクリプトに含まれてます。

いや、使えるとリファレンスに書いてあるのにエラーを吐かれる場合が多いです。

ループ処理はrepeat~loopに書き換えてください。for,foreach文が使えませんでした。

意外と多いかもしれないのでちょこちょこdebugしてコンパイルできない命令を探すしかないですね。

 

以上がざっと思い出せる自分がこれまで出会ったエラーです。

HSPでのAndroidアプリの開発は大きな夢と希望が詰まってると思います。

是非、挫折せずに一つでもいいから作って、それを公開して、まわりの人に自慢してください!または、HSPプログラミングコンテストに応募してください!

きっと、開発してよかったと思えるはずです!!

面白いアプリが誕生するのを楽しみにしてます。