1 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 10:48:34 ] J2ME CLDC+MIDPベースの携帯電話用Java(主にEZアプリ、Vアプリ)に関するスレッドです。 質問でも議論でも何でもこい、と。質問は公式資料をよく読んでからにしましょう。 前スレ: CLDC+MIDP+携帯電話用Javaスレッド part 5 pc8.2ch.net/test/read.cgi/tech/1132493827 過去スレ 携帯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/ -- Java一般に関しては: 【初心者】Java質問・相談スレッド88【大歓迎】 pc8.2ch.net/test/read.cgi/tech/1153834996 NTT DoCoMoのiモード携帯電話用Java(iアプリ)については: iモード携帯電話用Java(iアプリ) Part12 pc8.2ch.net/test/read.cgi/tech/1154336955 >>2-5 あたりにリンク集
331 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 05:52:14 ] >>330 1、705shでそれは再生可能か? 2、MIDP2.0でそれは再生可能か?
332 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 10:56:40 ] NetBeansでコンパイルができません… フォルダ生成してるからだと思いますが… 生成物を除外して構築でも駄目 どこで設定できるか教えて下さい
333 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 15:34:00 ] すみません、ブラウザからパラメータ渡しのアプリ起動をしたいのですが、 getWakeupParam のパーミッションの記述で悩んでいます。 一通りS!のサイトの仕様書は読みつくしたと思うのですが、 getWakeupParamに関してはパーミッションにどう書けばよいのかわかりません。 例外を出力しようかとも思ったのですが、 getWakeupParamを呼んでいる箇所でスレッドごと落ちてしまうため 確認も出来ない始末でして・・・ どなたか心当たりがありましたらご教授お願いします。 尚、テスト端末は905SHでアプゲを使用しています。
334 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 15:43:37 ] 使ったこと無いけど、getWakeupParamを使用するのに パーミッションの記述は必要ないんじゃない?
335 名前:333 mailto:sage [2006/12/04(月) 16:23:17 ] すみません、できました(´д`;) import の指定の誤りでした。 × import com.vodafone.system.DeviceControl; ○ import com.j_phone.system.DeviceControl; com.j_phone〜に変更したら、 >334氏の通りパーミッションの記述は不要でした。 ご迷惑をおかけしました。。。
336 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 21:31:50 ] 待ち受けアプリってどうやって作るんでしょうか?
337 名前:327 mailto:sage [2006/12/04(月) 21:59:40 ] >>331 1 ネイティブプレーヤで再生できます。 2 「端末個別仕様」のMIDP2.0/Media Playerの項目にはMP4(audio)や3GPP(audio) が記載されているのでできそうなのですが...
338 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 02:24:28 ] 3G端末でPOST通信がしたくて下記のようにしているのですが、 通信確認の画面ではいを選択しても一向に通信が始まりません。 何がおかしいのでしょうか? jadにMIDlet-Permissions: javax.microedition.io.Connector.http は追加してあります。 String POST(String URL,String str) { try { HttpConnection connection = (HttpConnection)Connector.open(URL, Connector.READ_WRITE, true); connection.setRequestMethod(HttpConnection.POST); connection.setRequestProperty("content-type", "application/x-www-form-urlencoded"); OutputStream os = connection.openOutputStream(); os.write(str.getBytes()); os.close(); InputStream is = connection.openInputStream(); int length = (int)connection.getLength(); byte[] data = new byte[length]; is.read(data); is.close(); connection.close(); return new String(data); } catch (Exception e) { return "エラー"; } }
339 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 03:21:52 ] >>338 もし対象端末がボーダフォンのSH系なら、 javaアプリからのPOST送信には対応してなかったはず。
340 名前:デフォルトの名無しさん [2006/12/05(火) 04:46:48 ] SoftBankなんですが、 StorageConnection con = (StorageConnection)Connector.open("file:///ms/Pictures/….jpg"); InputStream istm = con.openInputStream(); byte[]bData = new byte[(int)con.getLength()]; intlen = istm.read(bData, 0, (int)con.getLength()); Imageimage = Image.createImage(bData, 0, len); の最後で Uncaught exception java/lang/IllegalArgumentException ALERT: srcData: [B@1a4cfaaa と言われてしまいます。PNGなら読めます。もしかして、JPGは未対応ですか?
341 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 10:17:52 ] >>340 ほぼ全機種(海外除く)ミニマムスペックでjpeg対応していたはず。 ・携帯端末で読めないjpeg(解像度が大きすぎ、Exifタグのついた特殊なjpeg等) ・色々と閉じ忘れているのが悪影響している どちらかじゃないかと
342 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 11:04:45 ] >>339 POST対応してないのはSH53初期型のみだったとおもう >>340 300KB制限とかあったようなきがする
343 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 11:16:40 ] >>338 setRequestPropertyに渡している"content-type"って 普通は"Content-Type"って書くと思うけど、大文字小文字は関係ないのかな? また、valが"application/x-www-form-urlencoded"ならos.writeで書き込んでいるデータは URLエンコードをがかかっているのかな? まあ上記は、あまり重要ではないと思うけどね。 本題だけど os.close()の後にレスポンスコードをチェックしている記述が見当たらないんだが レスポンスコードは何って返ってきているの? 後、送ろうとしているデータサイズはいくつ?
344 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 11:53:42 ] >>338 >>339 POSTに対応していないんじゃなくて、 POSTのContent-typeがOctet-streamに固定されるんじゃなかったでしたっけ?
345 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 11:57:49 ] >>343 os.close()の後にレスポンスコードをチェックするために int rs=connection.getresponseCode(); といれたら通信が開始されるようになりました。 コードも200と返ってきたので正しく通信が行えたようです。 APIリファレンスを呼んだら接続状態への遷移を引き起こすメソッドに載っていたので この内のどれかを呼ばないと通信できないみたいですね。 ありがとうございました。
346 名前:デフォルトの名無しさん [2006/12/05(火) 18:35:28 ] SoftBankで何もしないプログラムを作成して、エミュレータで確認後 実機で動かしてみたんですが、起動直後に「エラーが発生しました」に なってしまいます。 実機にダウンロードできた時点でMANIFEST.MFと*.jadのチェックは通った と考えていいんですよね?(何もしないプログラムなので原因がさっぱり です)
347 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 18:39:45 ] >>346 とりあえず、コンパイル環境と Jad、マニフェストファイルの中身と 使用した端末を書け。
348 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 18:44:34 ] >>345 んなことはない
349 名前:346 mailto:sage [2006/12/05(火) 19:22:01 ] JDK 1.5 Update 10でEclipse 3.2を使用して↓を使ってビルドしました mjdf.potrin.com/pages/eclipse_03.html んで、アプリゲットにアップロードしました。 /META-INF/MANIFEST.MF Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.5 Created-By: 1.5.0_10-b03 (Sun Microsystems Inc.) MIDlet-1: Sample9,, Sample9 MIDlet-Name: Sample9 MIDlet-Vendor: Unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0
350 名前:346 mailto:sage [2006/12/05(火) 19:23:01 ] Sample9.jad MIDlet-1: Sample9,, Sample9 MIDlet-Jar-Size: 699 MIDlet-Jar-URL: Sample9.jar MIDlet-Name: Sample9 MIDlet-Vendor: Unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0
351 名前:346 mailto:sage [2006/12/05(火) 19:23:50 ] Sample9.java import javax.microedition.midlet.*; public class Sample9 extends MIDlet { public Sample9() { } protected void destroyApp(boolean arg0) { } protected void pauseApp() { } protected void startApp() { } }
352 名前:346 mailto:sage [2006/12/05(火) 19:25:32 ] あ、端末は910SHです。
353 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 20:30:17 ] >>346 JADにMIDxlet-API項目がないのでは?
354 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 20:31:51 ] >>346 >>353 追記 MIDlet-OCLのほうかも
355 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 22:14:29 ] >>348 int rs=connection.getresponseCode();を入れなくても エミュレータ上では通信してくれるんですが、 実機(905SH)では通信が開始されないんですけど 何が問題なんでしょうか?
356 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 22:35:16 ] 何で外すの?
357 名前:デフォルトの名無しさん mailto:save [2006/12/05(火) 23:20:42 ] >>356 は誰に対して言っているんだ?
358 名前:346 mailto:sage [2006/12/06(水) 02:01:30 ] >>353 >>354 jadにMIDxlet-API: JSCL-1.3.2 MIDlet-OCL: JSCL-1.3.2 を追加してみましたが、同じでした
359 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 04:26:02 ] >>338 GETと違ってPOSTはConnector#open()の前にOutputStreamがお約束。 >>340 read()は必ずしも一回で全部を読み切るわけではないから lenとcon.getLength()が同じになるとは限らない(APIリファレンス見て)。 だからImage#createImage()で失敗している。
360 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 09:07:45 ] >>359 >GETと違ってPOSTはConnector#open()の前にOutputStreamがお約束。 そんなわけない
361 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 10:04:23 ] >>358 JSCL-1.3.2だったら、 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 にしたほうがいいのでは?
362 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 11:07:28 ] >>361 JSCL1.3.2ということはMIDP1.0の エミュレータを使用している可能性が高い。 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 もしJadの記述を上記に変えてしまった場合 JSCL1.3.2のエミュで動かなくなってしまう。 MEXAエミュレータを使用すれば問題ないけどね。 3GCの端末で MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 の記述で動かしたい場合、Jadの記述に以下を追加する必要がある。 MIDlet-Permissions: javax.microedition.io.Connector.http これについては、「S!アプリ開発ガイド MIDP2.0対応端末編」の 2.2.8.5. MDlet-Permissionsの項目に書かれている。
363 名前:346 mailto:sage [2006/12/06(水) 13:47:09 ] MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 も MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-Permissions: javax.microedition.io.Connector.http も試してみましたが、やはりS!エミュやMEXAエミュでは動作するのに 実機では「エラーが発生しました」と起動直後に表示されてしまいます。 もう何がなにやら…
364 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 14:59:02 ] >>359 >GETと違ってPOSTはConnector#open()の前にOutputStreamがお約束。 それはない。 参考までにDoJaだと HttpConnection#connect()「リモート資源に実際に接続する。」 てのがあって>>338 の os.close(); と InputStream is = 〜 の間にこれが入る。 このことから(CLDC+MIDPでも同様に考えていいなら)>>345 が言ってることでいいと思う。
365 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 16:33:39 ] >>363 コンパイルにJDKの1.5を使用されていますが、 コンパイルオプションとかって、何をご使用ですか?
366 名前:346 mailto:sage [2006/12/06(水) 18:33:16 ] 自己解決しました JDKを1.4にしたら、あっさり動きました。
367 名前:デフォルトの名無しさん [2006/12/06(水) 19:08:24 ] 待ち受けアプリ作ろうと思って、ドキュメントにあるResidentMIDletクラスを 探してみてもクラスファイルがないんですが、どこにあるのでしょうか?
368 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 19:17:43 ] >>367 JSCL、VSCL、MECA Unit2の中
369 名前:デフォルトの名無しさん [2006/12/06(水) 19:20:03 ] >>368 すみません。そのJSCLの中に入ってないんです。
370 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 19:29:06 ] >>367 com.j_phone.midlet.ResidentMIDlet ???
371 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 19:34:39 ] >>370 そこにあるはずなんですが、zip解凍してもクラスファイルがないんです。もち ろんコンパイルは通りません。
372 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 19:40:15 ] >>371 エミュを再度インストールしなおしてみるとか。 ところで、どのエミュを使用している?
373 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 19:42:37 ] >>372 S! Appli EmuratorとS! MEXA Appli Emurator両方使ってますが、どちらにも入っ てません。一応再インストールはしてみます。さんくすです。
374 名前:デフォルトの名無しさん [2006/12/07(木) 20:51:09 ] Sアプリの本番サーバへアプリをアップした所、”印字エラー”と表示されるとの報告を受けました。何が原因なのでしょうか?
375 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 22:00:01 ] S! Appli EmuratorはMIDP2.0に対応してますか?
376 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 22:09:48 ] >>375 いいえ
377 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 23:23:30 ] >>376 どうも
378 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 05:27:57 ] これで、世界は救われた…
379 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 20:24:53 ] これは酷い
380 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 04:28:25 ] すみません、3G端末なのですが、 透過PNGから生成したイメージの拡大縮小描画では、透過情報も保持されるのでしょうか。 MEXAエミュレータで動作させると、透過されてなかったのです。 エフェクトに白い背景がついてマヌケなことになってました。 実機を持っていないので、すぐに確認することができずちょっと困っています。 JSCL版のエミュレータなら透過されてるようなのですが、機種依存とかあるのかな。 どなたかご教授ください。
381 名前:デフォルトの名無しさん [2006/12/11(月) 07:19:17 ] javaに無知な者です。 中学社会で、○×で問題を出すプログラムを作りたいのですが、どなたか作ってくださる方はいませんか? 本当に分からなくて…。
382 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 08:29:13 ] とりあえず100万からなら考えてもいいかな。
383 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 09:21:49 ] 俺は50万で
384 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 09:24:26 ] 待ってください先生! 僕は45万でできます! 問題と答えは先生が後で追加できる仕様で宜しいでしょうか?
385 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 10:04:23 ] >>381 ゲームの基盤部分の作成は簡単だけど、 問題と答のデータ入力が一番面倒。 でもそれくらいはできるよね。 てか先生なの?
386 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 10:12:52 ] 止めとけよ。 黒板に問題書いて、携帯で回答とか訳のわからない仕様が出てくるぞw
387 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 11:48:21 ] Bad version infomationってエラーが出ます MANIFEST.MFもjadファイルも両方 MIDlet-Version: 1.0 に成ってるのですが…
388 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 17:16:31 ] 絶対に釣られない
389 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 21:28:14 ] >>381 >>384 の仕様でいいなら1万で作るぞ とマジレスしてみる
390 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 00:16:57 ] あんまり派手なダンピング行為はするな! みんながメイワクする
391 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 08:12:20 ] 労働の価値を下げる行為は謹んでもらいたいな(´・ω・`)
392 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 12:09:25 ] まったくだ
393 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 13:53:22 ] 流石に1万はねーよ。実機検証無しとかならまだしも。 普通に(大抵の)機種で動くものということなら、50万くらいだな。
394 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 14:38:34 ] こんなに簡単なら学生が小遣い稼ぎ程度で気軽にできるだろ。
395 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 14:45:13 ] ○×で問題を出すプログラムの授業すればいいんじゃね?
396 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 02:09:35 ] Vodafone(ってかソフトバンク)機って、もしかしてMIDP2.0のJSR75未サポート? データフォルダにアクセスしたい場合は、JSCLやらMEXAやら使わないとダメなのか…
397 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 08:52:35 ] StrageConnectionだっけ
398 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 10:29:18 ] StorageConnectionだろ
399 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 12:13:44 ] ○×のアプリぐらいのものなら実機検証含めて一日かからんだろ
400 名前:デフォルトの名無しさん [2006/12/14(木) 00:14:15 ] S!アプリでMIDlet-Resident: Yにしても待ち受け設定できないんですが、 他にも何かすることがあるんでしょうか?
401 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 22:36:47 ] SoftBankでデータフォルダ内のファイル名一覧を取得してもセキュリティ警告が出ないんだね。 援交とか高校生カップルフェラとか書かれたファイルがたくさんある俺の情報が流出してたらどうしよう… OTL
402 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 22:47:09 ] 次の寝言どうぞ。
403 名前:デフォルトの名無しさん [2006/12/15(金) 20:07:21 ] con = (HttpConnection)Connector.open(url, Connector.READ_WRITE, true); でurlに XXX.XXX.XXX.XXX/index.php?id=test&id2=test2:test3 みたいな文字列をセットするとjava.lang.exception〜って 怒られるんだけどなんで?
404 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 22:21:21 ] ブラウザを作りたいと思っているのですが、 User-Agentを「setRequestProperty」で設定しても、UNTRUSTED/1.0 になってしまいます。 どうすれば、User-Agentを変更できるのでしょうか?
405 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 23:19:53 ] できません。
406 名前:デフォルトの名無しさん mailto:sage [2006/12/16(土) 04:02:21 ] >>405 dクス
407 名前:デフォルトの名無しさん mailto:sage [2006/12/17(日) 17:58:03 ] そういやsoftbankにはフリーのフルブラウザないな…
408 名前:デフォルトの名無しさん mailto:sage [2006/12/17(日) 21:36:03 ] Opera miniがあるじゃないか
409 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 09:50:49 ] >>408 903SHだけど試してみたらダウンロードでエラー落ち
410 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:04:12 ] アプリゲットでオフィシャル登録しないと無理じゃね?
411 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 21:00:35 ] >>410 主語がわかんね
412 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 15:12:52 ] System.getProperty("Platform") これで機種名が表示されない機種ってありますか?
413 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 15:18:20 ] >>412 getPropertyは取得するだけの関数だから、全ての機種で表示されない。
414 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 17:13:04 ] 表示されない→取得できない の間違いです。
415 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 00:15:53 ] public String post(String URL,String str) { byte[] data=null;//送信データ int rs=0; try { HttpConnection htcon = (HttpConnection)Connector.open(URL,Connector.READ_WRITE,true); htcon.setRequestMethod(HttpConnection.POST); htcon.setRequestProperty("Content-Type","application/x-www-form-urlencoded"); OutputStream os = htcon.openOutputStream(); data=str.getBytes(); os.write(data); os.close(); rs=htcon.getResponseCode(); InputStream in = htcon.openInputStream(); int len = (int)htcon.getLength(); if (len<0) len=512; byte[] DATA = new byte[len]; in.read(DATA); in.close(); htcon.close(); return new String(DATA); } catch (Exception e) { System.out.println(e.getClass().getName()); return "通信エラー "+rs+e.getClass().getName(); }} 上のソースでPOST通信をしているんですが、SH系ではうまくいくのにV903Tで行うと java.lang.RuntimeExceptionが発生します。 どこがおかしいのか分かりますでしょうか?
416 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 08:34:26 ] >>340 と>>359 の後半じゃねーの?
417 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 20:11:53 ] >>416 in.read()が一度で全てを読み込むわけではないとのことで 1バイトずつ読み込む用にソースを書き換えました。 int index=0; while (in.read(DATA,index,1)>0) { index++; } これでも同じくjava.lang.RuntimeExceptionが発生しました。 送信部分だけを抜き取った場合はエラーは出ませんでした。 受信部分のどこかでエラーが出るとは思うのですがどこか見当がつきません。 仕様は50文字程度の文字列を送信して20文字程度の文字列を受け取るだけです。 どなたか東芝端末で成功する通信例を教えていただけないでしょうか?
418 名前:デフォルトの名無しさん mailto:sage [2006/12/23(土) 05:02:23 ] >>417 まずどの行でエラーが出てるのか突き止めなよ。 >>415 のtry{}の中、1行ずつ全部にSystem.out.println()書けばわかるだろ。 それから>>417 のindexが最終的にどんな値になったのか(何byte受け取ったのか)確認する。 それが正しければ、次にDATA配列の中身を書き出して、送信元のデータと比較する。
419 名前:418 mailto:sage [2006/12/23(土) 05:05:40 ] >1行ずつ全部にSystem.out.println()書けばわかるだろ。 実機でやるなら画面に書き出すようにした方がいいな。 とにかくまず原因を突き止めようぜ。
420 名前:デフォルトの名無しさん mailto:sage [2006/12/23(土) 13:41:36 ] >>418 check=11; if (len<0) len=512; check=12; byte[] DATA=new byte[len]; 以前に上のように一行ずつint変数に固定の値を入れて結果を見たときは returnの直前までプログラムが通っていました。 今考えるとおそらくreturn new String(DATA)でDATAが空なんじゃないかと思います。 >それから>>417 のindexが最終的にどんな値になったのか(何byte受け取ったのか)確認する。 >それが正しければ、次にDATA配列の中身を書き出して、送信元のデータと比較する。 試してみます。 結果が分かり次第報告します。
421 名前:デフォルトの名無しさん [2006/12/24(日) 11:14:54 ] StorageConnectionを使って、データフォルダのデータを読む3GCのS!アプリを作りましたが、署名の絡みで、ダウンロードできません。 V905SH、V904T、V803T、V705Tではダウンロードでき、起動は成功しますが、他機種はダウンロードできません。 アプリゲットにデータフォルダのデータを読む3GCのS!アプリが2つあり、他機種(SB910SH)でもダウンロードできました。 全機種に署名が機能するような、MANIFESTとJADファイルの指定のしかたをご存知の方、教えてください。
422 名前:デフォルトの名無しさん mailto:sage [2006/12/24(日) 12:21:54 ] KToolBar まかせにすればいいんじゃね? あとは日本語・記号を全部外してみるとか。
423 名前:デフォルトの名無しさん [2006/12/25(月) 13:39:08 ] >>422 JADファイルの内容は以下の通りです。間違いがあるでしょうか? MIDlet-1: aaaaaaaaaaaa, , aaaaaaaaaaaa.aaaaaaaaaaaa MIDlet-Data-Size: 5000 MIDlet-Description: ddddddddd d ddddd dddddd, ddddd, ddddd dddddddd dd ddd ddddddddd MIDlet-Jar-Size: 55834 MIDlet-Jar-URL: aaaaaaaaaaaa.jar MIDlet-Name: aaaaaaaaaaaa MIDlet-Permissions: com.j_phone.io.Connector.StorageConnection.read,com.j_phone.io.FileUtility.read,com.j_phone.system.DeviceControl.read MIDlet-Vendor: vvvvv MIDlet-Version: 3.9.0 MIDxlet-API: JSCL-1.2.2 MIDxlet-Network: N MIDxlet-Resident: N MIDxlet-ScreenSize: 240,320 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0
424 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 15:18:28 ] >>423 MIDlet-Description 削除したらできたりして、 わからんスマソ ひよこめもりーず: Vodafone 3GCダウンロードトラブル対策(第2版) ttp://memories.cocolog-nifty.com/diary/2006/03/vodafone_3gc_9f2a.html
425 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 18:52:56 ] とりあえず、アプリダウンロードに署名は関係なくね?
426 名前:デフォルトの名無しさん [2006/12/25(月) 20:40:15 ] マニュアルによると、 MIDxlet-ScreenSize: 240,320 でもいい筈だけど、 MIDxlet-ScreenSize: 480,520 に変えたら、上手くDLできました。機種毎に指定を変えないといけないかも?
427 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 23:08:33 ] MIDxlet-ScreenSize: 240,260だよ
428 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 01:36:36 ] >>427 のいっているとおり、普通は240,260を指定する。 そもそも、240x320に対応しているQVGA端末では 804NK(論外携帯)でフルスクリーンモードにしたときだけだな。 他に対応しているとしたら、WQVGA携帯の905SHか911SH。 後、試していないから分からんが、VGA端末の904SH、910SH、810SH、811SHかな。
429 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 11:12:01 ] MIDxlet-ScreenSize 複数指定できたら良いのにな 〜専用ってやりたくないから結局 240,260 にしてしまう
430 名前:デフォルトの名無しさん [2006/12/26(火) 17:02:48 ] QVGAのV905SH、V904T、V803T、V705Tは、MIDxlet-ScreenSize:240,320で、 VGAのSB910SHは、480,520でDLできました。240,260でもDLできましたが、画像は荒くなります。
431 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 23:36:04 ] MIDxlet-ScreenSize:0,0 で機種ごとにデフォルトの画面サイズになる
432 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 00:46:03 ] >>431 それなら別にScreenSize自体を記述する必要がない。 MIDxlet-ScreenSize: 240,260 を記述するのはVGA端末などを共通の画面サイズに合わせるためなのだから。
433 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 02:39:33 ] 描画エリアが小さい→0,0って書け、ってよくFAQ載ってないっけ。 パーツのサイズと位置が決まってるなら240,260とか書いて フレキシブルなら0,0って書くのがいいと思ってた。
434 名前:432 mailto:sage [2006/12/27(水) 11:24:21 ] >>433 それは2.5G(MIDP1.0)時代の話だ。 J-53SHとかで MIDlet-Application-Range: 0,0 を付けなかった場合、画面サイズが標準で120x130になってしまうやつのことだろ。 3GC(MIDP2.0)になってから、MIDlet-Application-Rangeは認識しなくなり MIDxlet-ScreenSizeを使用することになったわけだ。 なお、3GCのQVGA端末ならデフォルトで240x260は保障されていると思われる。 VGA端末が出るまで、俺MIDxlet-ScreenSizeを記述していなかったし。 MIDlet-Application-RangeからMIDxlet-ScreenSizeへの変更点は ttp://www2.developers.softbankmobile.co.jp/dp/tool_dl/download.php?docid=304&companyid= を開いて、「変更するMIDlet属性値一覧」で検索すりゃでてくるから、よく読んどけ。
435 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 11:40:00 ] MIDxlet-ScreenSize:0,0 でも、記載無しでもどっちでも大丈夫なんだから 無理に自分の意見を押し付けないように
436 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 12:05:41 ] VGA化は困るけどQVGAとWQVGAに画面フルで表示させるにはどう指定したらよい?
437 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 12:39:28 ] 706SCなどのSAMSUNGの端末でdrawRegionするとフリーズするのですが、 なぜでしょうか。
438 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 12:45:11 ] >>437 GraphicsUtilクラスを使用することができないから。 端末資料読んでみ。
439 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 03:44:23 ] drawRGBってMIDP2.0搭載の全ての機種で使える訳じゃないんですか?
440 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 10:07:23 ] 端末資料読んでみ。
441 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 10:33:20 ] >>439 3GC端末ならMIDP2.0の機能はほぼ全て使用できる考えて問題ない。
442 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 10:53:59 ] >>440 端末資料のどこにも書いていないから使えると思えってやつか・・・。
443 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 15:00:07 ] 905SHでdrawRGBに半透明を指定すると描画されないんですけど仕様ですか?
444 名前:デフォルトの名無しさん mailto:sage [2006/12/28(木) 18:37:04 ] 携帯ゲーム作ってるんだけど mmfファイルをキーが押されるたびに再生すると時々フリーズする。 player.play()を消すとフリーズしない どうしてフリーズする?教えて public void playSound(int key){ try{ SmafData sound = null; switch(key){ case 0: sound = new SmafData("/sound/1.mmf"); break; case 1: sound = new SmafData("/sound/2.mmf"); break; case 2: sound = new SmafData("/sound/3.mmf"); break; case 3: sound = new SmafData("/sound/4.mmf"); break; case 4: sound = new SmafData("/sound/5.mmf"); break; case 5: sound = new SmafData("/sound/6.mmf"); break; case 6: sound = new SmafData("/sound/7.mmf"); break; case 7: sound = new SmafData("/sound/8.mmf"); break; case 8: sound = new SmafData("/sound/9.mmf"); break; case 9: sound = new SmafData("/sound/10.mmf"); break; default: break; } player.stop(); player.setData(sound); player.play(); } catch (Exception e) {} }
445 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 00:24:37 ] 押されたタイミングでインスタンス生成しないで あらかじめ生成してあるものをplayしましょう
446 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 00:25:40 ] >>444 質問のレベルが低すぎて笑えるw
447 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 00:41:02 ] 上級者キタ━━━━(゚∀゚)━━━━ !!
448 名前:444 mailto:sage [2006/12/29(金) 01:01:35 ] 質問のレベルが低すぎてすいませんでしたね >>445 のやり方でもフリーズしまつ
449 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 01:39:00 ] >>444 なんかいろんなところが変 ttp://www.saturn.dti.ne.jp/~npaka/kvm/midp2/SmafPlayerEx/index.html ここ見てまずは一音だけからやり直したら?
450 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 01:42:28 ] 知っている方がおられましたら教えてください。 S!アプリ改春ガイド端末情報MIDP2.0対応端末Pert3 の機種904SH、905SH部分で com.jblend.graphicsj3d.Textture.Texture(Image image,boolean isForModel) という隠しAPIが○となっています。 ImageからTextureが作れるようになったのか!と思い 試しにstubclasses.zipにスタブを追加してコンパイルし 実機で動作させたところエラーとなります。 これを使用したいのですが何か情報をお持ちの方いませんでしょうか? ちなみにMEXA1.1の機種では引数が異なりますが存在(さらに位置指定あり)しています。 MEXA1.1の機種:ソフトバンク2006冬モデル
451 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 03:12:09 ] >>com.jblend.graphicsj3d.Textture.Texture(Image image,boolean isForModel) 根本的にコンストラクタって知ってるか? クラス名と同じメソッドは何になるか分かるか? ってレベル?? どちらにしても実機が投げてる例外見れば分かるんじゃない?最近こういう書き込み多いな
452 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 07:56:40 ] >>444 >>449 が言うようにmmfファイルの鳴らし方以前にプログラミング的に変だよ。 keyの値に0〜9以外が来たら player.setData(sound); でnullをセットして 鳴らすことになってるし、 soundの有効範囲がtry{}の中だけになってるし。
453 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 13:21:35 ] だがそれでいい
454 名前:デフォルトの名無しさん [2006/12/29(金) 17:09:46 ] softbankのサイトを見てもJSCL1.3.2用のエミュレーターしかないんですが 古いバージョンのエミュレーターをダウンロードするにはどうすればよいのでしょうか?
455 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 17:13:19 ] 古いの必要か? 1.3.2だけで問題ないだろう。
456 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 17:18:34 ] そうなんですが、JSCL1.2.2で動いてたのが1.3.2にしたら動かなくなったもので・・・
457 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 18:24:33 ] 454です。 開発の参考にもらったアプリがJSCL1.2用で、jad/jarファイルしかありません。 これをリビルドなしで1.3.2のエミュレーターで動かすことは可能でしょうか? それかJSCL1.2のエミュレーターを調達するのとどちらが早いんでしょうか? 動作確認が出来ればそれでいいのですが・・・
458 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 20:04:04 ] MEXAのエミュレータもあるですよ。 MIDP2.0系をやるならMEXAじゃないとだめですよ JSCL1.3.2のエミュはMIDP1.0系のみなのですよ。
459 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 21:26:02 ] ありがとう!MEXAでやったら動きました。 よかった、これで仕事が進められる・・・年内に終わればいいなぁ
460 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 22:05:59 ] すんなりMEXAエミュを使うとは、なかなかのやり手だな。
461 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 22:20:09 ] そんな俺は未だにBad Version Infomationに悩まされてる落ち
462 名前:デフォルトの名無しさん mailto:sage [2006/12/30(土) 01:36:31 ] >>444 フリーズするのはエミュレータかな? エミュレータでは、mmfのstopとかplayを連続して実行するとフリーズするよ。 100msくらいウェイト入れないとダメ。