1 名前:デフォルトの名無しさん [2008/03/20(木) 21:43:54 ] J2ME CLDC+MIDPベースの携帯電話用Java(主にEZアプリ、Vアプリ)に関するスレッドです。 質問でも議論でも何でもこい、と。質問は公式資料をよく読んでからにしましょう。 前スレ: CLDC+MIDP+携帯電話用Javaスレッド part 7 pc11.2ch.net/test/read.cgi/tech/1180010672/ 過去スレ 携帯JAVAのスレッド pc2.2ch.net/test/read.cgi/tech/1011977260/ (DAT落ち) CLDC+MIDP+携帯電話用Javaスレッド part 2 pc5.2ch.net/test/read.cgi/tech/1070858996/ CLDC+MIDP+携帯電話用Javaスレッド part 3 pc5.2ch.net/test/read.cgi/tech/1091798483/ CLDC+MIDP+携帯電話用Javaスレッド part 4 pc8.2ch.net/test/read.cgi/tech/1108781476/ CLDC+MIDP+携帯電話用Javaスレッド part 5 pc8.2ch.net/test/read.cgi/tech/1132493827/ CLDC+MIDP+携帯電話用Javaスレッド part 6 pc11.2ch.net/test/read.cgi/tech/1155174514/ -- Java一般に関しては: 【初心者】Java質問・相談スレッド113【大歓迎】 pc11.2ch.net/test/read.cgi/tech/1204363011/ NTT DoCoMoのiモード携帯電話用Java(iアプリ)については: iモード携帯電話用Java(iアプリ) Part16 pc11.2ch.net/test/read.cgi/tech/1198816379/ >>2-5 あたりにリンク集・;(`ε()゙
610 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 03:46:07 ] テキストビューワ的なオープンアプリってないよね? しおり付きのテキストビューワがkjx時代にあってお世話になったから作ってみようと思うんだけど、 まだ仕様すら読んでないんだけどできそうかな?
611 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 03:47:23 ] >>610 はau用のオープンアプリの話です
612 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 04:04:50 ] 端末内のファイルにアクセスできないからテキストファイルを容易するだけで一苦労だよ
613 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 04:07:43 ] >>612 jarを作る段階でtxtから文字列を抜き出してjarに埋め込もうかと思うんだけど、どうかな?
614 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 07:06:14 ] なんか仕様も読まずに尋ねちゃってる時点で作れないと思うよ
615 名前:おでん mailto:nintendoguy@163.com [2008/10/30(木) 23:36:11 ] ソフトバンクアプリを作成中ですが、なぜGameCanvasから引き続いたクラスの keypressed関数が呼び出されないのですか?
616 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 00:20:03 ] au用オープンアプリなんて言ってる時点でだめじゃん・;(`ε()゙
617 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 00:23:09 ] なんで?
618 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 22:47:48 ] au以外にOAP採用してる国内端末あるっけ? 元々java環境のsoftbankとdocomoにOAPといってもピンと来ないな
619 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 00:55:43 ] オープンアプリってのは OAP上で動くアプリのことなんで かららずしもau用って訳じゃあないけど >>618 の言いたいことはよおくわかる。 >>610 は仕様嫁ってことですね
620 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 15:55:50 ] >>619 OAPはいわばJVMなんだし、○○用って表現自体怪しいけどな でも言いたいことはよおくわかるよ
621 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 09:03:20 ] 本人はよく分からずに書いてるみたいだけど、 ニュアンスは伝わってるんだからそんな揚げ足とってツッコまなくてもいいやん・;(`ε()゙ >jarを作る段階でtxtから文字列を抜き出してjarに埋め込もうかと思う これもやろうとしてることがイマイチ分からないけど、 抜き出して〜とかしなくてもtxtファイルを直接jarに含めればいいよ。 ということで後はリファレンス読んで頑張れ。
622 名前:デフォルトの名無しさん [2008/11/02(日) 19:51:36 ] 上の方で同じ質問があったかもだけど、俺も実機でアプリを動かそうとしたら オープンアプリ7Fエラーが出て超困ってる。 特に端末依存なAPIは使ってない。何が原因か分からん…メモリは結構使うタイプのアプリだけど、起動直後に落ちるとか意味分からん。タイトル画面を表示する段階では何も生成してないっつの。 各端末によってクラスァイルの数とかに制限があるのだろうか。こういうところで詰まったことのある人ヘルプ!
623 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 21:56:27 ] 前7Fエラーで詰まってたものだけど 別ファイルで作ってた敵とか自機のクラスで GameCanvasを継承させてたのが原因だった。
624 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 22:09:17 ] それが原因ならエミュでもエラー発生すると思うんだが何でだろう 不思議だ
625 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 03:38:15 ] 設計によっては難しいだろうけど コメントアウトとビルドを繰り返して実機で検証していくのが 一番手っ取り早いかと 例外取れてそうなら起動時にデバッグ用コマンド入力で 前回検出された例外を出力してみる
626 名前:デフォルトの名無しさん [2008/11/03(月) 18:29:39 ] イーモバイルの端末H11Tで Playerクラスで次々に音ファイルを読み込んでrealize()していくと5個目でRuntimeExceptionがでる。 仕様では一度にprefetchやstart状態にできる数には制限があるが、realizeだけならできるはずなんだが、、。 このおかげで音をはじめに5個以上ロードしておくことができないんだけど、 同じエラーでこまった人いない? ちなみにイーモバイルのほかの端末は試してない。
627 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 10:23:36 ] OutOfMemErrじゃなくて?
628 名前:626 mailto:sage [2008/11/04(火) 15:13:38 ] 小さいサイズのmidファイルで試してみたけど、変わらず。 具体的なエラーコードは java.lang.RuntimeException: Error code: -8 です。
629 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 19:47:13 ] 上の方でatan2が無いって困ってる人(俺も困った)がいたんでコード書いてみた //tanを格納しているテーブル。配列のサイズを変えれば解像度が変わる private static double[] tanTanble = new double[360]; static{ for (int i = 0; i < tanTanble.length; i++){ //tanテーブルの初期化(範囲は90度) double tan = Math.tan(((0.5f / tanTanble.length) * i) * Math.PI); tanTanble[i] = tan; }} public static double atan2(double x, double y){ double absX = Math.abs(x);//90度で計算するので絶対値に変換 double absY = Math.abs(y); int angle = tanTanble.length;//角度 if (absX == 0)angle = tanTanble.length;//90度の場合 else if (absY == 0)angle = 0;//0度の場合 else{ double tan = (double) (absY / absX);//タンジェントを求める for (int i = 0; i < tanTanble.length - 1; i++){ if (tan >= tanTanble[i] && tan <= tanTanble[i + 1]){//角度テーブルの指定範囲内に収まっていたら angle = i;//角度決定 break;}}} if (y >= 0 && x >= 0)angle += 0;//0~90//座標変換 else if (y >= 0 && x <= 0)angle = (tanTanble.length - angle) + (tanTanble.length * 1);//90~180 else if (y <= 0 && x <= 0)angle += (tanTanble.length * 2);//180^270 else if (y <= 0 && x >= 0)angle = (tanTanble.length - angle) + (tanTanble.length * 3);//270~360 double result;//ラジアンに変換 result = (double) (angle) / (double) (tanTanble.length * 4); result = result * (2 * Math.PI); return result;} 疑似atanだから、多分本物のatanよりも早いよ。精度は悪いけど。
630 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 20:49:15 ] >>629 精度が必要でjava.lang.Math全部必要ならVisual Numerics IncのJMathもある 自力でfdlibmを移植してた俺って…
631 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 08:44:49 ] >>626 風の噂で4個までと聞いた気がする、試してないからわからないけど
632 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 16:38:51 ] >>631 サンクス やっぱりそうなんだ、、。こちらの実機での状況と符号する。 技術情報だと、イーモバイルで現在javaが最初から入ってる端末はH11Tしか出てないんだね。
633 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 18:41:30 ] Playerクラス自分も使ってるけど 5つだけ配列確保してその中で1つをMIDIに、その他をWAVEにしてる 使い物切り替えるときはその場その場で再ロードだなぁ 他に方法有るかもしれないけど…
634 名前:デフォルトの名無しさん [2008/11/09(日) 14:35:49 ] サウンド周りでMA7端末とMA3端末の両方で開発をしています。 SmafPlayerでMA3サウンドを再生中にsetVolumeで音量設定しても 即座に反映しない問題で悩んでいます。 しばらく時間がたってからボリュームがチャンネルごとに少しずつ反映 するような感じ。 PhrasePlayerのsetVolumeは問題ないです。 エミュレータではちゃんと動いてるんですが、実機(823SHなどサウンドがMA3 の端末)だとだめです。 pause(); setVolume(); resume(); とすれば反映しますがフェードさせたいので これじゃだめなんです。 回避方法とかあるんでしょうか?
635 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 00:10:22 ] ない
636 名前:デフォルトの名無しさん [2008/11/11(火) 14:19:26 ] JSCL1.2.2で通信のテストをしています。 スパイシーソフトさんのビジネスプロバイダを使う都合で、 ConnectorクラスでなくJConnectorクラスを用いざるをえなくなりました。 SCLのエミュレータ、MEXAのエミュレータとも動作しました。 (当方初心者ゆえ、100%正しい動作とは断言できませんが。) しかし、実機では動作しません。 JConnector.openを囲ったtry節をつくり、エラーを調べましたら java.io.IOException でした。 実機で動かない、という状況が、579さんと同じであることと、 エラー内容が、579さんへのレスと思われます580さんの 「MIDPの実機は標準出力はない 」に関係していそうで、 どなたか、 580さんの「MIDPの実機は標準出力はない 」が、 579さんに対してどういうヒントだったのか、ご説明いただけないで しょうか。 宜しくお願い致します。
637 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 14:34:27 ] >580は>578だと思います
638 名前:sage [2008/11/11(火) 15:03:18 ] 637さん、有難う御座います。
639 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 18:00:38 ] jar内のリソースファイルの改変を検知する良い方法は無いでしょうか? 海外向けのアプリで、広告などに差し替えられるのを防ぐ目的です。 バイナリの総スキャンや独自に画像等を展開するのは 処理時間の面から避けたいと思います。 hashCode()でリソース固有の値が得られれば良かったのですが もちろんオブジェクトの値なのでこれも不可でした。
640 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 22:40:17 ] >>636 ビジネスプロバイダからダウンロードしたアプリは 接続先を1箇所しか指定できなかったと思うけど、 その辺は大丈夫?
641 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 23:33:06 ] >>639 crc付加して読み込み時にチェック
642 名前:デフォルトの名無しさん mailto:sage [2008/11/12(水) 00:10:44 ] CRCというか、拡張子変えてごまかした後に頭かお尻に適当なバイトくっつければよいだけの話のような。
643 名前:デフォルトの名無しさん mailto:sage [2008/11/12(水) 01:13:01 ] てか、勝手アプリの改造みたいな真似してまで 広告埋め込もうとするのか?海外の業者は
644 名前:636 mailto:sage [2008/11/12(水) 10:59:39 ] 640さん、有難う御座います。接続先は1つにしています。 根本的に何かを間違えていて、 たまたまエミュで動いてしまっているのかもしれません。 たとえば、JConnectorクラスの代用としてConnectorクラスが働いてくれているとか。 そういうことがおこりえるのか分かりませんが。 あまりに突拍子もない発想でしたらごめんなさい、パニくっています。
645 名前:デフォルトの名無しさん mailto:sage [2008/11/12(水) 15:14:49 ] wirelett toolkit 2.5.2で operamini 4.2 beta動かせない・・・
646 名前:636 mailto:sage [2008/11/13(木) 15:49:06 ] 度々すみません636です。 エラーや進行をこまかくSystem.out.println表示させ、 JConnector自体は正しく動いている様子であると確認しました。 また、実機でも、JConnectorのイニシャライズまでは動いているようです。 (実機はV705SH。ボーダフォン時代のものです。) そのあと、エミュですと「Is it OK to use airtime?(JSCL1.2.2の場合。 MEXAエミュでも同義っぽいメッセージが出ます。)」と画面がでまして、 Yesと答えますと動作します。 しかし、実機ですと、その問いかけが出ず、 java.io.IOExceptionエラーとなってしまいます。 問題が複数に起因している可能性もあるのですが、 まずはこの、「問いかけが出ない」件を解決したく。 どなたか、ご教授いただけないでしょうか。宜しくお願い致します。
647 名前:おでん mailto:nintendoguy@163.com [2008/11/13(木) 15:49:35 ] GameCanvasから継承させたクラスを用意しました。 アプリ(MEXA)は方向キーと数字キー両方とも対応しなければなりません。 現在としては方向キーイベントはgetKeyStates関数で、数字キーイベントは keyPressed()関数で処理していますが、GameCanvasをこのまま継承しながら すべてのキーイベント(ソフトキーは例外)の処理を一箇所で行う方法などは ありませんでしょうか?
648 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 16:56:00 ] 定数にキーの値を入れて、方向キー数字キーどっちのキーイベントが発生しても 同じメソッドにキーの値を渡せばいいんじゃない?
649 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 19:11:30 ] >>636 とりあえずぐぐると、ほぼ同様の症状の報告とそれについて原因と思われる レス(ただしそのレスが正しいかどうかは不明)が参照できるのですが、 それについては確認しましたか?
650 名前:おでん mailto:nintendoguy@163.com [2008/11/13(木) 19:29:27 ] 648さん〜 有難うございます そういう方法もありますよね。 今BREWで作成してたBREWアプリをソフトバンク向けにコンバートしていますが、 どうしても数字キー7,9押下してもkeyPressed関数が呼び出されないですね。 元のBREWアプリは数字キーすべてを使っていますが、GameCanvasを利用しては そのイベントを処理するのはできませんか? またcanvasにする場合は数字キー7,9の押下の処理が可能ですか?
651 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 20:18:19 ] キーコードが間違ってるんじゃないの 出力してみればわかるけど79っていうか数字キーは全部KeyPressedで拾える
652 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 02:35:32 ] >>650 ソフトバンクはgetKeyStates()だと7、9がGAME_A_PRESSED、GAME_B_PRESSEDに対応してるからだと思う。 全てのキーをkeyPressed()で取得したほうがいいんじゃない? getGameAction()使えば方向キーとファンクションキーも取得できるよ。
653 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 06:15:45 ] MIDP2.0の考えとしてGameCanvasはあくまでゲーム作成に特化したCanvasだ。 ゲームってのは方向キーと決定キーで操作するもので、 数字キーはゲーム機のパッドに付いてないだろ?って考えで設計されている。 アプリを動作させるハードが携帯電話に限らないわけで、 だからABCDボタンといった呼び名に抽象化されてたりするわけで。 その考えに乗れないアプリ(数字キーで数字入力をしたいアプリなど)は GameCanvasで作るには無理が出てくる。 ここは割り切ってCanvasを使うよう設計変更した方がいいと思う。 GameCanvasと言ったってCanvasをラッピングしてるだけだし、 MIDP1.0のときはGameCanvas相当のことをCanvasでやってたんだし。
654 名前:おでん mailto:nintendoguy@163.com [2008/11/14(金) 11:37:59 ] 651,652,653さん〜 有難うございました。 653さんの指摘の通りにCanvasを使うように再コーディングしました。 後もよろしくお願いいたします。
655 名前:636 mailto:sage [2008/11/14(金) 14:36:29 ] 649さん、ありがとうございます。ググり方が悪かったのか、そういうのを見かけませんでしたが、再度挑戦してみます。
656 名前:636 mailto:sage [2008/11/14(金) 21:18:08 ] ググるなどしましたが、分からず。この板の503さんと同じなのかも。 しかし503さんの答えがなし…。
657 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 22:46:59 ] 画像についてですが、 pngファイルでエミュレータならうまくいきますが 実機だと表示できないものがよくあります。 何か条件や注意すべきところははあるんでしょうか?
658 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 23:18:18 ] >>657 色数。 256色以下のpngじゃないと、正常に表示できない機種があるよ。 フルカラーになってたりしないかチェック。
659 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 23:31:52 ] >>658 なるほど・・。 早速やってみます。 レスありがとうございました。
660 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 04:48:34 ] PNGGauntletとか使ってると落ちる実機とかあったな。 なるべく正確なヘッダを出力するツールを使うこった。
661 名前:おでん mailto:nintendoguy@163.com [2008/11/15(土) 11:07:59 ] ソフトバンクアプリでソフトキー押下処理時の質問です。 public void commandAction( Command c, Displayable d ) { if (cmdL == c) ...左ソフトキー押下時のゲーム処理 else if (cmdR == c) { ...右ソフトキー押下時のゲーム処理 } } 上のコードでエミュ(MEXA2.1)ではうまく動作しますが、実機でよく効かないときが 多いです。(効く時もあります) 上のコードを int key = devCtl.getDeviceState(DeviceControl.KEY_STATE); の形へ変更しなければなりませんでしょうか? 変更する場合は実機でうまくいくかは分かりませんが、エミュでうまく行きません。 エミュ用、実機用にコードを別々に作成しなければなりませんか?
662 名前:おでん mailto:nintendoguy@163.com [2008/11/15(土) 11:54:03 ] GameCanvasじゃなくCanvasから継承されています。
663 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 14:01:58 ] >661 そのcommandAction()の記述自体は問題ない。 ・プログラムの他の部分に問題がある。 ・「ゲーム処理」に問題がある。 後者は、通信開始、保存領域へのアクセス、再描画など、時間のかかる処理は避ける。 commandAction()はあくまでキー押下検出のメソッド(状態遷移のトリガとするメソッド)なので、 フラグを立てたり、変数に値を代入したりといった処理だけにして速やかに抜けること。 DoJaのprocessEvent()を参考に言うならば、commandAction()の処理は1秒以内を目安に。
664 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 14:07:58 ] 他に考えられるのは、メインの処理ループをウェイトなしでやってると 割り込みが処理されにくいってこともあるかも。 試しに10msくらいウェイトを入れてみるとか。
665 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 22:34:25 ] jadまでのリンクは出来たのですが 実機でDLしようとすると 不正なファイルです。ダウンロードはできません と出てしまいます。 これってどんな原因が考えられますかね? ちなみにアプリゲットのテストエリアで、他の掲示板にupさせてもらった時はjarまでDLできました。
666 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 23:05:22 ] jadだけ書き換えたりしてるんじゃねえの あとはMIMEくらいか
667 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 01:47:10 ] Image.createImage(byte[], 0, byte[].length); でPNGデータが読み込めません… IllegalArgumentExceptionがでます。 JPGはうまくいくのですが・・・。 Image.createImage("/file.png");だと普通に通ります。 エミュ(MEXA2.1)では普通に動くのですが実機だと エラーを吐きます。 どうすれば解決できるでしょうか・・・お願いします。
668 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 04:21:17 ] >667 IllegalArgumentExceptionは引数が不正って意味。 (byte[], 0, byte[].length)のどれかがおかしいってこと。
669 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 05:17:19 ] IllegalArgumentExceptionはファイルそのものが不正ってことじゃねえの
670 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 14:09:20 ] ファイルそのものが不正かどうか、エラーメッセージはそこまで言っていない。 敢えて言うなら、 第1引数に正しいPNGデータが入っていないのでは? 第3引数が0以下の値になってないか? とかだな。
671 名前:667 mailto:sage [2008/11/16(日) 14:28:19 ] 解決しました。 第三引数の値が、(data.length - 1)になってました…。 jpgは読み込めたみたいですが、pngはだめだった見たいです。 javadocの「imagedata.length - 1」を見てたのですが勘違いだったみたいです。 レスいただいた方ありがとうございました。
672 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 01:16:00 ] 質問する人はさ、解決してもしなくても 結果くらい書いてもバチは当たらないと思うんだ。 有益かどうかはともかく、それ自体1つの情報なんだから。
673 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 02:45:44 ] 開発環境も書かずに機種依存系の質問する人も多い中で そんな事言っても分かってもらえないと思うよ
674 名前:おでん mailto:nintendoguy@163.com [2008/11/17(月) 15:30:57 ] >663 663さん〜 回答ありがとうございます。 確かにcommandAction()はほとんどソフトキー処理ですから状態遷移処理のためイメージロード部分がありました。 フラグを立ててこの関数をすぐ抜いたらソフトキーの反応がよくなりました。 (まだ全機種についてのテストは済んでいませんが)
675 名前:デフォルトの名無しさん [2008/11/18(火) 16:10:37 ] S!アプリって以下の認識でいいんでしょうか? ・アプリは特定サーバからしかダウンロードできない ・ダウンロードしたアプリからは他サイトのデータ取得可 ・ダウンロード済みアプリの起動は他サイトのコンテンツからでも可
676 名前:おでん mailto:nintendoguy@163.com [2008/11/18(火) 21:32:07 ] eclipse3.3.2/MEXA2.1で javax.microedition.lcdui.Graphics.setFont(Font)関数についての質問です。 文字列描画のごと設定しなければいけないのですか? paint()関数が呼び出される時 Font font = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_SMALL); g.setFont(font); のようにフォントを設定して文字列を描画すると意図したフォントで描画されますが、 一度だけフォントを設定して描画したらデフォルトのフォントで文字列が描画されます。
677 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 22:18:57 ] >676 paint(Graphics g)で渡ってくるgは毎回別物。 だから今回g.setFont()しても次回はフォントが設定されていない。 CanvasやMIDletではなくgに対してフォントを設定してるんだしな。 「Font font = 〜」のfontを破棄せず取っておいて、 paint()ごとに毎回g.setFont(font)だね。
678 名前:おでん mailto:nintendoguy@163.com [2008/11/19(水) 15:49:02 ] >677 回答ありがとうございました。 「paint(Graphics g)で渡ってくるgは毎回別物」とは初めて分かりました。 それ以外の不具合修正にも役に立ちそうです。
679 名前:おでん mailto:nintendoguy@163.com [2008/11/19(水) 16:00:19 ] eclipse3.3.2/MEXA2.1でソフトバンクアプリを開発しております。 電話受信、メール着信、メッセージ着信などはどのように感知するのでしょうか?
680 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 17:44:20 ] >679 「S!アプリ開発ガイド MEXA/JSCL利用編」を「着信」で検索。 com.j_phone.systemにそれらしきListenerがあると分かるので あとはAPIリファレンスを見て判断する。 Option Unit2だから実装機種少ないかも? 知らんけど。
681 名前:おでん mailto:nintendoguy@163.com [2008/11/19(水) 19:27:36 ] 〉680 ありがとうございます。 お教えの通りにMailListenerを次のように実装してテストして見ましたが exceptionが投げられています。 class A extends GameCanvas implements CommandListener,Runnable, MailListener { 。。。 コンストラクタ関数で DeviceControl.setMailListener(this); 。。。 public void received(String name, String address, int detail) { } 。。。 exception メッセージは次の通りです。 java.lang.SecurityException: com.j_phone.system.DeviceControl.read was denied java.lang.SecurityException: com.j_phone.system.DeviceControl.read was denied at com.jblend.security.midp20.SecurityManagerImpl.checkPermission(+40) at com.j_phone.system.DeviceControl.setMailListener(+17) at Canvas3D.<init>(+625) at Mickey3D.<init>(+30) at java.lang.Class.runCustomCode(+0) at javax.microedition.midlet.MIDlet.createMIDletInstance(+22) at javax.microedition.midlet.MIDlet.main(+105) 何かエミュで確認する方法はありませんでしょうか?
682 名前:680 mailto:sage [2008/11/19(水) 20:49:58 ] エラーメッセージはパーミッションの設定がされてないか何かみたいだけど、 エミュレータにこれをエミュレートする機能があるかどうか自分は知らんです。
683 名前:おでん mailto:nintendoguy@163.com [2008/11/20(木) 12:42:34 ] > 682 パーミッションを設定する方法を教えていただけませんか? また開発アプリが待ち受けアプリですからMidletから継承されていたのをResidentMIDlet から継承させましたが、下のようなexceptionが投げられます。 java.lang.SecurityException: com.j_phone.midlet.ResidentMIDlet was denied java.lang.SecurityException: com.j_phone.midlet.ResidentMIDlet was denied at com.jblend.security.midp20.SecurityManagerImpl.checkPermission(+40) at com.j_phone.midlet.ResidentMIDlet.<init>(+15) at Mickey3D.<init>(+4) at java.lang.Class.runCustomCode(+0) at javax.microedition.midlet.MIDlet.createMIDletInstance(+22) at javax.microedition.midlet.MIDlet.main(+105) これもパーミッションが設定されていないからでしょうか?
684 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 13:39:08 ] >>683 SecurityExceptionはパーミッションの設定漏れ。
685 名前:おでん mailto:nintendoguy@163.com [2008/11/20(木) 15:47:03 ] > 683 自己解決しました。 JADファイルに MIDxlet-Resident: S MIDlet-Permissions: com.j_phone.midlet.ResidentMIDlet を追加してエラーが投げられないようになりました。
686 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 17:08:32 ] 書き込む前にちょっと調べりゃ分かるだろ中国人
687 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 22:21:39 ] 過疎ってんだし初心者の質問ぐらい大目に見てやれよメキシコ人
688 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 21:17:57 ] 前も質問させてもらったんですが解決できないので もう1度お願いします。 jadファイルを実機でDLしようとすると 確認中 の画面のあと 不正なファイルです。ダウンロードできません。 と出るんでこれはjadが悪いんでしょうか?それともjarでしょうか? jadファイルの内容なんですが MIDlet-1: Amain, aaa.ico, Amain MIDlet-Jar-Size: 48412 MIDlet-Jar-URL: Amain.jar MIDlet-Name: Amain MIDlet-Vendor: Unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 クラス等の名前は変えていますがこんな感じです。 どうすればDLできるでしょうか?
689 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 22:53:01 ] >>688 ・jarのサイズとjadに記載されているMIDlet-Jar-Sizeは完全に一致してる? ・マニフェストファイルとjadの共通パラメタの内容は一致してる?
690 名前:デフォルトの名無しさん [2008/11/21(金) 23:28:42 ] MIME JADを単体で書き換えた など
691 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 23:43:27 ] それは一致してますね。。 アプリゲットのテストエリアなのでMIMEは設定されてると思うのですが、問い合わせてみようかと思います。 ありがとうございました。
692 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 23:50:36 ] 拡張使っているというオチ
693 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 06:21:24 ] aaa.ico これが変だと思う
694 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 13:45:23 ] ホントだw アイコンはpng画像にしましょうね…。
695 名前:デフォルトの名無しさん mailto:sage [2008/11/28(金) 18:53:52 ] Java言語によるモバイルゲーム開発 というのが発売されたようですが、皆様の感想は如何な物でしょうか・・・?
696 名前:デフォルトの名無しさん mailto:sage [2008/11/28(金) 23:18:48 ] auの技術情報のところの 公開方法→タグのところで <a href="device:jam? <URL>">タグで.jadファイルを記述します。<URL>にはhttp://から始まるJarファイルのURLを記載してください。 とあるのですが、jarファイルってのはjadの間違いですよね? www.au.kddi.com/ezfactory/tec/spec/openappli.html
697 名前:デフォルトの名無しさん [2008/11/29(土) 11:08:51 ] 単語とか記憶するためのアプリを作ろうと思ってるんですけど、躓きました。 単語自体はtxtファイルに記述して、それを読み込んで使おうと思ってます。 しかし、そのtxtファイルを読み込ませることができません…。 というより読ませる方法がまったくわからないという…。 ちなみにauのオープンアプリです。 どうすればtxtファイルから文字を読み込むことができるのでしょうか? また、txtファイルを検索して、任意の位置の文字を表示させることは可能なのでしょうか? 回答お願いします。
698 名前:デフォルトの名無し開発者 mailto:sage [2008/11/29(土) 12:55:21 ] >>695 如何なモノかと言われても、11月27日に出版されたばかりの本なんてまだ誰も読んでないと思うよ…? 著者は無名の人っぽいけど、ケータイゲーム開発の本自体が希少だから価値はあるんじゃないかな。 パラパラっと読んでみたいけど、田舎の本屋には入荷しないだろうからなぁ…。 >>696 指摘のとおりだと思う。 試してみればヨロシ。 >>697 躓いたというか根っこの所を全く勉強されていないような気がするんですが気のせい? サーバにtxtファイルを置いて通信で取得すればOK。 txtファイルを検索ってのがどういうのをイメージしてるのか分からないけど、 サーバに置いた複数のtxtファイルから検索したいってことなら、サーバサイドも作らないとダメ。
699 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 13:45:31 ] >697 通信して取得するのでないなら、 テキストファイルをリソースに含めておいて、それを読み込んで使う。 「midp リソース 読み込み」でググれ。
700 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 22:27:26 ] >>695 今日買ってきました。 MIDP/DoJaそれぞれについて、画面表示、キー入力、HTTP通信などの解説がされています。 ただ、サウンドについての記述が皆無なのが残念!
701 名前:デフォルトの名無しさん [2008/11/30(日) 00:09:47 ] >698 通信でやる方法もあるんですね。 でも難しそうで私には無理です… ご指摘通りほとんど勉強してないかもしれないです… 申し訳ないです >699 ググってみました。 良いサイト見つかりました。 これで先に進めます! また質問来るかもしれないので、その時も優しくしてくださいね。 お二人ともありがとうございます。
702 名前:デフォルトの名無しさん [2008/11/30(日) 23:46:21 ] みんな画面サイズってどれくらいを想定して作ってます? 240x320くらい?
703 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 04:57:18 ] 想定じゃなくて決めて作ってる 相対で配置すればサイズ変わっても対応簡単だし
704 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 06:16:31 ] 企画に相対配置なら全機種対応できますが VGA端末が強引に引き伸ばして見た目が汚くなったりするかもしれないから とりあえず全機種チェックは必要かもしれないって言ったら 240x240固定で良いってさ。
705 名前:702 [2008/12/01(月) 12:56:45 ] AUのオープンアプリは240x268固定みたいですね。 S!アプリをつくるのですが240x240だとちょっと縦がもったいなすぎる感じがするので240x268でいこうと思います。 ありがとうございました!
706 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 22:31:55 ] 240×260がオススメ! ソースは俺
707 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 02:11:10 ] >>705 1行目と2行目が繋がってないとおもうんだけど・・・・
708 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 06:54:28 ] そろそろVGAが主流になってほしい
709 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 12:11:20 ] 俺の開発してるソフトはVGA専用だぜ
710 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 14:36:22 ] sアプリでメールのバックアップ(pcもしくjはSDカードに保存)は可能ですか? 920scなんですが、メールのパックアップ機能がなくて・・・・