[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 07/05 19:48 / Filesize : 320 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

CLDC+MIDP+携帯電話用Javaスレッド part 3



1 名前:デフォルトの名無しさん mailto:sage [04/08/06 22:21]
J2ME CLDC+MIDPベースの携帯電話用Java(主にEZアプリ、Vアプリ)に関するスレッドです。
質問でも議論でも何でもこい、と。

前スレ:
CLDC+MIDP+携帯電話用Javaスレッド part 2
pc5.2ch.net/test/read.cgi/tech/1070858996/

過去スレ
携帯JAVAのスレッド
pc2.2ch.net/test/read.cgi/tech/1011977260/(DAT落ち)

--
Java一般に関しては:
【初心者】Java質問・相談スレ51【大歓迎】
pc5.2ch.net/test/read.cgi/tech/1091770298/

NTT DoCoMoのiモード携帯電話用Java(iアプリ)については:
iモード携帯電話用Java(iアプリ) Part 6
pc5.2ch.net/test/read.cgi/tech/1091286071/

>>2-5あたりにリンク集

252 名前:248 mailto:sage [04/09/11 12:45:05]
m3DPrgV_201.pdfはテキスト出力できるpdfだったので、
どうにか助かりました。

253 名前:デフォルトの名無しさん mailto:sage [04/09/12 00:09:55]
>>247
自前で実装・・・

自分でそのソースを書くってことですか?
それともどこかからひっこ抜いてくるってことですか?

254 名前:なっち(○´ー`○) mailto:sage [04/09/12 01:10:32]
>>253
J2SEのソースのぞいてみて。java/net/URLEncoder.java

255 名前:デフォルトの名無しさん mailto:sage [04/09/12 13:17:57]
>>254
レスサンクス
これでさらにimportに書かれてるやつもコピーすればいいのですか?

よく分からなくてスミマセン。。

256 名前:デフォルトの名無しさん mailto:sage [04/09/12 13:19:29]
>>255 コピーはライセンス上いかん。
と一応いっておく。

257 名前:デフォルトの名無しさん mailto:sage [04/09/12 14:05:03]
まあ、誰が書いても大差ないコードができるけどw

258 名前:243 mailto:sage [04/09/12 20:28:19]
VS.netでMobileWebApplicationとか作ると
てがっきーから解放されてあまりの楽さにうつつを抜かしてました。
最悪コピペするかな…?

259 名前:デフォルトの名無しさん [04/09/12 20:31:55]
Vodafone(P5型)のアプリでリストを作成し、
そのリスト表示する処理を作ろうとしています。
MIDPでListというクラスがあったので、使ってみた
のですが、リストの表示画面が白黒でショボイので
使い物になりません。

みなさんはリストの表示処理を、どんな方法で行って
いますか?自分でリストの文字列やカーソルを作成し、
描画をしているのでしょうか?



260 名前:デフォルトの名無しさん mailto:sage [04/09/12 23:43:45]
>>259
>使い物になりません。
と思ったら、自分で作れば良いだけのこと。




261 名前:なっち(○´ー`○) mailto:sage [04/09/13 01:39:23]
>>255
>これでさらにimportに書かれてるやつもコピーすればいいのですか?

てなことをやっていると
とんでもないサイズのライブラリが出来かねないので
あくまで参考にして自分で書き起こすのがよいのでは。

262 名前:デフォルトの名無しさん mailto:sage [04/09/13 01:40:48]
>>259
> 自分でリストの文字列やカーソルを作成し、
> 描画をしているのでしょうか?
やってますが何か?

263 名前:デフォルトの名無しさん mailto:sage [04/09/13 21:58:09]
>>262
やはりみんな自分でリストを作成していましたか。
僕も自分でリストを作成してみます。


264 名前:デフォルトの名無しさん mailto:sage [04/09/14 13:36:00]
質問です。
ネット上のBMP画像を取り込んで、
それをテクスチャに使うことは可能でしょうか?

265 名前:デフォルトの名無しさん mailto:sage [04/09/14 14:43:23]
すくなくとも、自分でレンダリングエンジンを作れば可能だな。

266 名前:デフォルトの名無しさん mailto:sage [04/09/14 23:10:30]
現在、待ち受けアプリを製作しているのですが、
C4型にて奇妙な現象が起こりました。

あるアプリダウンロードサイト(A)ではダウンロードできるのですが、
別のサイト(B)では落とすことができません。
最終的にはBのサイトにアップする必要があるので、困っています。

状況として、、、
・ほぼ同等の機能を持つP4、P5版のアプリはA・B両方のサイトから問題なく落とせる。
・C4版のJAR、JAD、レコードストアの合計サイズは50000バイト以下。(容量の問題ではなさそうです)
・ある端末ではダウンロード選択後、何も出てこない。
・別のある端末では、ダウンロード選択後に"JARが見つかりません"みたいなメッセージが出る。
 (もちろん、JARファイルもJADと一緒にアップしました)

いったい何が原因なのでしょうか?

267 名前:デフォルトの名無しさん mailto:sage [04/09/15 01:22:35]
>>266
MIDlet-OCLが書いてないとおかしくなるような仕様変更があったとかいう話が過去ログにあったような気がする。
とりあえずこれ書いて再度テストしてみて。
MIDlet-OCL: JOCL-1.0.0

ちなみに、あるアプリダウンロードサイト(A|B))とか書かれても、
どうせ一般向けのは2つしかないんだし・・・

268 名前:なっち(○´ー`○) mailto:sage [04/09/15 01:26:26]
アプリゲットなら
審査通知メール見る方がはやいね。
多分はじかれてるよ。

269 名前:266 mailto:sage [04/09/15 09:01:47]
レスありがとうございます。

>267
それは書いてあります。
確認しました。

>268
アプリゲットはダウンロードできるほう(A)です。
週刊ゲーム&アプリLiveにアップしたものがうまくいきません。

追記ですが、他のC4アプリは問題なくアップ&ダウンロードできます。

270 名前:デフォルトの名無しさん mailto:sage [04/09/16 15:47:07]
今EZアプリをつくろうと試みてはいるもの
どうにもアクションなどのMAPの書き方がわからないのですが
どなたか教えてもらえないでしょうか?
int[][] map={
{0,0,0},
//省略
{1,2,3}}
コンストラクタで画像の取得
画像の表示の仕方が不明…
public void paint(Graphics g){
int no;
for(int j=0;j<3;j++){
for(int i=0;i<3;i++){
no = map[j][i];
g.drawImage(img[no], 64*i,64*j,?);
}
}
こんな感じでやっていたのですが




271 名前:デフォルトの名無しさん mailto:sage [04/09/16 16:22:22]
>270
基本的な枠組みはそれで合ってると思うんだが
何が問題なんだ?

272 名前:270 mailto:sage [04/09/16 20:38:58]
すみませんorz
コンストラクタ内の画像取得のところでミスをしていました
try{
for(int i=0;i<=8;i++){
img[i]=Image.createImage("/"i.PNG");
}
}catch(Exception e){}
としていてi.PNGしか読み込んでなかったです
お騒がせしました

273 名前:デフォルトの名無しさん [04/09/16 21:52:53]
ちょっと質問させてください。
レコードストアのsetRecordって、対象のレコード全体を書き換えるものなんですか?
1レコード内でデータを分割して、必要な部分だけ保存しようと思ってるんですが、
レコード用のバッファを別に用意しなきゃだめですか?

274 名前:デフォルトの名無しさん mailto:sage [04/09/16 22:30:53]
JSR172ってもう実装出回ってたのか...

275 名前:デフォルトの名無しさん mailto:sage [04/09/16 22:43:44]
>>273
そういうことになるね。
俺がやってるやり方だと
byte[] rs_bufferで長さはレコードの長さだけ
んでこのrs_bufferにSystem.arraycopy()を使えば部分的なデータの書き込みは簡単にできる。
あとはrs_bufferを第2引数に指定してsetRecord。
他にいいやり方知ってる人いたら教えてくださいな。

276 名前:273 [04/09/16 23:41:32]
>275
勉強になりました。
ありがとうございます。

System.arraycopy()の使い方勉強しなくちゃ…

277 名前:デフォルトの名無しさん mailto:sage [04/09/16 23:44:58]
現在Vodafoneの待ち受けアプリを作成しているのですが
テスト中にどうも対応の仕方が不明な不具合が出てしまいました

【現象】
自作待ち受けアプリを待ちうけ設定にして携帯を閉じた状態にしておいて
アラーム、メール着信時に携帯を開くとアプリがうまく動作しない
着信を止めるとアプリがエラー終了する
着信が終わるのを待つとアプリが起動し正常動作する

ちなみに開いた状態で着信を受けたとき、閉じ状態でも電話着信のときは
正常動作します

同じような現象を確認したかたいらっしゃいましたら
回避方法を教えてください

278 名前:デフォルトの名無しさん mailto:sage [04/09/16 23:58:59]
Vアプリの256kはマスカプver3だというのを、んぱかで見たのですが、
Vアプリってプリミティブ(点・線・三角とか)使えます?
開発ツールのJavadoc、サブクラスとかには入ってなかったのですが、
com.jblend.graphics.j3dにEZのm3dのを入れてコンパイルできたら
実は実機では動くとかってありますか?

今プリミティブだけでちょっとした3D作れないかと考えてるんですが・・。
モデリングツールとか手が届かないですし・・。

279 名前:デフォルトの名無しさん mailto:sage [04/09/17 09:50:48]
>>277
P4型、P5型、P6型、W型のどれ?
実機で確認していると思うんだけど、
どのメーカーのでも発生するの?


280 名前:277 mailto:sage [04/09/17 21:09:04]
>>279
実機はSH53を使用しています
他の機種ではまだ確認していないです
身近に別の機種を持ったテストを頼める人間がいないもので...



281 名前:277 mailto:sage [04/09/17 23:15:23]
一応

MIDlet-Resident: Y

MIDlet-Resident: S

とすることで回避はできることがわかりました
が、私はP4,P5機種をターゲットで考えていたので
上記設定で問題回避することはできません...

282 名前:277 mailto:sage [04/09/18 00:01:35]
何度もすいません
仕方なくユーザーが任意の一時停止動作(閉じるor電源ボタン押下)
の場合はアプリを終了するようにしました

終了状態の場合開ける動作による復帰よりも早く
ネイティブの着信処理が走るため一応形としてはエラー終了がなくなりました

283 名前:デフォルトの名無しさん mailto:sage [04/09/18 01:16:41]
イベント発生タイミングで、ぬるぽができてるだけじゃないのかなぁ。
「エラー終了」って、要するに例外が発生して、それを捕まえてないってことでしょ?
なんか「エラー終了」って言葉使うあたりで例外ハンドリングの甘さが漂うんだけど。

284 名前:デフォルトの名無しさん mailto:sage [04/09/18 10:54:35]
一時停止時の処理からの復帰に変なのを書いてるだけのような気がするんだけど、どうかな。

大まかには
> アプリがエラー終了する
から、例外スルーで間違いないでしょ。
たとえば、アドレス帳登録されてないとこからの着信時は名前がnullになるとか。

285 名前:デフォルトの名無しさん [04/09/18 21:31:08]
EzPlusで、
www.crosslanguage.co.jp/webdic/webdic.htmlを利用するプログラムを作ろうと思ってるのですが、
www.crosslanguage.co.jp/webdic/webdicc.cgi?adrs=moe@2ch.net&word=萌え&lang=x&dic=BASE&magazine=yes
のようなURLで
c =(HttpConnection)Connector.open(url);
in=c.openInputStream();
byte[] data=new byte[(int)c.getLength()];
とすると、c.getLength()が-1になってしまいます。
urlを他のサイトに変えてみると問題なく動くのですが、
何がいけないのでしょうか?



286 名前:デフォルトの名無しさん mailto:sage [04/09/18 22:23:48]
シューティングの背景のスクロールはどのようにしたらいいのでしょう?
画面を少しずつずらしていくものなのでしょか

287 名前:デフォルトの名無しさん mailto:sage [04/09/18 23:37:12]
それをスクロールと呼ぶのではないのかね

288 名前:デフォルトの名無しさん mailto:sage [04/09/18 23:40:02]
>>286
DoCoMoの例だけど、参考になるはず。
pc5.2ch.net/test/read.cgi/tech/1091286071/258-262

289 名前:デフォルトの名無しさん mailto:sage [04/09/19 05:40:34]
>>285
サーバ側のContentLength設定次第なので普通に起こりえることだよ。
byte[] data;
int len = (int)c.getLength();
if (len == -1) data = new byte[256];
else data = new byte[len];
とでもすればいいかと。それでin.read()をループ。

>>286
RPGのマップのようなマス目単位の背景をスクロールさせるなら>>288のURL先へ。
1枚の長ーい背景をスクロールさせる場合は、その背景を適当な長さで分割しておき、
読み込み→ずらして表示→画像の端まで来たら続きを読み込み→…と繰り返していく。

290 名前:277 mailto:sage [04/09/19 10:52:14]
>>283
例外処理をおろそかにしていたのでちゃんとやってみます

>>284
具体的には一時停止状態にする場合Threadを停止していないせいだと思います

とりあえず閉じ状態からの着信があった場合のイベント処理順番は
依然として不明のままです...



291 名前:285 mailto:sage [04/09/19 11:39:57]
できました!
多謝 多謝!

292 名前:デフォルトの名無しさん mailto:sage [04/09/19 15:19:20]
MIDPって正規表現使えないのか… orz

293 名前:286 mailto:sage [04/09/19 18:45:05]
>>288,289様
なんとかできそうです。
ありがとうございました。


294 名前:デフォルトの名無しさん mailto:sage [04/09/20 11:45:33]
当方java初心者です。

質問があります。
LISTのカスタマイズ(継承)の話が上であったと思うのですが、
javadocをみながら継承している流れを追ったりしてみましたが、
イマイチどう、カーソルやリストを作成すればいいのかイメージが
わきません。
LISTを継承して拡張するような方向で考えているのですが、
背景を変えたりすること自体がCanvasクラスでの方法しか思いつかず
四苦八苦しています・・・

ヒントをいただけたら幸いです

295 名前:デフォルトの名無しさん mailto:sage [04/09/20 15:38:49]
>>294
Listなど、MIDPのUIクラスの描画は実装によって行われる。
つまり、実装依存であり、その描画内容などをプログラムから取得したり変更したりするすべはない。

296 名前:デフォルトの名無しさん mailto:sage [04/09/20 15:40:28]
というか、リストなんて一から自分で書いても大して難しくもないと思いますが。

297 名前:294 mailto:sage [04/09/20 16:01:14]
ああ、UIコンポーネントはみな実装依存か、、、
分かりました。一から作成するほうで考えて見ます。

どうもありがとうございました

298 名前:デフォルトの名無しさん [04/09/20 22:03:45]
short型の数字をbyte[]に変換したいのですが、どうすればいいでしょうか?

byte[]に変換したいのはRecordStoreに保存したいからです。

299 名前:デフォルトの名無しさん mailto:sage [04/09/20 23:58:44]
>>298
前スレにそんな話題がでてた希ガス

300 名前:デフォルトの名無しさん mailto:sage [04/09/21 00:33:25]
>>298
ビット幅気にしないのなら無理矢理キャストすればいい。
気にするなら、たとえばオレのやってるの

(int valueをtmpに入れる場合)
byte[] tmp = new byte[4];
tmp[0] = (byte)value; value>>=8;
tmp[1] = (byte)value; value>>=8;
tmp[2] = (byte)value; value>>=8;
tmp[3] = (byte)value;



301 名前:298 mailto:sage [04/09/21 09:35:02]
>>300さん
ありがとうございます。
これって符号もオッケイなんでしょうか?
一応±32000くらいまでを扱うつもりなので。
shortなので、
tmp[0] = (byte)value; value>>=8;
tmp[1] = (byte)value;
でやってみます。
ありがとうございました。
#とはいえちょっとしばらくは手がつけられなかったり…

302 名前:デフォルトの名無しさん mailto:sage [04/09/22 22:16:52]
ttp://k-tai.impress.co.jp/cda/article/news_toppage/20667.html

MIDP2.0、とうとうボダで出るのか

303 名前:デフォルトの名無しさん mailto:sage [04/09/22 22:27:31]
こっちは一般公開されなさそうな気がする。

304 名前:デフォルトの名無しさん [04/09/22 22:52:44]
shortで間に合う範囲を
intでやるのとlongでやるのだとやっぱり実行速度も
short > int > long
になるんですか?


305 名前:デフォルトの名無しさん mailto:sage [04/09/22 23:05:18]
それは実機で計ってみないとなんとも。
32ビットWindowsなら理屈ではintが有利なはずだ(エミュでも多分そうだろう)が

306 名前:デフォルトの名無しさん mailto:sage [04/09/22 23:27:19]
vodaのMIDP2.0+VSCLは一般公開できないの?


307 名前:298 mailto:sage [04/09/22 23:59:16]
何度もすいません。
int value=123123; //数字は適当
temp[0] = (byte)value;
value = value>>8;
temp[1] = (byte)value;
value = value>>8;
temp[2] = (byte)value;
value = value>>8;
temp[3] = (byte)value;
int a_value = ((int)temp[3]<<24) & ((int)temp[2]<<16) & ((int)temp[1]<<8) & ((int)temp[0]);
としてもa_valueと元のvalueが一致しないのはどこが悪いんでしょうか… 


308 名前:デフォルトの名無しさん mailto:sage [04/09/23 00:47:02]
> int a_value = ((int)temp[3]<<24) & ((int)temp[2]<<16) & ((int)temp[1]<<8) & ((int)temp[0]);

これが悪いんじゃないの?
(temp[0] & 0xFF) とかやんないと駄目でしょ
byteの0xFF(10進で-1) をintにしたら0xFFFFFFFFだよね?

309 名前:300 mailto:sage [04/09/23 00:57:47]
>>307
オレはこんな風に元に戻してる。
value = 0xFF&tmp[3] ; value<<=8 ;
value |= 0xFF&tmp[2] ; value<<=8 ;
value |= 0xFF&tmp[1] ; value<<=8 ;
value |= 0xFF&tmp[0] ;

もうちょっとマシな書き方がある気もするけど、
ビット操作好きじゃないからまぁちゃんと動けばいいかなと思ってる。

310 名前:デフォルトの名無しさん mailto:sage [04/09/23 04:02:20]
>>304
int が一番速い。



311 名前:298 mailto:sage [04/09/23 11:35:54]
みなさんなんどもありがとうございます。
おかげさまで以下のようにし、無事動作しました。
public long bin2long(byte[] b){ long j=0;
j |= (long)((b[0] & 0xFF)) << 56;
j |= (long)((b[1] & 0xFF)) << 48;
j |= (long)((b[2] & 0xFF)) << 40;
j |= (long)((b[3] & 0xFF)) << 32;
j |= (long)((b[4] & 0xFF)) << 24;
j |= (long)((b[5] & 0xFF)) << 16;
j |= (long)((b[6] & 0xFF)) << 8;
j |= (long)((b[7] & 0xFF)); return j;}
public byte[] long2bin(long l){ byte[] b = new byte[8];
b[0] = (byte)(l >> 56);
b[1] = (byte)(l >> 48);
b[2] = (byte)(l >> 40);
b[3] = (byte)(l >> 32);
b[4] = (byte)(l >> 24);
b[5] = (byte)(l >> 16);
b[6] = (byte)(l >> 8);
b[7] = (byte)(l); return b;}
public int bin2int(byte[] b){ int j=0;
j |= (b[0] & 0xFF) << 24;
j |= (b[1] & 0xFF) << 16;
j |= (b[2] & 0xFF) << 8;
j |= (b[3] & 0xFF); return j;}
public byte[] int2bin(int i){ byte[] b = new byte[4];
b[0] = (byte)(i >> 24);
b[1] = (byte)(i >> 16);
b[2] = (byte)(i >> 8);
b[3] = (byte)(i); return b;}

312 名前:デフォルトの名無しさん mailto:sage [04/09/23 17:42:44]
>>306
未定

313 名前:デフォルトの名無しさん mailto:sage [04/09/25 02:05:16]
えーと、どこ探しても見つからなかったんで質問します
今StorageConnectionで外部メモリのテキストファイルを読み込もうとしてるのですが何度やってもエラーが出てコンパイルできません。
自分じゃあ分かりそうに無いし書籍探してもHttpConnectionのソースしか書いてないしでどうしようもなくなったんで
どなたかStorageConnection使ってテキストファイルを読み込む簡単なソース貼ってくれないでしょうか
あと、ついでなんで画像もHttp使うのしか分からないんで外部から読み込む簡単なソースお願いします。

なんか頼みばっかなんですがスンマセン宜しくおねがいします

314 名前:デフォルトの名無しさん mailto:sage [04/09/25 02:54:56]
>どこ探しても見つからなかった
>>13

315 名前:313 mailto:sage [04/09/25 09:12:54]
13のソースを適当にぶっこんでみたけど動かんかった。
で、今のソースが下の

import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import java.io.*;
import javax.microedition.io.*;

public class CCanvas extends Canvas {
private String info="null";
public interface StorageConnection{}

CCanvas() {
}

316 名前:313 mailto:sage [04/09/25 09:16:39]
13のソース適当にぶっこんでみたが動かんかった
もしかしてJ2ME Wireless Toolkit 1.0.4_01じゃ無理とか?
始める時にこのバージョンでやれって言われたのだが・・・

317 名前:313 mailto:sage [04/09/25 09:30:01]
315ミスっぽ

318 名前:デフォルトの名無しさん [04/09/25 10:47:06]
byte[] → Stringって
String hoge = new String(byte[])
って方法でいいんですか?
なんか方変換したいだけなのにnewするのに違和感があって。
Byte.toString(byte[0])+Byte.toString(byte[1])…
とかのほうがいいんですか?

319 名前:デフォルトの名無しさん mailto:sage [04/09/25 11:28:44]
>>316
>>13以降に続くレスも読んだ?そこでは結論出てるようだけど。

>>318
示した2つの方法で得られるものは違う。結果としては何が欲しいの?
byte[]に文字コードが入っててそれが示す文字列にしたいなら上の方法で。
byte[]1つ1つの要素が表す数値を数字としてつなげたいなら下の方法で。

それから>>318は基本的な理解が不足してる模様。
byteやintはプリミティブ型、対してStringはクラス。クラスを生成するには
Canvasなどと同様でnewするものだろう?
文字列を+でつないでいくのも内部的にStringBufferが生成されてaddが
行われているだけ。詳しくはCLDCのAPIリファレンスでStringのとこ読んで。

320 名前:デフォルトの名無しさん mailto:sage [04/09/25 11:30:51]
補足。
Byte.toString(byte[0]) …こんな書き方のものはない。



321 名前:313 mailto:sage [04/09/25 18:48:38]
>>319
すまん漏れの頭悪すぎて分からん

一応、P5型のアプリ作成する時のソフトウェア環境どなたか書いてもらえます?
ヴァージョンも。

322 名前:デフォルトの名無しさん mailto:sage [04/09/25 23:05:23]
Vアプリ作って見ようかと思ってその辺で拾ってきたソースをコンパイルしようとしてみたら
パッケージ com.j_phone.io は存在しません。
って出るんだけどこれどうすりゃいい?


323 名前:13 mailto:sage [04/09/25 23:18:13]
いや、まさしく13なんですが(以前も以後も何度もスレに顔出してますが)
>>313
> 何度やってもエラーが出てコンパイルできません。
だから、コンパイルができてないという状態だと思うんですが。。
だから13とは関係ないと思うんですが・・

classpathでstubclasses.zipを指定してないというオチでは?
>322も。
www.saturn.dti.ne.jp/~npaka/kvm/javapress/coolskiers/support.html

324 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:01:49]
322だす
-bootclasspathでstubclasses.zipを指定してみたのだが
エラー: *.java を読み込めません。
エラー 1 個
って出る・・・・何故だ・・・。

325 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:03:56]
>324
コマンドラインそのまま晒してみれ。

326 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:11:43]
bootclasspathのとこだけでいい?

C:\j2sdk1.4.2_05\bin>javac -bootclasspath c:\v-appli_sdk_121\lib\stubclasses.zip -g:none *.java
エラー: *.java を読み込めません。
エラー 1 個

327 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:20:41]
……うゆ?
コンパイルするソースもC:\j2sdk1.4.2_05\binに置いてるん?
それともカキコ用に適当なパス書いただけ?

まさかとは思うけどカレントディレクトリ間違ってない?

328 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:25:34]
むむ

パスってjavac.exeが置いてあるとこじゃないの?
set path=c:\j2sdk1.4.2_05\bin\;C:\wtk104\bin;
てしたから始めはjavac.exeの場所じゃないと思ったんだが、c:\j2sdk1.4.2_05以外だとjavacが見つかりませんてエラーでたし・・・

えーと、パスはコンパイルするソースが置いてあるところなわけだな。
もう一回set pathからやり直して見る

329 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:38:08]
set pathし直したらjavac動いた。

が、試しにmyMIDletってのをコンパイルしてみたんだが
myCanvas.classとmyMIDlet.classってのが出来て、outputてフォルダの中に同名でサイズが違うのが出来た
んで、jar cmf MANIFEST.MF myMIDlet.jar -C output .
て実行したらMANIFEST.MFが見つからんとか
これって手書きで作成?

あと、コマンドラインでコンパイルするのとJ2ME Wireless Toolkitのビルドとどう違うん?

330 名前:デフォルトの名無しさん mailto:sage [04/09/26 00:44:59]
む。漏れは普段はant使ってる人なのでWireless Toolkitがどうなってるか忘れた(汗)
ただ、環境変数PATHにjavac.exeの位置が入ってなくても
絶対パスで動かすんで無問題だったかな > Toolkit
後はコマンドラインだと手作業、Toolkitは一括でjarまで作る、くらいかな、違いは。
(手作業っつっても、バッチ作るなりそれこそant入れるなりすればさして手間はかからん)

MANIFEST.MFは手書き……だと思う。一回書いたらそうそう書き換えることもないっしょ。



331 名前:13 mailto:sage [04/09/26 00:51:49]
Wireless Toolkit使ったら、
jad/MANIFESTの作成から、javac/preverify/jarまで一括でやってくれるんじゃなかったっけ?
オレも使ってないから知らん。
一回書いたらほとんど直さないから、手書きでいいと思う。

入門記事
www.itmedia.co.jp/mobile/0203/08/n_j1.html

332 名前:デフォルトの名無しさん mailto:sage [04/09/26 01:03:22]
質問ばっかりでごめん

Wireless Toolkitだとcom.j-phone.ioは存在しませんってエラーになってビルド出来ない
コマンドラインでやればエラー出ずコンパイルできたけどjad手書きしてエミュで実行してみたら
MicroEdition-Configurationの項目が存在しません
ってエラー出てロード出来ん
jadの中身↓
MIDlet-1: FileSystem, FileSystem.png,
MIDlet-Name: FileSystem
MIDlet-Vendor: sun
MIDlet-Version: 1.0
MIDlet-Application-Range: 0,0
MIDlet-Network: Y
MicroEdition-Profile: MIDP-1.0
MicroEdition-Configuration: CLDC-1.0
MIDlet-Jar-URL: FileSystem.jar
MIDlet-Jar-Size: 1843

antっての使ったほうがコンパイルとかなの?

333 名前:322 mailto:sage [04/09/26 02:00:59]
homepage1.nifty.com/cotton100/jphonejava.htm
ここに

(補足)
なお、J2ME WirelessToolkitを、コンパイル環境として使う場合は、
JSCLのライブラリ(stubclasses.zip)を解凍、CLDCライブラリも解凍して、2つを統合し
上記の「非圧縮zip」で圧縮すれば使えるそうです。

って書いてあるんで試してみます・・・。
これ出きればコマンドライン使わずにいけそうなので。
て、kjxでも同じかな…まあ試して見る

334 名前:デフォルトの名無しさん mailto:sage [04/09/26 02:04:05]
うちではantもコマンドラインも使わずにWTK104でボーダのビルドやってるが。
WTKのlibディレクトリのmidpapi.zipには当然ボーダ固有のAPIは含まれてないので
com.j-phone.*を使うようなアプリではコンパイルでエラー。
WTK使ってる限りは-bootclasspathの指定とかできないからstubclasses.zipを
midpapi.zipにリネームして置換してる。
au/docomoでコンパイルする場合は元のmidpapi.zipを使ってる。

335 名前:322 mailto:sage [04/09/26 02:40:49]
両方のファイル開いてみると、midpapiに含まれてるファイルが全てstubclassesに含まれてない感じ。
だから、多分
stubclasses.zipにmidpapi.zipの内容が全部含まれてないからリネームだけじゃ駄目かと思う。
多分だから間違ってたら指摘よろ

・・・と、漏れはstubclasses.zipの内容をどうやってmidpapi.zipに統合しようか悩んでるわけだが。

>>13 & 他の人
stubclassesの統合でWirelessToolkit使ってjad/mfの生成できそうです
親切に教えてくれて多謝多謝!
WTK使ってコンパイル出きるようにがんばる

336 名前:334 mailto:sage [04/09/26 05:02:36]
>>335
確かにmidpapiが全てstubclassesに含まれているわけではないが
midpapiのうちボーダの開発には不要なAPI(サポートしていない機能)が省かれている
だけのようなので、自分では単純にリネームしたものを使っている。
何ら保障するわけではないが、これで不都合は起きていない。

ちなみに2つを統合するならこれでOK
1.midpapi.zipとstubclasses.zipを解凍する
2.midpapi側を全てstubclasses側に上書きコピーする
3.stubclasses側を無圧縮zipで固めて、midpapi.zipにリネームする
はじめ自分はこれでやってたんだが、統合したもの(自分で作ったもの)を使うってのが
逆になんか気持ち悪くて今の方法(リネームして置換)に変えた次第。

337 名前:デフォルトの名無しさん [04/09/26 11:49:53]
Canvasで何かを描く時、
getWidth()をよく使うんですが、
これって起動してすぐにint width = getWidth()
とかしてその後は毎回getWidth()する代わりに、widthを使った方が
早かったりしますか?

338 名前:322 mailto:sage [04/09/26 12:59:25]
>>334
統合したらWTKで今までcom.j-phone.io見つかりませんってエラー出てたの出なくなりビルドできました。
これでJSCL使ってもいけそうです


んで、JSCL使ったテストアプリを色々と試してみてるのだけど313と同じくStorageConnectionがうまく動きません。
サンプルソースがどこ探しても無いしHttpConnection使ったサンプルソースのHttpの部分をStorageに書き換えて試して見たが、ビルドエラー無いけどエミュで実行してみても読み込み出来ず。
ちょいとソース上げたので、見てやってもいいぞって人いれば間違い部分指摘して下さい

ttp://namihei.zone.ne.jp/cgi-bin/up/upload.cgi
の、21945

ちなみに読み込むテキストはV-appliエミュレータがインストされてるフォルダのbin内IntStorageの中に置いてあります。

339 名前:デフォルトの名無しさん mailto:sage [04/09/26 13:12:49]
あんまりしょっちゅう呼び出す(ソースに記述する箇所が多い)なら変数に代入して
保持してていいんじゃないかな。あくまで見やすさと記述の手間を省くという点で。
その程度で速さは稼げないから。

340 名前:デフォルトの名無しさん mailto:sage [04/09/26 13:14:36]
>>339>>337向け



341 名前:322 mailto:sage [04/09/26 13:28:22]
>>337
速さは稼げないけど、ファイルサイズが小さくなるのと見やすくなるって利点はある
・・・と思う
あ、でもアプリを使う機種が限定されてたりするなら値で入れといてもいいかもね
・・・多分

342 名前:337 mailto:sage [04/09/26 13:45:02]
170x130程度からQVGAまで対応したいので、
変数に代入する方で行きます。

ありがとうございました。

343 名前:322 mailto:sage [04/09/26 13:57:03]
やっぱどうやってもStorageConnectionで読み込めん。
JSCL1.2.xの参考書でいいのとかあります?
手持ちの書籍じゃJSCL1.1までしか対応(書いて)してない(´д`;)

344 名前:デフォルトの名無しさん mailto:sage [04/09/26 16:43:43]
>>343
サンプルくらいDLしる
www.dp.j-phone.com/dp/tool_dl/java/emu.php
あと、JSCL1.2に関する書籍は聞いたことがないな。
どうせ消えるらしいし今後も出ないと見た。

345 名前:322 mailto:sage [04/09/26 17:02:46]
>>344
このサンプル前ダウンロードしたけどエラーで動かなかったから諦めてたんだけど
今動かしたら動いた(´д`;)
ちょっくら分解してきます…。

346 名前:デフォルトの名無しさん [04/09/26 17:25:06]
質問ですみませんが
前スレ36氏の発言KJXカッター
ezplusの実行形式KJXファイルを簡単にJADファイルとJARファイルに戻せる

jarはzipと同じなので、適当なツールで伸張

Java逆コンパイラ(沢山あるからググれ)にかける
と書いてあり逆コンパイラしたファイルのバグを修正してコンパイラすると
エラーが必ず出ます。
インターフェイスファイルが無いなどで
まぁ一回無視してclassファイル(12個)や画像ファイルをzip圧縮して
kjx結合君で無理やりkjxにしたのですが起動できませんでした
しかも通信機能がついているのに通信が無効になってしまいました
何か解決方法は無いでしょうか?

347 名前:デフォルトの名無しさん mailto:sage [04/09/26 21:34:06]
Vアプリ作成中で、レコードストアにデータをaddしたりsetして、
それをgetRecordして表示させようとしているのですが、
どうもうまく表示できません。

どの過程をしくじっているのかなかなか把握できないのですが、
Vエミュ(P4型)ではレコードストアの状況とかみれないのでしょうか?

あと、setRecordを使うことで、特定のIDに新規書き込みすることは不可能なのでしょうか?


348 名前:デフォルトの名無しさん mailto:sage [04/09/26 23:04:42]
>346
逆コンパイルした*そのままの*ソースはコンパイル通る?
通らなかったらその逆コンパイラが腐ってる可能性があるから別のを探そう。

起動できないetc.はそれを確認・対処してから考えましょう。
通信が無効ってのは……kjx作るとき元のと同じMANIFEST.MF使ってる?

349 名前:347 mailto:sage [04/09/26 23:28:42]
エラーを画面に表示させて、細かくステップごとに見ていくと、
どうやらOPEN時点ですで引っかかっていたみたいです。
で、いろいろ検討して、レコードストア処理をしているサンプル探してきて
実行すると、ちゃんとしているものなら *.rmsというデータができること
を発見し、そこから調べていった結果。MANIFESTと.jadの問題だったようです。

MIDlet-data-sizeは登録しておいたと思ったんだけど、、動いてるものから
コピペして書き換えたら処理できるようになりました。
setも既出のものしかできないこともわかりましたので・・・
お騒がせしました。

350 名前:デフォルトの名無しさん [04/09/26 23:51:49]
>>348
逆コンパイラはDJ Java Decompilerで逆コンパイラしたファイルを
そのままコンパイラしようとすると
「シンボルを解釈処理できない」
と出ます。
一度.classを読み取り.javaにしたファイルをそのまま.classに戻す時点で
このエラーが出ます。
また他の.classを読み取り.javaにしてまた.classに戻そうとすると
「このファイル名はpulicです宣言ファイル名.javaで宣言しなければなりません」
と出てしまいます
やはり逆コンパイラが腐っているのでしょうか
MANIFEST.MFは同じものを使っていますMETA-INFというファイルに納めてあります



351 名前:デフォルトの名無しさん mailto:sage [04/09/26 23:54:01]
連レスすみませんsageをずっと忘れてました
あとMANメッセンジャーでご指導して頂ける方は指導希望と書いてくれませんか?

352 名前:デフォルトの名無しさん mailto:sage [04/09/26 23:56:35]
>350

とりあえず逆コンパイラをjadに変えてやってみましょ。
ttp://kpdus.tripod.com/jad.html






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<320KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef