CLDC+MIDP+携帯電話用Javaスレッド part 6at TECH
CLDC+MIDP+携帯電話用Javaスレッド part 6 - 暇つぶし2ch397:デフォルトの名無しさん
06/12/13 08:52:35
StrageConnectionだっけ

398:デフォルトの名無しさん
06/12/13 10:29:18
StorageConnectionだろ

399:デフォルトの名無しさん
06/12/13 12:13:44
○×のアプリぐらいのものなら実機検証含めて一日かからんだろ

400:デフォルトの名無しさん
06/12/14 00:14:15
S!アプリでMIDlet-Resident: Yにしても待ち受け設定できないんですが、
他にも何かすることがあるんでしょうか?

401:デフォルトの名無しさん
06/12/14 22:36:47
SoftBankでデータフォルダ内のファイル名一覧を取得してもセキュリティ警告が出ないんだね。
援交とか高校生カップルフェラとか書かれたファイルがたくさんある俺の情報が流出してたらどうしよう… OTL

402:デフォルトの名無しさん
06/12/14 22:47:09
次の寝言どうぞ。

403:デフォルトの名無しさん
06/12/15 20:07:21
con = (HttpConnection)Connector.open(url, Connector.READ_WRITE, true);
でurlに
URLリンク(XXX.XXX.XXX.XXX)
みたいな文字列をセットするとjava.lang.exception~って
怒られるんだけどなんで?

404:デフォルトの名無しさん
06/12/15 22:21:21
ブラウザを作りたいと思っているのですが、
User-Agentを「setRequestProperty」で設定しても、UNTRUSTED/1.0
になってしまいます。
どうすれば、User-Agentを変更できるのでしょうか?

405:デフォルトの名無しさん
06/12/15 23:19:53
できません。

406:デフォルトの名無しさん
06/12/16 04:02:21
>>405
㌧クス

407:デフォルトの名無しさん
06/12/17 17:58:03
そういやsoftbankにはフリーのフルブラウザないな…

408:デフォルトの名無しさん
06/12/17 21:36:03
Opera miniがあるじゃないか

409:デフォルトの名無しさん
06/12/18 09:50:49
>>408
903SHだけど試してみたらダウンロードでエラー落ち

410:デフォルトの名無しさん
06/12/18 18:04:12
アプリゲットでオフィシャル登録しないと無理じゃね?

411:デフォルトの名無しさん
06/12/18 21:00:35
>>410
主語がわかんね

412:デフォルトの名無しさん
06/12/19 15:12:52
System.getProperty("Platform")
これで機種名が表示されない機種ってありますか?

413:デフォルトの名無しさん
06/12/20 15:18:20
>>412
getPropertyは取得するだけの関数だから、全ての機種で表示されない。

414:デフォルトの名無しさん
06/12/20 17:13:04
表示されない→取得できない
の間違いです。

415:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/12/21 08:34:26
>>340>>359の後半じゃねーの?

417:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/12/23 05:02:23
>>417
まずどの行でエラーが出てるのか突き止めなよ。
>>415のtry{}の中、1行ずつ全部にSystem.out.println()書けばわかるだろ。

それから>>417のindexが最終的にどんな値になったのか(何byte受け取ったのか)確認する。
それが正しければ、次にDATA配列の中身を書き出して、送信元のデータと比較する。

419:418
06/12/23 05:05:40
>1行ずつ全部にSystem.out.println()書けばわかるだろ。
実機でやるなら画面に書き出すようにした方がいいな。

とにかくまず原因を突き止めようぜ。

420:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/12/24 11:14:54
StorageConnectionを使って、データフォルダのデータを読む3GCのS!アプリを作りましたが、署名の絡みで、ダウンロードできません。
V905SH、V904T、V803T、V705Tではダウンロードでき、起動は成功しますが、他機種はダウンロードできません。
アプリゲットにデータフォルダのデータを読む3GCのS!アプリが2つあり、他機種(SB910SH)でもダウンロードできました。
全機種に署名が機能するような、MANIFESTとJADファイルの指定のしかたをご存知の方、教えてください。


422:デフォルトの名無しさん
06/12/24 12:21:54
KToolBar まかせにすればいいんじゃね?
あとは日本語・記号を全部外してみるとか。


423:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/12/25 15:18:28
>>423
MIDlet-Description 削除したらできたりして、
わからんスマソ
 ひよこめもりーず: Vodafone 3GCダウンロードトラブル対策(第2版)
 URLリンク(memories.cocolog-nifty.com)

425:デフォルトの名無しさん
06/12/25 18:52:56
とりあえず、アプリダウンロードに署名は関係なくね?

426:デフォルトの名無しさん
06/12/25 20:40:15
マニュアルによると、
MIDxlet-ScreenSize: 240,320
でもいい筈だけど、
MIDxlet-ScreenSize: 480,520
に変えたら、上手くDLできました。機種毎に指定を変えないといけないかも?


427:デフォルトの名無しさん
06/12/25 23:08:33
MIDxlet-ScreenSize: 240,260だよ

428:デフォルトの名無しさん
06/12/26 01:36:36
>>427のいっているとおり、普通は240,260を指定する。
そもそも、240x320に対応しているQVGA端末では
804NK(論外携帯)でフルスクリーンモードにしたときだけだな。

他に対応しているとしたら、WQVGA携帯の905SHか911SH。
後、試していないから分からんが、VGA端末の904SH、910SH、810SH、811SHかな。


429:デフォルトの名無しさん
06/12/26 11:12:01
MIDxlet-ScreenSize 複数指定できたら良いのにな
~専用ってやりたくないから結局 240,260 にしてしまう

430:デフォルトの名無しさん
06/12/26 17:02:48
QVGAのV905SH、V904T、V803T、V705Tは、MIDxlet-ScreenSize:240,320で、
VGAのSB910SHは、480,520でDLできました。240,260でもDLできましたが、画像は荒くなります。

431:デフォルトの名無しさん
06/12/26 23:36:04
MIDxlet-ScreenSize:0,0
で機種ごとにデフォルトの画面サイズになる

432:デフォルトの名無しさん
06/12/27 00:46:03
>>431
それなら別にScreenSize自体を記述する必要がない。
MIDxlet-ScreenSize: 240,260
を記述するのはVGA端末などを共通の画面サイズに合わせるためなのだから。


433:デフォルトの名無しさん
06/12/27 02:39:33
描画エリアが小さい→0,0って書け、ってよくFAQ載ってないっけ。
パーツのサイズと位置が決まってるなら240,260とか書いて
フレキシブルなら0,0って書くのがいいと思ってた。


434:432
06/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への変更点は

URLリンク(www2.developers.softbankmobile.co.jp)

を開いて、「変更するMIDlet属性値一覧」で検索すりゃでてくるから、よく読んどけ。


435:デフォルトの名無しさん
06/12/27 11:40:00
MIDxlet-ScreenSize:0,0
でも、記載無しでもどっちでも大丈夫なんだから
無理に自分の意見を押し付けないように

436:デフォルトの名無しさん
06/12/27 12:05:41
VGA化は困るけどQVGAとWQVGAに画面フルで表示させるにはどう指定したらよい?


437:デフォルトの名無しさん
06/12/27 12:39:28
706SCなどのSAMSUNGの端末でdrawRegionするとフリーズするのですが、
なぜでしょうか。


438:デフォルトの名無しさん
06/12/27 12:45:11
>>437
GraphicsUtilクラスを使用することができないから。
端末資料読んでみ。

439:デフォルトの名無しさん
06/12/28 03:44:23
drawRGBってMIDP2.0搭載の全ての機種で使える訳じゃないんですか?

440:デフォルトの名無しさん
06/12/28 10:07:23
端末資料読んでみ。


441:デフォルトの名無しさん
06/12/28 10:33:20
>>439
3GC端末ならMIDP2.0の機能はほぼ全て使用できる考えて問題ない。


442:デフォルトの名無しさん
06/12/28 10:53:59
>>440
端末資料のどこにも書いていないから使えると思えってやつか・・・。

443:デフォルトの名無しさん
06/12/28 15:00:07
905SHでdrawRGBに半透明を指定すると描画されないんですけど仕様ですか?

444:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/12/29 00:24:37
押されたタイミングでインスタンス生成しないで
あらかじめ生成してあるものをplayしましょう

446:デフォルトの名無しさん
06/12/29 00:25:40
>>444
質問のレベルが低すぎて笑えるw

447:デフォルトの名無しさん
06/12/29 00:41:02
上級者キタ━━(゚∀゚)━━ !!

448:444
06/12/29 01:01:35
質問のレベルが低すぎてすいませんでしたね
>>445のやり方でもフリーズしまつ

449:デフォルトの名無しさん
06/12/29 01:39:00
>>444
なんかいろんなところが変
URLリンク(www.saturn.dti.ne.jp)
ここ見てまずは一音だけからやり直したら?

450:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/12/29 03:12:09
>>com.jblend.graphicsj3d.Textture.Texture(Image image,boolean isForModel)
根本的にコンストラクタって知ってるか?
クラス名と同じメソッドは何になるか分かるか?

ってレベル??
どちらにしても実機が投げてる例外見れば分かるんじゃない?最近こういう書き込み多いな

452:デフォルトの名無しさん
06/12/29 07:56:40
>>444
>>449が言うようにmmfファイルの鳴らし方以前にプログラミング的に変だよ。

keyの値に0~9以外が来たら player.setData(sound); でnullをセットして
鳴らすことになってるし、
soundの有効範囲がtry{}の中だけになってるし。

453:デフォルトの名無しさん
06/12/29 13:21:35
だがそれでいい

454:デフォルトの名無しさん
06/12/29 17:09:46
softbankのサイトを見てもJSCL1.3.2用のエミュレーターしかないんですが
古いバージョンのエミュレーターをダウンロードするにはどうすればよいのでしょうか?

455:デフォルトの名無しさん
06/12/29 17:13:19
古いの必要か?
1.3.2だけで問題ないだろう。

456:デフォルトの名無しさん
06/12/29 17:18:34
そうなんですが、JSCL1.2.2で動いてたのが1.3.2にしたら動かなくなったもので・・・

457:デフォルトの名無しさん
06/12/29 18:24:33
454です。
開発の参考にもらったアプリがJSCL1.2用で、jad/jarファイルしかありません。
これをリビルドなしで1.3.2のエミュレーターで動かすことは可能でしょうか?
それかJSCL1.2のエミュレーターを調達するのとどちらが早いんでしょうか?
動作確認が出来ればそれでいいのですが・・・

458:デフォルトの名無しさん
06/12/29 20:04:04
MEXAのエミュレータもあるですよ。

MIDP2.0系をやるならMEXAじゃないとだめですよ

JSCL1.3.2のエミュはMIDP1.0系のみなのですよ。

459:デフォルトの名無しさん
06/12/29 21:26:02
ありがとう!MEXAでやったら動きました。
よかった、これで仕事が進められる・・・年内に終わればいいなぁ

460:デフォルトの名無しさん
06/12/29 22:05:59
すんなりMEXAエミュを使うとは、なかなかのやり手だな。

461:デフォルトの名無しさん
06/12/29 22:20:09
そんな俺は未だにBad Version Infomationに悩まされてる落ち

462:デフォルトの名無しさん
06/12/30 01:36:31
>>444
フリーズするのはエミュレータかな?
エミュレータでは、mmfのstopとかplayを連続して実行するとフリーズするよ。
100msくらいウェイト入れないとダメ。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch