iモード携帯電話用Java(iアプリ) Part20
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/09/21(月) 20:36:33Doja、Starいずれも扱います。質問時には明記してください。
次スレは>>980が宣言して立ててください。
※DoCoMo以外は下記スレへ。
CLDC+MIDP+携帯電話用Javaスレッド part 8
ttp://pc11.2ch.net/test/read.cgi/tech/1206017034/
■ iアプリ特有ではなくJava一般に関する質問はこちらへ
【初心者】Java質問・相談スレッド116【歓迎】
ttp://pc11.2ch.net/test/read.cgi/tech/1213347130/
■関連スレ
【日本携帯】Mascot Capsule/Micro3D【標準】
ttp://pc11.2ch.net/test/read.cgi/tech/1117773530/
0175デフォルトの名無しさん
2009/11/06(金) 02:52:310176デフォルトの名無しさん
2009/11/06(金) 10:06:180177デフォルトの名無しさん
2009/11/06(金) 13:12:22"application/x-www.form-urlendoded" ってコピペのミス?
これが原因なのかどうかは知らないけど。
0178デフォルトの名無しさん
2009/11/06(金) 13:22:360179デフォルトの名無しさん
2009/11/08(日) 12:26:04アプリゲットでutn送信するページが見られません。
どうにかして見る方法ないでしょうか。
0180デフォルトの名無しさん
2009/11/09(月) 15:57:25Javaの初心者向けの本を買う
↓
一通り読み終わってiアプリ開発の本を二冊買う
↓
基本事項はある程度読み終えたが応用になると訳がわからんなる←今ここ
無理にでもサンプルコードを調べながら読もうと思ってるんだが 次にすることが分からん
なにしたらいいかおすすめがあれば伝授頼む
0181デフォルトの名無しさん
2009/11/09(月) 15:58:200182デフォルトの名無しさん
2009/11/09(月) 17:34:18スクロールアクション的なものなんだが
0183デフォルトの名無しさん
2009/11/09(月) 18:40:41探し、その原理を読み解く方向が良い。
目指すゲームが今までに類を見ない新しいゲームなら、何でも良いのでスクロールする
サンプル、もしくはアクションゲームのサンプルを探す。
上記はクリアしていてプログラムの構造は解るには解るが、いざ自分で
新規に作るやり方が解らないというなら、上記で見つけたサンプルを
改造して自分の作りたい物に作り変える。
とりあえず改造し尽くしたがどうも動作が遅いようなら、その時初めて
1から自分で作る。
0184デフォルトの名無しさん
2009/11/09(月) 22:34:05自分で手動かして、まずキャラが動くようにして、順序立てて拡張しないと
0185デフォルトの名無しさん
2009/11/09(月) 23:00:38これって言語に関係なく初心者が体験する問題だな。
言語の仕様はある程度理解した、けど自分の実現したいものをどうやって作るか、
アルゴリズムの組み立て方が分からない。
こういう状態でサンプルコードとかを見ても、アルゴリズムの意図が理解できないから、
訳分からん → プログラミングを挫折 ってなっちゃう。
結局は自分でひとつずつ理解していくしかない。
近道をするなら、ゲーム用のアルゴリズムの考え方、実装の仕方を丁寧に解説している本を探すしかないね。
まぁ、一番手っ取り早いのは人から教えてもらうことだけど。
とりあえずの餞別に
http://www.okisoft.co.jp/esc/i-appli.html
0186デフォルトの名無しさん
2009/11/10(火) 00:25:57>>183-185 サンクス とりあえず本を参考にdojaに始めから入ってるサンプルコードを読んでみたが???状態だ・・・
185のURLを参考にがんばってみる
dojaの詳しい解説はネットにほとんどないから困る
0187デフォルトの名無しさん
2009/11/10(火) 01:20:59Javaゲームプログラミングって本のサンプルコードを
意味もわからない状態から気合でDojaに移植して、ついでに改造してたら
オブジェクト指向とかゲームのアルゴリズムとか理解度がかなり上がった気がする
0188デフォルトの名無しさん
2009/11/10(火) 02:04:50「iアプリでのアクションゲームの作り方」を探しているのなら諦めれ
アクションゲームの動作原理は、iアプリでもPCでも据え置きゲーム機でもほぼ一緒
Javaと、アクションゲームのアルゴリズムが理解していれば、あとはiアプリの作法を調べれば書ける
だからiアプリに限定した詳しい解説はほとんどない
応用ができないのは、アルゴリズムに関する知識が不足しているから
これを得るには実際に作るという経験が一番
次にすることは、自分の頭で考えてあれこれ試行錯誤すること
本とかソースを*読む*のはもういいから、とにかく*書く*
アクションゲームを実現するのに必要な処理は何だろう?
キャラクタが左右に動かないといけない
背景がスクロールしないといけない
敵が動かないといけない
敵が攻撃してこないといけない
壁や敵との当たり判定をつけないといけない…
いきなりアクションゲームを、ましてや初心者が作ろうとしても無理
段階的に作っていくのはソフトウェア開発の基本
そのうち行き詰って疑問がわいてくるから、ネットや本で調べる
Javaに関する疑問はググれば間違いなく出てくる
iアプリに関する疑問はAPIリファレンスや開発ガイドを調べれば大体解決する
アルゴリズムの関する疑問はググっても分からない時がある
そうなったら聞きにおいで
ただしiアプリに関係ない質問はJavaスレで
とにかく何でもいいからキーボード打ちなさい
http://www.nttdocomo.co.jp/service/imode/make/content/iappli/technical_data/doja/index.html#p05
http://javagame.skr.jp/
http://wiki.game-develop.com/index.php?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2F%BD%E9%BF%B4
%BC%D4%B8%FE%A4%B1%2F%A5%C1%A5%E5%A1%BC%A5%C8%A5%EA%A5%A2%A5%EB%2F%C3%CA%B3%AC%C5%AA%B3%D8%BD%AC
0189デフォルトの名無しさん
2009/11/10(火) 04:24:030190デフォルトの名無しさん
2009/11/10(火) 11:57:05JAVAのサンプルコードをdojaに移植って自力でやるしかないのか?両者の違いを解説してるサイトあるのかな?プログラミング自体初体験だから違いが分からん
>>188
なるほど!アルゴリズムはどの言語でもあまり変わらない気がするから、JAVAのアルゴリズムを勉強してみます
とりあえずすることが見つかったんで皆ありがとう
0191187
2009/11/10(火) 19:03:501.eclipseのdojaプロジェクトに普通のJavaソースを突っ込む
2.エラーが出たところをCLDCとかDojaのAPIリファレンス見ながら
ひたすら修正、APIになければ自前で実装
って感じだったと思う。結構昔のことだから自信が無いけど
0192デフォルトの名無しさん
2009/11/10(火) 19:04:320193デフォルトの名無しさん
2009/11/10(火) 19:34:310194デフォルトの名無しさん
2009/11/10(火) 21:46:400195デフォルトの名無しさん
2009/11/11(水) 16:33:05で、MIDPマダー?
0196デフォルトの名無しさん
2009/11/12(木) 23:36:10Dojaのはそのまま使ったら文字化けするし
CLDC1.1 + MIDP2.0の非公式日本語ドキュメントはZIPで配布されてないし・・
どうすりゃいいの?
0197デフォルトの名無しさん
2009/11/14(土) 22:02:09だからデバッグもできない、printfだけが頼り
Eclipseをソースエディター&エラー確認としてだけ使ってる
0198デフォルトの名無しさん
2009/11/14(土) 22:26:06???
iアプリ開発キットをインストールするとき、Eclipseプラグインをインストールするように指定しておけば
何の問題も無く使えるはずだが。3.0/3.1とか書いてあるけど最新版でもちゃんと使える。
0199デフォルトの名無しさん
2009/11/15(日) 00:35:290200デフォルトの名無しさん
2009/11/15(日) 00:49:47エミュレーターのウィンドウが開いたらすぐ閉じると思ったら
コンパイラー準拠レベルが1.6になっていた、ということはある。
0201デフォルトの名無しさん
2009/11/15(日) 09:20:311.5にしたけどだめだった、すぐ閉じてしまう。Eclipseは3.4.2
MIDPのプラグインはデバッグもできるから、
Dojaのプラグインがおかしいと思うんだけど。
0202BookerTee ◆mLDG2detrc
2009/11/15(日) 12:35:45ちなみにJavaは先週初めてコーディングした。もちろん Hello,world だ。
あとは、ためしにランダムってどうやって出てくるのかがわかったぐらい。
iアプリもさっき、大格闘の末、「import com.nttdocomo.ui.*;」っていうのが必要なのが
わかってやっと Hello, world. が出せた。
参考書がないとつらいな。
そんなオイラが難しくなさそうで、作れそうなゲームっていったら昔風のパズルゲームだろう。
と、思い立ちフルーツフィールドっていうパズルゲームを移植してみたいと思う。
暇つぶし系で自分でクリアできていないゲームで携帯にするとよさそうなのって
こういうゲームじゃないか?
作っている過程を逐次アップしてみるので、勉強して見ようや。
0203BookerTee ◆mLDG2detrc
2009/11/15(日) 12:39:54ググっても著作者のページは見つからないけど、ハンドヘルドPCへの移植は見つかった。
なんか、Java版もあった。
http://www2.plala.or.jp/sone/fruitsfields/fruitsfields.html
これを作ってみようと思う。
オイラの使っているのはN904iとN705i。これで動くのでDoja-5.0で作る。
そんな機能は必要ないと思うけど。
0204デフォルトの名無しさん
2009/11/15(日) 12:55:11パズルはこんなにある。練習ならいいが、
パズルを作る技術を磨いてもあまり報われることはない。
それよりツール系でまだ少ないジャンルが狙い目。業務系PGならそのノウハウも生かせる。
0205デフォルトの名無しさん
2009/11/15(日) 13:19:53240x240で完結するなら簡単にできるだろうけど
0206BookerTee ◆mLDG2detrc
2009/11/15(日) 13:25:15うちの近所のブックオフには参考になりそうな本がなく、普通の本屋で唯一使えそうな本かと思って買ってきた。
Javaのコーディングの本かってもよかったが、まぁ、なくても何とかなるだろ。
どっちかというと資料の少なそうな携帯アプリの本で。
と、思ったんだけど、amazonでの評価はひどいね。
バグだらけで、Dojaほとんど載ってないって。
たしかに後半はDojaのことは置いといてっていう雰囲気。
>>204
ま、練習っす。iアプリって作ったことないし、Javaも初めてだし。
仕事には今のところする気もないただの興味だから。
0207BookerTee ◆mLDG2detrc
2009/11/15(日) 13:31:32業者提供のツールは使いにくくって。
0208デフォルトの名無しさん
2009/11/15(日) 17:21:27iアプリは1.4だぞ
>>200
まじでどーしても起動しないことがよくあるんだよ。
俺がなったときはOSから入れ直してやっと起動した。
0209BookerTee ◆mLDG2detrc
2009/11/15(日) 23:45:26ということで、ステージのデータを確認してみようと思ったが・・・。
なかなか見つからなかった。これは何とか見つけて、中身を解析。
ステージのサイズが横18x12で外側はすべて壁。
実ステージデータとしては壁の内側の16x10の範囲だけで、データは1バイトで2コマ分、
0:スペース、1:壁、2:下矢印、3:左矢印、4:右矢印、5:上矢印、6:フルーツ、7:自分?だと思う。
ここまでの解析(というか、データ探し)だけで4時間もかかっちゃったよ。
0210BookerTee ◆mLDG2detrc
2009/11/15(日) 23:47:08ドット絵を描くのはつらい。
参考書によるとImageMapという機能を使えばRPGのフィールドっぽいのは簡単にできそう。
キャラクタを1枚絵で用意して、それに配列でデータ渡してあげると絵が表示されるって話なので
これを使えばいいのかなということでとりあえず描く。
これまた3時間ぐらいかけた。
0211BookerTee ◆mLDG2detrc
2009/11/15(日) 23:54:51イメージの表示と、ImageMapを使ってみた。
ImageMapのためのイメージが配列なのに最初気づかずエラーよくわかってなかった。
http://www.geocities.jp/can_you_digit_sukka/iApp/091115/FruitsFields091115.zip
肝心のコーディングはこれだけ。
0212デフォルトの名無しさん
2009/11/16(月) 11:59:23情報が埋もれるだけだからマジ勘弁して
0213デフォルトの名無しさん
2009/11/16(月) 12:07:140214デフォルトの名無しさん
2009/11/16(月) 12:47:54・コンパイラ準拠レベルが1.4になっているか
・j2sdkのbinディレクトリにPATHを通してあるか
ほとんどの場合これで動くようになってる。
0215デフォルトの名無しさん
2009/11/16(月) 13:38:430216BookerTee ◆mLDG2detrc
2009/11/16(月) 18:35:490217デフォルトの名無しさん
2009/11/16(月) 22:50:21どんどん書き込め
0218デフォルトの名無しさん
2009/11/17(火) 09:20:51ttp://www.greenspace.info/twitter/
0219デフォルトの名無しさん
2009/11/17(火) 09:41:22情報が埋もれるだけだからマジ勘弁して
0220デフォルトの名無しさん
2009/11/17(火) 10:28:300221デフォルトの名無しさん
2009/11/19(木) 18:36:52com.nttdocomo.ui.Graphicsのやつ
jad使っても出てこない。
何か方法無いか?
0222デフォルトの名無しさん
2009/11/19(木) 19:47:15I think so.
0223デフォルトの名無しさん
2009/11/19(木) 22:38:120224デフォルトの名無しさん
2009/11/20(金) 23:43:050225デフォルトの名無しさん
2009/11/21(土) 11:38:32あと、903iでもPだけ縦240だけど、もう切り捨てるべきじゃない?
携帯アプリがしょぼいと言われるのは240x240だからだろ
みんなで240x320で作っちまおうぜ
0226デフォルトの名無しさん
2009/11/21(土) 12:21:06アプゲに「ユーザ利用ブラウザ傾向」がありました。
アプリを求めてくるユーザ層だからそこそこ参考になるかと。
Starも含めると8割はメガアプリ対応機種みたいです。
さて,質問。
WinXPでデバッグ・開発してるとcurrentTimeMillisやsleepの精度が悪くて(15,6ms?)
ほどよくストレスが溜まってきますが,貴兄らはどうやって対処していますか?
0227デフォルトの名無しさん
2009/11/21(土) 13:21:50うざいw
0228デフォルトの名無しさん
2009/11/21(土) 17:16:17裏でJaneやWindows Media Playerを起動しておく
0229デフォルトの名無しさん
2009/11/21(土) 19:04:270230226
2009/11/21(土) 19:48:05失礼しました。既にそれらは起動してますが,それでも15,6msになります。
環境はJDK1.6,Doja5.1です。
1.6がまずいのかな〜
0231デフォルトの名無しさん
2009/11/23(月) 00:12:02A B C
と配置しているのですが、
Bがフォーカスを持っているときに右を押したらフォーカスがCへ
Bがフォーカスを持っているときに左を押したらフォーカスがAへ
と直感的になってほしいのですが、どうすればいいでしょうか?
Webをしらべてると、FocusManagerで行うらしいのですが、使い方がわかりません。
0232デフォルトの名無しさん
2009/11/23(月) 02:58:20フォーカス順にボタンをadd()するか。
自作のFocusManagerは無意味(setできない)。
0233デフォルトの名無しさん
2009/11/25(水) 20:58:29N06AでAccelerationSensorクラスのgetAccelerationSensor() を実行すると
UnsupportedOperationExceptionを返してきて対応していないようです
しかし、体感アプリのようなビールを注ぐアプリケーション等を実行して見ると動作します
一体原因はなんなのでしょうか?
対応状況を見ると体感アプリは○となっており、対応APIのバージョンはStar1.1となっています。
0234デフォルトの名無しさん
2009/11/26(木) 00:50:53を見ると、N06AのAccelerationSensorは×になってる。
その体感アプリ実行中にカメラを指で塞いで動かなくなったら、
RollReaderあたりで実装されてるのかも。
0235デフォルトの名無しさん
2009/11/26(木) 01:56:14RunnableをimplementsしたクラスからprocessEventを
取得することは可能なのでしょうか?
APIはStar1.1です
0236デフォルトの名無しさん
2009/11/26(木) 14:37:560237デフォルトの名無しさん
2009/11/26(木) 15:14:220238デフォルトの名無しさん
2009/11/26(木) 16:42:25string.splitがないだって!
0239236
2009/11/26(木) 17:15:230240デフォルトの名無しさん
2009/11/26(木) 17:16:49mp3も再生できるかもしんないけど、
アプリ上から呼び出すプレイヤーで再生。
その間はアプリはサスペンド。
0241デフォルトの名無しさん
2009/11/26(木) 18:00:17バグってるのはおまいさんだ
CLDCのAPIリファレンスを読んで出直して来い
0242デフォルトの名無しさん
2009/11/26(木) 18:02:36なるほど、ありがとうございました
0243デフォルトの名無しさん
2009/11/26(木) 23:47:150244デフォルトの名無しさん
2009/11/27(金) 02:56:340245デフォルトの名無しさん
2009/11/27(金) 05:57:05サンクスです
0246デフォルトの名無しさん
2009/11/27(金) 10:53:13例えば最初の32byteをinodeとしてinode内にアドレス等の情報を保持するような感じのやつです
0247デフォルトの名無しさん
2009/11/27(金) 17:18:28管理クラスを自作するしかない
はず
0248デフォルトの名無しさん
2009/11/27(金) 19:16:150249デフォルトの名無しさん
2009/11/27(金) 19:27:350250デフォルトの名無しさん
2009/11/27(金) 22:10:490251デフォルトの名無しさん
2009/11/27(金) 23:04:300252デフォルトの名無しさん
2009/11/29(日) 00:24:270253デフォルトの名無しさん
2009/11/29(日) 01:46:24内部は著作権保護がなければ
0254デフォルトの名無しさん
2009/11/29(日) 21:29:40うざい
0255デフォルトの名無しさん
2009/11/30(月) 10:35:27端末A,Bがあるとして、
クライアントA <−> サーバB で通信をしたあと、 続けて
サーバA <−> クライアントB として通信を開始しようとすると
クライアントBのFelica.open()でエラーがでる。
どうやら 一度サーバとして起動されたアプリは クライアントになれないっぽい
リファレンスみたら、「〜Exceptionが発生します」としかかれてなくて、これを解決する方法を探してるんだけど
現状は アプリの再起動しかない・・・(それだと使い勝手がわるすぎる
なにかいい方法ありませんか?
アプリ上で即時再起動・リセットかける方法とか
あとドコモに問い合わせとかできないんですかねー 軽く公式みたけど FAQしかない
0256デフォルトの名無しさん
2009/11/30(月) 14:24:350257デフォルトの名無しさん
2009/11/30(月) 19:14:32?
0258デフォルトの名無しさん
2009/12/01(火) 09:13:57ドコモにはなんどか問い合わせしてみたけど
DXアプリとかの契約がないと
何も答えられません、の一点張り
0259デフォルトの名無しさん
2009/12/01(火) 21:08:34センターの決定キーと左右のソフトキー以外利かず、十字キーも文字入力のキーも反応せず。
ソースはttp://homepage3.nifty.com/epg/iapp/21Component.htmのTxtPanel.javaとTxtsample1.javaを組み合わせたものです。
実行結果画面3でキーの入力画面に行くも関わらず、キーを入力しても反応しない(文字も表示されず、十字も反応しないのでカーソルも動かない)状態です。
Doja5.0+Eclipse3.1.2で作成しています。
0260デフォルトの名無しさん
2009/12/01(火) 21:48:53?
0261デフォルトの名無しさん
2009/12/01(火) 21:59:11TextBoxについてはわからないけど
なぜEclipse3.1?
最新版(Eclipse3.5.1)でも動くぞ。
0262デフォルトの名無しさん
2009/12/01(火) 22:12:430263デフォルトの名無しさん
2009/12/01(火) 23:38:06とりあえず、テキストボックスが1個しかないから、
カーソルはテキストボックスから動かない。
テキストボックスを選択→決定キーで編集モードになる
→文字編集→決定キーで抜ける
はできるの?
0264デフォルトの名無しさん
2009/12/01(火) 23:42:23端末ウィンドウのボタンを押しても入力されないみたいだけど
キーボードで文字を打つと入る。
Eclipseは古いの使ってもいいことなんか無いから新しいの入れたほうがいい。
3.1だとクイックフィックスとかの便利機能もまだない。
0265デフォルトの名無しさん
2009/12/02(水) 00:43:22ありがとうございます。
エミュ上で端末押しても動かないんですね。
Eclipseは昔ちょっとJavaを勉強していた時にいれたままだったので、このままでした。
0266デフォルトの名無しさん
2009/12/02(水) 02:17:36MediaSound ms1 = MediaManager.getSound( data );
m_AudioPresenter.setSound( mc1 );
で設定したメディアサウンドの情報をnullにする方法ってありますか?
メモリー節約のためにメディアサウンドを使いまわしていて、
いらなくなったメディアサウンドを破棄するのに、
ms1.unuse(); ms1.dispose(); ms1=null; としてますが、
m_AudioPresenter.getMediaResource();
でms1のアドレスがゲットできてしまいます。
つまりずっと参照されたままの状態になっているようです。
しかもメディアサウンドは既にdisposeされてるので、
呼び出したところで "UIException: Media sound is not usable"
が発生してしまうだけです・・・。
m_AudioPresenter.setSound( null )
としたいところですが、この方法では例外が発生してできないんですよね・・・。
m_AudioPresenter自体も一旦nullにしてガベコレで回収しない限り無理なのでしょうか?
0267デフォルトの名無しさん
2009/12/02(水) 02:40:29シングルトンでググれ
0268デフォルトの名無しさん
2009/12/02(水) 16:32:53iアプリコンテンツ開発ガイドによると、たとえばgifを読み込む場合、
オリジナルデータ(gifそのもの?)と内部データ(RGB?)というのが作られる
ようなのですが、このあとオリジナルデータは要らないと思うのですが、
この分のメモリ開放とかできるのでしょうか?
MediaImage m = MediaManager.getImage("resource:///test.gif");
m.use();
Image img = m.getImage();
m.unuse(), m.dispose() とかするとやっぱりimgは使えなくなります。
imgをcloneして元を消すのもなんか無駄な処理ですよね・・・
0269デフォルトの名無しさん
2009/12/02(水) 22:12:59DojaやStarでは、MediaImageとImageはセットで持っておかないといけない。
何故そういう仕様にしたのかはわからないが、そういうことになってる。
0270デフォルトの名無しさん
2009/12/02(水) 23:10:220271デフォルトの名無しさん
2009/12/03(木) 00:21:140272デフォルトの名無しさん
2009/12/03(木) 00:59:10MediaResource#use(MediaResource overwritten, boolean useOnce)
じゃダメ?
0273268
2009/12/03(木) 10:54:41ありがとうございます。
272さんのヒントからマニュアル調べたら
> 第 2 引数は、 このメディアイメージの利用 (use) が 「一度きり」であるかどうかを指定します。 「一度きり」であると指定した場合 (true を指定した場合 ) 、 use 完了と同時に、内部形式に変換される前のリソースを破棄します。
って思いっきり書いてありました・・読んでたはずなのに・・ごめんなさい。
とりあえずgif5つほど読んで試したところ、それっぽい値が出ました。
元のgifサイズ合計 11004
m.use(null, false)時 メモリ使用量 14644
m.use(null, true)時 メモリ使用量 3612
差分 11032
メモリ使用量は
long a;
System.gc();
a=Runtime.getRuntime().freeMemory();
画像読み
System.gc();
System.out.println(a-Runtime.getRuntime().freeMemory());
とやって調べました。絵はちゃんと表示されました。
差分がgifとほぼ同サイズなので、メモリは開放してくれたんだと思いますが、
内部データが3612ってのはおかしいような・・・はかり方が間違ってる可能性大
0274デフォルトの名無しさん
2009/12/03(木) 12:15:18亀だけどthx
■ このスレッドは過去ログ倉庫に格納されています