読者からの質問コーナー〜3読者からの質問がたまってきたので,今回はいくつかの質問にまとめてお答えしたい。具体的な症状が書かれておらず回答しづらいものもあったが,できる限り答えてみる。
Q: KToolBarが起動しませんどのようなエラーが出るといった情報がない質問だったので,答えづらいものがあるのだが,ここでは一般的に起こしやすいミスだけに絞っておく。 まず,もっとも基本的なミスとしてWindowsにJava環境(JDK)がインストールされていないというケースが考えられなくはない。JDKがないとKToolBarをインストールしても,動作しないし利用できない。 また,JDKのバージョンが古いというケースも考えられる。iアプリは「JDK1.3.x」として配布されているバージョンのJDKが必要なので,事前にjavasoftから最新のJDKをダウンロード,インストールしておこう。 JDKに問題がないのなら,たいていは動くはずだが,それでも動かないときは無効な環境変数CLASSPATHが設定されていないか調べてみるといいかもしれない。CLASSPATHの設定の仕方によっては,KToolBarが動作しない可能性が考えられるためだ。KToolBarは通常,特別なCLASSPATHなどを設定しなくても動作するようになっているので,Windowsに環境変数CLASSPATHの設定があったら削除してみてほしい。 Q: JBuilderで「i-JADE」を使用してWebサーバ上にあるMFiファイルを読み込みたいのですが,以下の記述だとエラーになります。MediaSound ms = MediaManager.getSound("http://xxxx/xxxxx/xxx.mld"); セキュリティ例外が出ているのだろうと思う。前に連載内でも説明しているように(連載第15回参照),iアプリは,iアプリ自身をダウンロードした先のサーバにあるファイルしか参照できない制限がある。i-JadeやNTTドコモ標準のエミュレーターも,そのような動作をするようになっている。 そのため,ローカルPCから起動した場合,ネットワークの先にあるファイルは「取得先が異なる」ためにセキュリティ例外が出てしまう。 NTTドコモのエミュレータは以前に紹介したように,見かけ上のダウンロード先が設定できる。また,質問にあるi-Jadeでは,デバッグ中のJarファイルとJamファイルをサーバ上に置き,次のようにURLを指定して起動すればサーバ上にあるファイルにアクセスできる。 java -jar i-jade-x.jar http://xxx/xxxxx/xxx.jam Q: Webサーバからテキストファイルをダウンロードするには,どうしたらいい?連載ではイメージデータをWebサーバからダウンロードする方法をしているが(連載第6回参照),方法は,それとほぼ同じ。文章で説明するよりはコードを示したほうがいいだろう。リスト1に掲載しておくので参考にしてほしい。 リスト1では,Byte配列にテキストファイルを読み取り,その配列から文字列Stringを生成している。読み取れるテキストファイルの長さは,あらかじめ確保したByte配列の長さまで(リストでは256)だ。 ダウンロードするファイルの大きさが決まっている場合,リストのように固定長のバッファを使ったほうがメモリやJava VMの負担が軽くなる。しかし,ダウンロードするファイルの大きさが不定の場合,リスト1のような方法は使えない。そのようなときは固定長のByte配列の変わりに,Javaに用意されている不定長の文字バッファクラスStringBufferを利用するといい。 ところで,同じ読者からiアプリのAPIを解説する参考書を紹介してほしいという要望をいただいた。APIの解説は,たいていのiアプリ参考書に出ているが,実際の動作を交えて解説している本としては「iアプリの作り方」(山崎由喜憲著/ソフトバンクパブリッシング)が分かりやすいのではないかと思う。 またiアプリを作る際にも,このリストに示した例のようにJava標準のクラスライブラリ(API)のお世話にならざるを得ないので,JDKのドキュメントをダウンロードして,いつでも使えるようにしておくと便利だ。JDKのドキュメントはjavasoftからHTML形式などでダウンロードできる(完全日本語版も用意されている)。 Q: 私のマシンでiアプリの開発はできますか?本当の質問は「Macintoshでiアプリの開発はできますか?」というものだったのだが,少し幅を広げるために変えさせていただいた。 まず本来の質問のほうだが,以前に質問コーナーで取り上げたときはMacOSで動くPreverifyコマンドがないために,開発ができない状態だった。筆者は熱心なmacintoshユーザーではないので,詳しくチェックしているわけではないが,MacOS 9.xや,それ以前のMacOSに関しては今でも状況は変わっていないようだ。 しかし,UNIXベースのMacOS Xではpreverifyコマンドが利用でき,iアプリの開発ができるという情報がある。詳しくは「The WEB of Java」を見てほしい。 Windows以外で,となるとほかにLinuxでiアプリが開発できないか気になる人も多いと思う。Linuxなら,iアプリの開発も不可能ではない。 iアプリを開発するにはJDKとエミュレーター,そしてCLDC(用語)に付属するPreverifyが最低でも必要になる。このうちJDKは公式ページからLinux用がダウロードできる。JDKさえあれば,少なくともi-JadeはLinux上で動作させられる(KToolBarも動くかもしれないが筆者は未確認)。問題はPreverifyだが,これもLinux用のJava2 MicroEdition CLDCに収録されているものが使える。「Micro Java Network」からダウンロードできるので試してほしい。 リスト1 テキストファイルをサーバからダウンロードするコード例 ----------------- [米田聡,ITmedia] 関連記事 連載バックナンバー Copyright © ITmedia, Inc. All Rights Reserved. モバイルショップ
最新スペック搭載ゲームパソコン
最新CPU搭載パソコンはドスパラで!!
FEED BACK |