iモード携帯電話用Java(iアプリ) Part9

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
NTT DoCoMoのiモード携帯電話用Javaに関する話題を扱うスレッドです。
2デフォルトの名無しさん:2005/07/04(月) 02:23:11
前スレ
iモード携帯電話用Java(iアプリ) Part8
http://pc8.2ch.net/test/read.cgi/tech/1110946222/
3デフォルトの名無しさん:2005/07/04(月) 06:43:11
3ま
4デフォルトの名無しさん:2005/07/04(月) 06:52:14
54:2005/07/04(月) 06:54:00
6デフォルトの名無しさん:2005/07/04(月) 06:54:50
■ 開発環境

NTT DoCoMo - iアプリコンテンツの作成について
http://www.nttdocomo.co.jp/p_s/imode/java/index.html
Java[tm] 2 Platform, Standard Edition v 1.4
http://java.sun.com/j2se/1.4/ja/
CLDC仕様書 日本語版
http://java.sun.com/products/cldc/docs/CLDC1.0_ja_docs.zip
Eclipse.org
http://www.eclipse.org/

■ 機種依存情報

ん・ぱか工房(iアプリ機種依存情報)
http://www.saturn.dti.ne.jp/~npaka/
NTT DoCoMo - アプリケーション作成上の注意点
http://www.nttdocomo.co.jp/p_s/imode/java/caution.html
Overflow! さかきけいのページ(504iまでの機種依存情報つきAPIリファレンスあり)
http://godwood.allnet.ne.jp/vioret/

■ アプリを省サイズ化するツール(ObfuscatorまたはOptimizer)

Java Blender
http://web.yl.is.s.u-tokyo.ac.jp/amo/JavaBlender/
jarg - Java Archive Grinder
http://jarg.sourceforge.net/
7デフォルトの名無しさん:2005/07/04(月) 06:56:39
■ 主なアプリ配布サイト

ギガアプリ
http://g-appli.net/
アプリ★ゲット
http://appget.com/
ゲームチャンネルi
http://appli.channel.or.jp/pc/i/

■ 携帯関連ニュース

ITmedia:モバイル
http://www.itmedia.co.jp/mobile/
ケータイ Watch
http://k-tai.impress.co.jp/
Nekomaru What's New
http://snget.hp.infoseek.co.jp/news/news_index.htm

■ 関連板

携帯アプリ板
http://hobby7.2ch.net/appli/
携帯・PHS板
http://hobby7.2ch.net/phs/
8デフォルトの名無しさん:2005/07/04(月) 06:58:30
■ iアプリ特有ではなくJava一般に関する質問はこちらへ
【初心者】Java質問・相談スレッド68【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1119115837/

■ iモード携帯電話用Java(iアプリ)まとめサイト
http://ton.my-sv.net/
9デフォルトの名無しさん:2005/07/04(月) 07:41:52
関連スレ
【日本携帯】Mascot Capsule/Micro3D【標準】
http://pc8.2ch.net/test/read.cgi/tech/1117773530/
10デフォルトの名無しさん:2005/07/04(月) 23:20:32
iモードは無いがM1000ってどうよ?
11デフォルトの名無しさん:2005/07/05(火) 11:08:08
>>10
正直微妙じゃね?
興味ナッシング
12デフォルトの名無しさん:2005/07/06(水) 00:20:33
話題がないのか?
13デフォルトの名無しさん:2005/07/06(水) 00:26:52
バイトコード減らすコーディングのガイドラインとか、どっかに無いものですかね。
Zip圧縮がかかる以上、単にバイトコード減らせばアプリのサイズも減るってわけじゃ
ないだろうけど、それでも30KBの壁は時としてテラキツス(´・ω・`)
14デフォルトの名無しさん:2005/07/06(水) 00:36:59
オブファスケート→7zip様

でダメな時は諦める。
15デフォルトの名無しさん:2005/07/06(水) 01:09:42
諦めたらそこで試合終了やんけ!
proguard 様と 7zip 様の神通力には本当助けられてるが、コードこねくり回すのも
結構馬鹿にならない数字…数百バイトとか…を捻り出せる場合があるので、
結局最後の最後は人力勝負ですよ。

とりあえず

・forループは可能な限り逆方向に回してゼロ比較。
・switch〜caseは様子をみながら、時にはifだだ並べも辞さず。
・一時変数テラキモス。どうでもいいループカウンタなんか全部メンバ。スレッドでの裏読み込みテラコワス。
・try 〜 catch 〜 finally も省けりゃ全部省いて例外なんか投げっぱなしジャーマン。
・もちろん class は極力少なく、少な過ぎは流石に可読性落ちるし使い方次第では
返ってコード量が増えるだけなので、それなりにバランス見つつ減らしたり増やしたり。
・int だろうとなんだろうと初期化済み配列なんて存在しないので根絶、
全部スクラッチパッドに追い出して後読み、後付け。文字列定数以下同文。

くらいはやってるんだけど、他にどうしたらいいんだかー。
16デフォルトの名無しさん:2005/07/06(水) 01:53:50
クラス・メソッド・変数名を縮める
17デフォルトの名無しさん:2005/07/06(水) 02:32:01
そりはProGuard様がやっておろう。
18デフォルトの名無しさん:2005/07/06(水) 02:49:33
メソッド数が多いときも容量にハネ返ってくるんで、1箇所2箇所くらいで
しか呼んでないやつは、メソッドやめて展開しまくり。

メソッド5〜6個ぐらいまとめて処理して数十バイトとか稼げたような。
可読性劇悪で、見返りも少なめなんで、最後の一歩での削りこみに
使うくらいだが。
19デフォルトの名無しさん:2005/07/06(水) 03:45:43
switch case は使わないほうが良い。if で書け
if else よりは if を並べた方が小さくなる
throws を書いても大きくはならない→大外で catch すれば良い
20デフォルトの名無しさん:2005/07/06(水) 03:50:15
iアプリをPCからダウンロードできませんか?
PCで作ったのをいちいちWEBへUPしなければならないんでしょうか
21デフォルトの名無しさん:2005/07/06(水) 05:07:22
ちょうど今課題やってる。パスワード設定するというものなんだが・・・。
textBoxの応用だな。しかし、わからん。
22デフォルトの名無しさん:2005/07/06(水) 07:23:02
>>15
>forループは可能な限り逆方向に回してゼロ比較。
これなんだが、スピードはUPしても容量は同じじゃねーか?
23デフォルトの名無しさん:2005/07/06(水) 08:18:55
>>22
容量も減る。Javaのバイトコードには、大方のCPUのインストラクション・セットと同じように
0との比較用の命令があるので。逆アセしてみるよろ。
24デフォルトの名無しさん:2005/07/06(水) 09:37:33
>>18
それはZipのウインドウ圧縮の性質のせいなのかな。
漏れはJavaのByteCode詳しくないんで当てずっぽうなんだけど、
インライン展開した方がJarサイズが縮む場合は確かに多い。
classファイルはデカくなるのに。
25デフォルトの名無しさん:2005/07/06(水) 09:49:32
そろそろ504を切り捨てたいのだが…。
26デフォルトの名無しさん:2005/07/06(水) 09:54:55
切っちゃえ切っちゃえ!

切れない現実…
しかも最大普及端末がN504…タイマ分解能100msのN504…ヒープ無い無いのN504…


…(´Д⊂グスン
27デフォルトの名無しさん:2005/07/06(水) 11:42:27
この前電車でN504操作してる人いたからなぁ。
28デフォルトの名無しさん:2005/07/06(水) 11:43:30
>>24
単にメソッドの定義が文字列で.classファイルに書き込まれるからだろう。
pubic限定ではあるけど。
29デフォルトの名無しさん:2005/07/06(水) 13:20:00
Felica関連のiアプリの経験者はいる?
30デフォルトの名無しさん:2005/07/06(水) 17:11:02
どっかのサイトでStringをStringBufferで使用した方が減ると書いてあった。
31デフォルトの名無しさん:2005/07/06(水) 18:34:56
>>30
詳しきゅ
3230:2005/07/06(水) 19:06:41
33デフォルトの名無しさん:2005/07/06(水) 20:31:33
>>32
おおう、サンキュー!
…ふと思ったんだが、その辺を最適化するProguard様のオプションが無かったっけ?
34デフォルトの名無しさん:2005/07/06(水) 21:53:17
呼び出されるメソッドは、呼び出すメソッドより
コード内の前の方で宣言すると
サイズが小さくなる。

Eclipse でメソッドを抽出すると後ろに来るんだよなあ……。
35デフォルトの名無しさん:2005/07/07(木) 00:11:11
なにやらサイズ節約ネタ大会ですか?
知らないネタがいくつか出てきたんでお礼。

つ 初期化の省略

 int a = 0;
 boolean b = false;
のように初期化する値がJavaの変数のデフォルト値に等しい場合は、
 int a;
 boolean b;
にすれば、冗長な代入のバイトコードがなくなる。
36デフォルトの名無しさん:2005/07/07(木) 00:56:34
>>35
クラス変数は?
37デフォルトの名無しさん:2005/07/07(木) 01:22:08
>>36
間違いた。
クラス変数だけだろ?
38デフォルトの名無しさん:2005/07/07(木) 01:52:33
この辺の情報って、思ったよりも共有されてないよね。
プロの人とかにすれば常識なんだろうけど。

こういう情報が集まってると、良スレだなあって思う。
39デフォルトの名無しさん:2005/07/07(木) 03:01:18
PCでつくったプログラムをダイレクトに携帯に入れれませんか?
課金がもったいなくて
40デフォルトの名無しさん:2005/07/07(木) 03:04:43
>>39
無理!いや、冗談抜きで仕様上無理なんだわ。

他のキャリアでも条件付きだったり、キャリアが許可を下ろした
専用端末じゃないと駄目だったりするぞ。

気持ちはわかるが、じっくりチェックしてから動作確認しる。
今なら一次チェックはFOMA端末でする様にすれば、大分マシになるし。
41デフォルトの名無しさん:2005/07/07(木) 03:43:12
>>39
定額にしとけ
42デフォルトの名無しさん:2005/07/07(木) 09:12:40
定期的に>>39みたいな質問でるな。
テンプレに入れた方がいいんだろうか?
43デフォルトの名無しさん:2005/07/07(木) 11:14:44
java.awt.Choiceに相当するクラスって、iアプリにある?
44デフォルトの名無しさん:2005/07/07(木) 16:27:00
>>34
いま手元で試してみたんだけど、ProGuardはその辺最適化してくれるみたいだね。
サイズ変わらないや。
45デフォルトの名無しさん:2005/07/07(木) 17:23:52
サイズ大きめのファイルを取得する際に、
同じ場所で同じ処理なのに時間かかったり
かからなかったりするんですが、
現在の電波状況や通信時の速度って
取得できるもの(方法)ってありませんか?
46デフォルトの名無しさん:2005/07/07(木) 17:53:00
つPhoneSystem

電波強度は取れる。
速度は無理だにゃー。
47デフォルトの名無しさん:2005/07/07(木) 19:32:31
つ[byte per second]
48デフォルトの名無しさん:2005/07/07(木) 19:41:17
>>定期的に>>39みたいな質問でるな。
>>テンプレに入れた方がいいんだろうか?
だからできないんですよね?
49デフォルトの名無しさん:2005/07/07(木) 19:45:12
出来たらとっくの昔にみんなやってる。
50デフォルトの名無しさん:2005/07/07(木) 19:50:54
>>出来たらとっくの昔にみんなやってる。
いかにドコモの技術がすごいかですね
クラックできないから
51デフォルトの名無しさん:2005/07/07(木) 19:51:15
する価値がないというか…。
52デフォルトの名無しさん:2005/07/08(金) 01:12:29
して誰が嬉しいってもんでも無いっつーか…。

いや、殿様商売大概にしやがれとは思うけどね。
53デフォルトの名無しさん:2005/07/08(金) 01:13:25
>>48
>>40ができないと断言してるだろーが
54デフォルトの名無しさん:2005/07/08(金) 02:05:38
48と40が馬鹿なだけ。
できると思う。PCからDLしない分通信費用がかからん
55デフォルトの名無しさん:2005/07/08(金) 02:10:22
勝手におもっとれ。
56デフォルトの名無しさん:2005/07/08(金) 02:12:53
携帯アプリ板にも変な奴が沸いてたが、同じ輩か?
せっかくこの所いい流れだったんだから、勘弁してくれよ、本当…
知らないのは別に罪でもなんでもないんだからさあ
5756:2005/07/08(金) 02:21:06
…なんか>>54に曲解されそうだから、あらかじめ
俺がレス入れたのは>>55じゃなくって>>54にだから

PCにDLするなら好きにしろ、サーバ側の設定次第なら落とせるし
落としたならエミュ上で動作させることも、あるいは可能だろう
商用アプリは携帯電話の識別情報元に認証入れるわけだから
事実上無意味だが

自前アプリならエミュで我慢しろ
そこから先は好きにしろ
実機とエミュの挙動の違いに泣くのは、素人には関係のない話だ
58デフォルトの名無しさん:2005/07/08(金) 05:20:40
>>そこから先は好きにしろ
おまえにいわれる筋合いは無い。
59デフォルトの名無しさん:2005/07/08(金) 09:11:02
なんか>>54以降変じゃね?

なんでPCから直接携帯にDLできるか?って話が、>>57でPCにDLして
エミュで動かすって話になったんだ?

>>54-57を何度読み返してもそんな流れになった理由が分からないよママン。
60デフォルトの名無しさん:2005/07/08(金) 09:17:45
>>32のページおもしろいな。
教えてくれた人Thx。
61デフォルトの名無しさん:2005/07/08(金) 10:09:31
俺も>>32のぺーじは結構お気に入りなんだよね。
説明とソースとかしっかりしてるし。

探せば結構良いページはあるのだけど
見つけるのは結構大変なんだよね…
62デフォルトの名無しさん:2005/07/08(金) 15:19:40
常に + より StringBuffer を使うべきなんじゃなくて,
一つの式で書けるなら + の方が効率がいいですね。
(って最適化をコンパイラーがおこなうことは言語仕様では
義務づけられてないけど少なくとも JDK はおこなってくれる)

例えば >>32 の最後のサンプルなら
int m = 10;
String str = "test" + m + '#' + " OK";
って書いた方が効率がいい。

あと JDK は String(とプリミティブ型)のリテラルの + は
コンパイル時に評価するので,
String str = "hogepiyo\nfoobar\n1234567890\n";
は行頭をそろえて見やすく書いたりしても同じバイトコードが
生成されます:
String str =
"hogepiyo\n" +
"foobar\n" +
"1234567890\n";
63デフォルトの名無しさん:2005/07/08(金) 18:43:44
>>62
あ、それ俺もツッこもうと思ってた。
ナイスだ>>62
64デフォルトの名無しさん:2005/07/08(金) 19:27:33
>>実機とエミュの挙動の違いに泣くのは、素人には関係のない話だ
ここのスレは開発者だと思うが。
素人なら見ないと思うが(w
65デフォルトの名無しさん:2005/07/08(金) 19:31:11
ループするサウンドをpsmplayerで作って再生してるんだけど、
どうしても演奏終了->演奏開始で100msぐらい途切れてしまう。
前に仕事で貰ったmldは上手くループしてるのに…。

psmplayerではダメなのかな?
66デフォルトの名無しさん:2005/07/09(土) 01:45:44
>>64
言ってる事が素人だって話じゃないの?
つーか、もはや何の話なんだかわかんねーよ。
あんたも一々上げてないで仕事しろ。
67デフォルトの名無しさん:2005/07/09(土) 03:59:15
>>66
オマエモナー
68素人:2005/07/09(土) 08:26:16
勝手アプリ作者ですが見てますよ。
69デフォルトの名無しさん:2005/07/09(土) 12:20:44
DoJaを使って
アプリ使っている人はいる?
70デフォルトの名無しさん:2005/07/09(土) 12:34:07
何故そんなことを聞く
71デフォルトの名無しさん:2005/07/09(土) 16:39:09
iアプリ関連の書籍を買おうと思って書店に行ったのですが、
どこにも見当たらないんですよ。
店員に聞いてもドキュソ店員なのか、ないとかのたまう始末だし。
Java関連書籍のとこじゃなくって、どっか別のとこにあるんですか?
72デフォルトの名無しさん:2005/07/09(土) 16:51:14
>>71
今はもう天国にしかないんだよ。
73デフォルトの名無しさん:2005/07/09(土) 17:18:39
>>71 もうすこし大きな書店にいきなよ
74デフォルトの名無しさん:2005/07/09(土) 17:21:19
75デフォルトの名無しさん:2005/07/09(土) 17:49:35
ASCIIの4100円のとか、んぱかとか、結構あるだろ。売ってないけど
76デフォルトの名無しさん:2005/07/09(土) 23:11:13
>>71
amazonで買いなよ。
77デフォルトの名無しさん:2005/07/10(日) 03:00:46
amazonで「iアプリ」か「iモード Java」で検索すれば、15冊くらいは確認できる
78デフォルトの名無しさん:2005/07/10(日) 12:03:52
でも大抵ろくな本じゃない罠。
>>32のページ未満ばっかり。
79デフォルトの名無しさん:2005/07/10(日) 12:08:40
switch 〜 case を if に置換するとクラスサイズが減るのは周知の事実ですが、
Java ってコンパイル時にジャンプテーブル作らないの?
つまり、

・クラスを大量に作るわけにいかないから、ゲームとか作っててもキャラの種類ごとにクラス作るなんざ論外で、
大抵最大公倍数な巨大ゲームキャラクタクラスに状態変数を割り振って管理することになる

・つーことはメインループ内は switch 〜 case だだ並べは、ある程度やむなし

・ここを if に置換すれば少なくないクラスサイズ削減になるけど、性能への悪影響が出るのは困る

というジレンマ。
どうしたら一番いいのかな?
80デフォルトの名無しさん:2005/07/10(日) 12:31:49
>>79
switch caseの値が連続してたら
ジャンプテーブル作るよ
81デフォルトの名無しさん:2005/07/10(日) 16:26:52
>>80
thx
胸の支えが取れました。
心置きなくswitch case します。
場所によっては。
82デフォルトの名無しさん:2005/07/10(日) 17:18:01
昔はサイズ削るので、大変だったんですね。
近いうちに901でiアプリ制作を始める私には、こうした心配は無縁かな。
83デフォルトの名無しさん:2005/07/10(日) 17:50:51
本格的に作ろうとしたら100Kなんてスグだよ
84デフォルトの名無しさん:2005/07/10(日) 18:49:10
900用に作られた企画は結局900の限界に挑戦しようとするから
結局サイズ削減は気にしないといけなくなる場合が多い。

901用って書いてあるけど、念のために言っておくが、
901用に作って900で動かそうとするとメモリ少なくて死ぬ可能性があるから、
アプリサイズとスクラッチパッドサイズが一緒だから大丈夫☆ミ
という言葉に騙されないようにな('A`)ノ
85デフォルトの名無しさん:2005/07/10(日) 19:37:13
まぁD900iですら、240*240の画像を30枚は読める。
よっぽど下手なコーディングをしない限り平気だとは思うが。
86デフォルトの名無しさん:2005/07/10(日) 20:29:33
それが、3Dだとちょっと話が変わってくるらしいんだよ。
87デフォルトの名無しさん:2005/07/10(日) 20:41:38
3Dか!
仕事で3Dの仕事くる?うちは相変わらず2Dなんだが。
やっと2DでまともなFPSが出るようになったからって感じ。
88デフォルトの名無しさん:2005/07/10(日) 20:48:02
3Dの話は結構来る。
ってーか、どこのキャリアでも、サイト立ち上げとかの審査の時には
内容に関わらず3Dならスゲーっていう古い体質が残ってるみたいだから
900以降って感じだと3Dにしたがる傾向があるみたい。

505以降の場合は遅すぎて使い物にならないって断るけどね。
89デフォルトの名無しさん:2005/07/10(日) 23:35:22
>>174
漏れは、クリがチンポになっちゃった!

クリもチンポもあるとなんかすごいファンタジーって感じで
タダでさえ現実感なくなりそうだから。
90デフォルトの名無しさん:2005/07/11(月) 00:20:23
>>89 (´д`)
91デフォルトの名無しさん:2005/07/12(火) 02:09:16
Eclipse+DoJaでWHOTOサイト見ながらコード書いて
さぁ実行!ってやったら、
実行中(エラー:com.nttdocomo.eclipse.DoJaBuildException: Failed create jarC:\IBM_Development_Package_for_Eclipse_Win32_1.1.0\eclipse\workspace\SampleAppli\bin\SampleAppli.jar
って出て進まないんです。

マジ訳わかんなくて泣きそうですボスケテください;;
92デフォルトの名無しさん:2005/07/12(火) 02:21:16
SUNのJREインスコしれ。
93デフォルトの名無しさん:2005/07/12(火) 11:42:34
同じプログラムをeclipseでビルドとiAppliTool for Doja 4.0 でビルドだと
後者の方がjarファイルの容量が減りますが、何故でしょう・・・
94デフォルトの名無しさん:2005/07/12(火) 12:00:42
eclipseはデバッグ情報とか埋め込むんじゃなかったっけ?
95デフォルトの名無しさん:2005/07/12(火) 14:57:59
デバッグ情報とかはプリべりファイアが削除するはず。
まあ、両者ではコンパイラが違うんだからそりゃコンパイル結果も微妙に違うでしょう。
96デフォルトの名無しさん:2005/07/12(火) 15:22:33
Eclipseはデバッグには向いてるけど最終的にコンパイルするのはやめたほうがいいと思う。
めっさ重くなるよ。
97デフォルトの名無しさん:2005/07/12(火) 15:26:44
eclipse使えば、iアプリも一行ずつ実行するタイプのデバッグできるのか?
それなら即使い始めるんだが。
98デフォルトの名無しさん:2005/07/12(火) 15:32:40
>>92
即レスありがとうございます。
やってみましたが変わりません・・・。
新しいバージョンじゃだめ?Eclipse3.1、DoJa4.0

う〜〜ん・・・
9993:2005/07/12(火) 17:23:57
>94

デバッグ情報消せたのでサイズが大体同じものになりました。
ありがd
100デフォルトの名無しさん:2005/07/12(火) 19:48:36
100getttttttttttttttttttttttttttttttt!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
101デフォルトの名無しさん:2005/07/12(火) 20:35:45
>>100
10進数でゲットしたか2進数でゲットしたかでキミの価値が決まる。
102デフォルトの名無しさん:2005/07/12(火) 21:22:15
初心者ですまそ
iアプリでhelloworldつくろうと思ってDoja3.5落としたけど
余計なDOS窓みたいなのはなんだろう?
これが出ないでシュミレータだけ立ち
上がるようには出来ないの?
>>91さん
JDKへのパスが通っていないのではないでしょうか。
環境変数のPATHにJDKのbinへのパスを追加してみてください。
104102:2005/07/12(火) 23:11:01
>>103
説明が足りませんでした
パスは通っています、PCの環境変数にじか打ちしました
シュミレータは立ち上がって、かんたんなテストアプリも出来ますた
デモも出来ます
うんぱかを参考にしてます

質問は
余計なDOS窓みたいなのをやっつける方法をお聞きしたかったのです
ドコモのマニュアル見ても書いてないのか、探し当てられませんでした
ここのレベルからすると、超初心者の馬鹿みたいなレベルですみません
105デフォルトの名無しさん:2005/07/12(火) 23:32:14
>>104
できない。

なんであのウィンドウが出るかは、
MS-Windowsのアプリの仕組みがわからないと無理だが、
要は作者が手抜きしてるだけ。
106デフォルトの名無しさん:2005/07/12(火) 23:35:14
>>104
もっと良いやり方があるとは思いますが、とりあえずは
そのコンソールウィンドウが出ている間に、
・ウィンドウ左上のアイコンを右クリック、メニューからプロパティを選択
・レイアウトタブを選び、ウィンドウのサイズを1x1に、ウィンドウの位置を0,0に変更
・「OK」ボタンを押し、プロパティの適用ダイアログで「同じタイトルのウィンドウに適用」を選択、OKボタン。

とでもしておけば、とりあえずあまり邪魔にならなくなると思います。
107デフォルトの名無しさん:2005/07/13(水) 00:29:34
>>104
CTRL+Cでエミュレータを強制終了できるから、便利だと思うけど。
108102:2005/07/13(水) 00:34:39
>>105>>106
無事画面の隅に追いやることができますたサンクス
109102:2005/07/13(水) 00:40:00
>>107
その技も使わせていただきます。さらにサンクス
110デフォルトの名無しさん:2005/07/13(水) 01:01:42
Dojaの開発環境からではなく、コマンドラインからビルドしようとして以下を実行しました。

> javac -g:none -target 1.1 -classpath c:\iDKDoja4.0\lib\classes.zip;c:\iDKDoja4.0\lib\doja_classes.zip -d c:\idkDoja4.0\apps\\Hoge\temp c:\idkDoja4.0\apps\Hoge\src\Hoge.java
> c:\iDKDoja4.0\bin\preverify -classpath c:\iDKDoja4.0\lib\classes.zip;c:\iDKDoja4.0\lib\doja_classes.zip -d c:\idkDoja4.0\apps\\Hoge\temp\output c:\idkDoja4.0\apps\\Hoge\temp
> jar -cfM c:\idkDoja4.0\apps\\Hoge\bin\Hoge.jar c:\idkDoja4.0\apps\\Hoge\temp\output

すると、Dojaからビルドした場合と比べ200バイトぐらい大きくなり、エミュレータ、実機ともに
java.lang.ClassNotFoundExceptionというエラーになります。

コマンドのパラメータの指定などおかしいとこがあったら教えてください。
11191:2005/07/13(水) 01:38:51
>>103
ありがとうございます。
PATHを設定したら問題なく出来るようになりました。
ほんとありがとうございます。

にしてもEclipseももうちょっと親切なメッセージを
出してくれればいいのに・・・。

112デフォルトの名無しさん:2005/07/13(水) 17:05:06
すいません、教えてください。
メッセージを表示してSELECTキーを押すと次のメッセージを表示するということをしています。
で、完全にメッセージを表示するまではSELECTキーが押されても無効にしたいため、
SELECTキーが押されたら、repaint()しpaint()メソッド開始と同時にフラグをたて、その描画が終わったら
フラグを外しています。#processEventでこのフラグが立っていない場合は弾いてます。
ところが、P900iだとこのやり方でうまくいくのですが、F900iだとこのやり方でうまくいきません。
メッセージ表示中(描画中)にSELECTキーを押してもF900iだとprocessEventに入ってこないのです。
メッセージ表示後に押した分だけのキーイベントがいっぺんに入ってきます。
そのため、SELECTが連打されるとメッセージが次々変わるようになってしまいます。
コレを回避するにはどうしたらいいでしょうか?
113デフォルトの名無しさん:2005/07/13(水) 17:42:39
paint()とprocessEvent()はテンプレ行きだな。

↓まかせた。
114デフォルトの名無しさん:2005/07/13(水) 17:54:58
おっしゃ!w

これで、よろし?
  ↓
-----------------
907 名前:デフォルトの名無しさん 投稿日:2005/06/20(月) 19:28:40
アドバイス頂ければ幸いです。

現在、メッセージを表示する時にタイマーを使用して
一文字一文字表示しています。ドラクエのメッセージのような感じです。
ex.こ(sleep)ん(sleep)に(sleep)ち(sleep)は、、、こんな感じです。
この間、SELECTボタンを押されるとまずいので、フラグを立てて、メッセージ表示中は
入力を不可にしようと思ったのですが、表示部分のコードを通過しても
実機ではまだ表示の最中ですが、表示部分のコードは通過しているので
キー入力を受け付けてしまいます。

これはどうやったら回避できますでしょうか?


909 名前:デフォルトの名無しさん 投稿日:2005/06/20(月) 21:38:38
>>907
ソースを提示していないから誰も的確なアドバイスはできない。

当てずっぽうで答える。
キー入力の判定と描画を非同期で処理しているとそうなる。
描画にrepaint()/paint()を使っているならやめて、
別のメソッドで描画するようにし、キー入力判定の処理と同期を取ればよい。

すでにそのようにしているなら、フラグを監視している場所(タイミング)が悪い。

115デフォルトの名無しさん:2005/07/13(水) 17:55:40
911 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 12:46:25
レスありがとうございます。
原因がわかりましたが、まだ解決できません。
描画中にキーイベントは一切processEventに入ってきていませんでした。
ただ、描画中にキーを押した分は、描画後に一気に流れてきます。(自前の描画関数だから?)
てっきり描画中もprocessEventに来ているものだと思っていたのですが、、、
これでは、描画前にフラグを立てても、意味がありませんでした。
キー情報初期化とはどうやるのでしょうか?
描画後に溜まっているキー情報をクリアできたら、非常に助かります。。。


912 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 12:57:38
度々、恐れ入ります。
自前ではなく、repaint()に処理を書き込んだところ、
描画中も、processEventにてキー入力を拾うことができました。
自前で書き込んでる場合は、拾えず、
repaint()ないなら拾える。
まだまだ、勉強が足りないようです。。。ご迷惑をおかけしました。


914 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 13:08:15
自前の描画って、processEvent()内で行なってないか?
もしそうなら、描画が終わるまでキー入力は受け付けない。
(正確には受け付けないというより、バッファに溜まっていく)
repaint()は別スレッドで描画されるから受け付ける。

ソース見ないとわからんが、たぶんこれが原因じゃないかな。

116デフォルトの名無しさん:2005/07/13(水) 17:56:28
915 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 13:39:42
>>914
イベントで描画するとそうなるのか・・・ってか
普通イベント内は簡潔に短くってのが基本だろうw
根本的に組み方がまずいんじゃないのか・・・。


916 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 14:44:25
>>914

おもいっきりprocessEventの中で描画しています・・・
え、でも、例えば、メッセージを表示してSELECT押されたら、
二回目のメッセージを表示するときなんて、

if( Display.KEY_SELECT == param )
MyPaint();

こんなやってやりません?
これダメな例ですか?
117デフォルトの名無しさん:2005/07/13(水) 17:57:01
917 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 14:52:45
>>916
それしかしないならかまわないが、基本的にダメな例じゃないかな。
キープレスイベントではグローバル変数にキー取得データを代入するようにすべき。
イベント内部ではキー関係以外でも呼び出される為余計な処理は入れないのが基本。

ゲームなんかで色々多岐に分岐する際そいう作り方だと
呼び出されるたびに無駄なメモリの確保やら色々されてしまい結果的に容量不足になる。
処理速度を安定させることも難しくなるし、根本的に作り直しをすべきだと思う。


918 名前:デフォルトの名無しさん 投稿日:2005/06/21(火) 15:12:35
>>916
>>917の言うとおり。
processEvent()内で描画などの「重い」とされる処理をしちゃだめ。
プログラミングガイドに書いてあるでしょう。 ←重要
他に例えばスクラッチパッドのアクセスや通信もここに書いてはダメ。
「あまりやらない方がいい」ではなく「やってはダメ」と覚えて。

processEvent()はケータイ本体側(システム側)からユーザー入力などのイベントを
プログラムの動作とは非同期にプログラム側へ通知する役目を持つメソッド。
通知を妨げるような処理をやってはいけない。
やるのは、押されたキーの値の代入とか、フラグの上げ下げとか、その程度で。
118デフォルトの名無しさん:2005/07/13(水) 18:05:25
イベント内でリペイントもダメ??
119112:2005/07/13(水) 18:16:24
すいません、質問が重複しますが、
processEventでrepainもダメですか?
120デフォルトの名無しさん:2005/07/13(水) 18:21:47
やってみれば?
121112:2005/07/13(水) 18:25:11
上の過去ログの914さまの書き込みだと、repaint()だとオッケーな様な気がします。
NGでしたらごめんなさい。


P900iだと
processEvent(SELCT押下)→repaint()→paint()(フラグON、メッセージ表示開始)
(表示中にSELECT押下)→processEventでフラグの確認、フラグで弾く
paint()終了時に、フラグ外す。
(SELECT押下)→次のメッセージ

F900iだと
processEvent(SELCT押下)→repaint()→paint()(フラグON、メッセージ表示開始)
(表示中にSELECT押下)→processEventに何も入ってこない、フラグの判定すら出来ない状態
paint()終了時に、フラグ外す。
再描画完了後→processEventに一気に連打したぶんのSELECTイベント
メッセージが表示されたらもう次のメッセージの描画開始

となってしまいます。
追加ですが、SHとDとNでも連打しても平気でした。
122デフォルトの名無しさん:2005/07/13(水) 19:11:29
>>112
paint とかのシステムから呼ばれる関数内で時間のかかる処理を
するという設計がダメ。(startとかrunは別として)。

メインのループを作って、その中でCanvas#getGraphics で得た
Grapchics に普通に書けば良い。こうした普通の処理の間には
processEventはちゃんと呼ばれるので、そこでテキトーな変数に
キーコードを入れておく。

メインループではぐるぐる回りながらキーコードを見て、
何か入っていたら0に戻して対応する処理をする。
0のときには電池がもったいないので10msecくらいSleepしておく。

そんな感じで。
123デフォルトの名無しさん:2005/07/13(水) 21:58:41
今までテキストエディタでソースを書いていたのですが、Eclipseを使ってみようと
Eclipse2.1.2をインストールしてDojaのプラグインも入れました。

HelloWorldのような簡単なアプリは出来ましたが、
GIFファイルをresフォルダに入れて読み込もうとすると実行時に

com.nttdocomo.io.ConnectionException: Unexpected I/O exception

のエラーが出ます。

iAppliTool for Doja 4.0だと実行できるのですが、なぜなのでしょうか?

124デフォルトの名無しさん:2005/07/13(水) 22:13:31
iアプリで電話発信を使ったプログラムを作ろうと思っています。
エミュレータ上では実行できると思うのですが実機(docomoの携帯電話)では
電話発信できるのでしょうか?
いろいろ調べて「トラステッドiアプリ」の関係で使えないと思ってるのですが、
詳しい方教えてください。
参考になりそうなURLも教えてください
125デフォルトの名無しさん:2005/07/13(水) 23:39:16
電話発信ってのは、電話をかける機能のことか?
あれはトラステッドじゃなくて普通のでもいけるよ。
126デフォルトの名無しさん:2005/07/14(木) 07:57:32
そろそろ期末テストが終わった頃かな。
127デフォルトの名無しさん:2005/07/14(木) 08:19:37
>>125
電話をかける機能のことです。
詳しく書いてあるところ教えていただけませんか?
128デフォルトの名無しさん:2005/07/14(木) 09:54:55
公式のAPIリファレンスミロ。
Phoneクラスだ。
っていうか

Phone.call("177");
で天気予報にかけられるよ。これだけだ
129デフォルトの名無しさん:2005/07/14(木) 10:11:34
>>122
追加。

実機検証した限りだと、その通りにやっても、明示的に sleep() かけないと
processEvent()が呼ばれず、入力がバッファリングされてしまうパターンに
遭遇したことがある。

これは半分以上機種依存の話だと思うんだけど、P505でそうなった。
メインループ中にThread.yield()入れることで緩和できるんだけど、
どうもある程度まとまった処理時間をprocessEvent()発行部分に
「明示的に」渡してやらないとならないと、やっぱり少しずつ
キー入力情報とかをバッファリングする様になって、最終的には
2〜3秒の入力遅延を引き起こすようになった。

yield() だけじゃなく、Thread.sleep() で、ある程度の時間
メインループを眠らせるようにすることで解決できた。

参考まで。
130デフォルトの名無しさん:2005/07/14(木) 10:30:14
>>128
公式のAPIリファレンスってどこにありますか?
131デフォルトの名無しさん:2005/07/14(木) 10:44:06
ヒント:テンプレ
132デフォルトの名無しさん:2005/07/14(木) 11:01:22
第2ヒント:DoJaはどこから?
133デフォルトの名無しさん:2005/07/14(木) 11:50:40
>>121
そもそもイベント内でフラグ判断して
処理分岐させる考え方を変えたほうがいい。
アプリの規模にもよるがその内癌になるぞ。

プレスイベントを使ってキー入力を処理したい場合
そこではgetKeypadState等を利用してデータ取得するなどだけで
極力記述の量を減らす。最低限の処理しか入れない。
その取得したデータをメインループで参照する形を取る。
この方法だとそもそも>>112のような症状は出ない。
134デフォルトの名無しさん:2005/07/14(木) 18:41:49
すれ違いかもしれませんが・・
imodeで動くのはjavaだけなの?
他の言語はうごかない?
135デフォルトの名無しさん:2005/07/14(木) 19:30:21
>>134他の言語?
ネイティブアプリはメーカーの開発部門に就職しない限り無理
flashで遊んどけよ
136デフォルトの名無しさん:2005/07/14(木) 20:03:57
>>134
どんな言語でも動くよ。
自分で実行環境作ればw
137デフォルトの名無しさん:2005/07/14(木) 20:06:50
Flashでいいんじゃね?
138デフォルトの名無しさん:2005/07/14(木) 21:16:05
Perl入れてUNIX機にw
139デフォルトの名無しさん:2005/07/14(木) 22:14:36
>>134
MARQUEE使えば、iモードで日本語も動くよ。
140デフォルトの名無しさん:2005/07/15(金) 10:19:14
もう夏だな('A`)y-~~

夏季商戦みたいな盛り上がりもないし、
携帯バブルもはじけたのか最近は新機種とか新機能とか
静かだねぇ。
141デフォルトの名無しさん:2005/07/15(金) 10:25:12
902iが出ても申し訳なさそうに容量がちょびっと増えるだけだろうなぁ。
142デフォルトの名無しさん:2005/07/15(金) 11:51:26
700isシリーズがもうすぐ出るがアプリ的にはあんまり変化ないしな。
143デフォルトの名無しさん:2005/07/15(金) 14:01:48
>>110
漏れはこうやってる、

$javac -target 1.1 -g:none -bootclasspath ../../../lib/classes.zip -classpath ../../../lib/doja_classes.zip
../../../bin/preverify -classpath ../../../lib/classes.zip\\;../../../lib/doja_classes.zip @class
cd output; zip -9 -m -D -X ../$jar @class

当然だが、クラスの順番が変わるとサイズも変わる
144デフォルトの名無しさん:2005/07/15(金) 22:41:39
>>142
いいじゃないか、余計な仕事が増えなくて。
しんどくてしんどくて、体がだるい。
夏バテなのか、冷房病か・・・ううぅ
145デフォルトの名無しさん:2005/07/16(土) 02:41:26
>>124
まずはADFの設定で
電話に関するキーがある筈
キーを設定しないと動かないぞ。

次にDoJaのJAVADocに
Phoneクラスに電話をかけるメソッドが
あるから目を通しておくれ
146デフォルトの名無しさん:2005/07/16(土) 11:53:37
最近、久々にiアプリを作って見ようかと思ってます。

Doja1.0時代に、メモ帳とDoComoの開発ツールだけで1本作った経験がありますが、
最近は何かメジャーで便利な開発ツールがあるのでしょうか?
ググっては見ましたが、昔と今の情報が混ざって、
何を使えばいいのかあまりわかりません。

ちなみに、Eclipse関係はキライなので、勘弁してください。

コンパイル支援ツール、デバッガ、エミュレータなど、
最近は、どんなものが定番なんでしょうか?

147デフォルトの名無しさん:2005/07/16(土) 12:07:28
>Eclipse関係はキライなので、勘弁してください。

エー

後学のために、嫌いな理由を教えて欲しい。
マジでeclipse一択だと思うんだが。
148デフォルトの名無しさん:2005/07/16(土) 12:09:57
そのあたりは進化してないよ。
好きな総合環境を持ってくるが吉。
俺はVCのmakefileの変わりにbatを割り当て、ビルドできるようにしている。
149デフォルトの名無しさん:2005/07/16(土) 12:10:39
eclipseってプリプロセッサついてる?
ついてるなら一択なんだが。
150デフォルトの名無しさん:2005/07/16(土) 12:15:16
EmacsからEclipsに進化できない人間なのれす。
151デフォルトの名無しさん:2005/07/16(土) 13:06:37
EmacsとMakefileで開発してまつ。
特に不便を感じませんw
152デフォルトの名無しさん:2005/07/16(土) 14:02:23
ドコモの開発ツールでコンパイルとかって、Doja4.0のやつでも、
Doja1.0相当のJavaしか使ってなかったら、503iでも動く?
153デフォルトの名無しさん:2005/07/16(土) 14:38:08
>>152
余裕。
154デフォルトの名無しさん:2005/07/16(土) 14:45:35
なるほど、さんくす。

でも、古いプログラムを最新版の環境でコンパイルしてみたら、
容量増えてしまって10k超えてしまった…。

ハンドオプティマイズしまくっていた10236バイトのバイナリが、
10280バイトになってたよ、ママン…。
155デフォルトの名無しさん:2005/07/16(土) 15:08:54
そろそろアプリサイズ10kは伝説になりつつあるので無問題。
156デフォルトの名無しさん:2005/07/16(土) 20:31:29
DL料だけでパケ料金は要らないオススメのiアプリなぃか?
157デフォルトの名無しさん:2005/07/16(土) 20:35:17
( ´ー`)つ[自作]
158デフォルトの名無しさん:2005/07/16(土) 23:10:48
>>150
>>151
藻前らは漏れでつか

データ変換のツールとかかませるから
Makefileないとちょっと辛い
159デフォルトの名無しさん:2005/07/16(土) 23:11:43
Javaならantだろ
160デフォルトの名無しさん:2005/07/16(土) 23:37:47
バッチファイルで十分
161デフォルトの名無しさん:2005/07/17(日) 02:41:19
>>146
俺は仕事で負荷試験用の
トラスデッド(DX)iアプリを作成しているけど
コイツを薦めておくか

つ【JDK1.5+DoJa 4.0】

それより、トラスデッドiアプリの試験が
俺の環境では出来ないんで
別の人がシグナリングテスタ経由で
端末に繋げてやってるみたいだが
こんなので検証した人っている?

ttp://www.anritsu.co.jp/Products/List.asp?SID=20
162デフォルトの名無しさん:2005/07/17(日) 03:05:04
ttp://k-tai.impress.co.jp/cda/article/event/24849.html
どうしても実機でソースデバッグしたい、と思ったことがないんだけどどーよ
163デフォルトの名無しさん:2005/07/17(日) 10:25:03
>>161
擬似局でDLする方法もあるけど、これ面倒。

USB接続でアプリ書き込んじゃう方が簡単でいいと思うけど、
メーカーによっては書き込みツールが存在しないのかも。
164デフォルトの名無しさん:2005/07/17(日) 23:13:02
ソフィアなんちゃらって最適化ソフト、誰か使ってますか?
ProGuard+JoGA+7Zipでもまだ足りず、結局手でクラスマージして
無理矢理30KBに押し込めたりの作業が相変わらず憑いて回るんだけど、いい加減もう疲れた…。

1クラス1万行とか、二度と読み返せないほど汚染されきったソース残すくらいなら、
会社に買ってもらった方がいい気がするんだけど、それも性能次第。
1クライアント35万は安くないし。

試用版申し込んでみたけど、どのくらいの性能なのかな…。
もし今までのハンドオプティマイズの苦労を鼻息で吹き飛ばすほどの
性能発揮してくれたら、今までの苦労の無駄さ加減に泣けてくるけど、嬉しくもあるな…。
165デフォルトの名無しさん:2005/07/18(月) 01:26:01
>>164
プリプロセッサを使ってガンガンに書いたコードだと4%〜5%くらいは減った
というか7zipの威力が大きい
普通の書き方はしたことないので判りません


が、結局コード実行の正当性を確認する時間がとれなかったので未使用のまま仕事が終わった
166デフォルトの名無しさん:2005/07/18(月) 02:27:07
あれ?
7zipとは併用できないの?
出来上がったjarを解凍->再凍結してjamのサイズ書き換えるだけだよね?
7zip様の圧縮効率の良さには本当助けられてるけど、やっぱりclassファイルが
どれだけ縮んでくれるかも大きいし、この辺はハンドオプティマイズだと
限界があるっつーか、面倒くさ過ぎ。

JoGAがうたってるclass mergeの機能がちゃんと働いてくれれば、
この種の苦労は大分減るんだけど…。
Canvas継承の共通フレームワーク->を継承してfinal宣言した
アプリ実体クラスのmergeすらしてくれない。

ゲームとかみたいに音を積極的に使おうとすると、MediaListner分で
さらに余計にクラス消費しちゃうし、ロード中をスレッドで待機させようと
すれば、さらにまたクラスを食っちまう。
こんな中で、クラス数を減らせるのは即容量に跳ね返ってくるので
自動化できると助かるんだけど…。

プリプロセッサ使っちゃうと、もうJavaでもなんでもない「なんでもあり」の
世界に逝っちゃうしね。…使うんだけどさ、結局。
167デフォルトの名無しさん:2005/07/18(月) 02:48:26
ソフィアのクラスマージは
稀にとんでもない実行速度低下を引き起こすんだわ
俺が昔やってたのが偶々そうなって焦った
168デフォルトの名無しさん:2005/07/18(月) 08:28:05
>>166
ああ書き方紛らわしかったかなスマン
SophiaCompressだけの最適化 -> 2%〜3%
さらに7zip使って圧縮してもらう機能 -> 4%〜6%

もちろん普通なプリプロ気にせずに書いたコードなら 20%くらいは平均縮んだんだけどね
ただもうドングルを管理者に返しちゃったから検証することできんなあ

でもさ、最近BREWとのマージをやりやすくするために、
あえてプリプロをガンガン使うコードになってきたんだけど、俺
169デフォルトの名無しさん:2005/07/18(月) 09:50:02
>>168
>でもさ、最近BREWとのマージをやりやすくするために、
>あえてプリプロをガンガン使うコードになってきたんだけど、俺
俺も。
170デフォルトの名無しさん:2005/07/18(月) 10:49:21
そういう人多いな…つか、仕事でやってればそうなるか。

iアプリってどうなっちまうんだろ、これから。
171デフォルトの名無しさん:2005/07/18(月) 11:34:15
アプリCPUのマルチコア化
172デフォルトの名無しさん:2005/07/18(月) 13:11:17
消費電力・・・
173デフォルトの名無しさん:2005/07/18(月) 14:06:15
とりあえず、電話機能をなくしてもいいからアプリ機能をもっと豪華にして欲しい。
174デフォルトの名無しさん:2005/07/18(月) 14:32:52
>>173
つLinuxザウルス
175デフォルトの名無しさん:2005/07/18(月) 18:59:11
static final intな定数を置換するスクリプトにかけただけで3k縮んでびびった
176デフォルトの名無しさん:2005/07/18(月) 19:38:55
そもそもdefineでやってないのはいかがなものか。
177デフォルトの名無しさん:2005/07/18(月) 19:52:58
メールの保存量が限界に近づいたら、
警告だすような機能つけたいんですけど
iアプリから、携帯のそういう情報を参照することってできますか?
178デフォルトの名無しさん:2005/07/18(月) 19:55:33
OBEX(赤外線)→FeriCaと来て
次はBluetoothか?

余談だが、噂には聞いたけど
外部メモリーカードと連携のサポートもありえるとか・・・
179デフォルトの名無しさん:2005/07/18(月) 20:43:50
>>175
そういうのってproguardとかがやってくれないか?
180デフォルトの名無しさん:2005/07/18(月) 21:43:50
>>175
ほんとに??
そもそもstatic final intはシンボル名を埋め込んではいけないとJLSで決まってるので、
static final int HOGE = 4;
の時に、HOGEと書いても4と書いても結果は変わらないはずなんだが。
181デフォルトの名無しさん:2005/07/18(月) 22:17:15
>180
ソース中の HOGE を全部 4 に替えて
static final int HOGE = 4; の宣言自体を削除ってことでしょ
182デフォルトの名無しさん:2005/07/18(月) 22:20:42
参照が有ろうと無かろうと、

private static final int HOGE=4

の宣言そのものは依然としてclass内に残ってるので、
それが削れればサイズが減るのは自明。

ProGuardとかは、この種の定数宣言をある程度まで削除してくれるみたいだけど、
100%ってわけではないみたい。
183デフォルトの名無しさん:2005/07/18(月) 23:43:01
>>182
ただそれだけで3kも縮むかなぁ
184デフォルトの名無しさん:2005/07/19(火) 00:29:24
>>180
ああ、そういうことか。
頑張ってDoJa APIで定義されてる定数を置換してるのかと思ったよ。
それなら納得。
185184:2005/07/19(火) 00:30:06
すまん。
>>180>>181
です。
186デフォルトの名無しさん:2005/07/19(火) 07:17:09
結論として、SophiaCompressは、フリーで使えるProGuard、JoGA、JavaBlender、(と7-Zip)みたいなツール達が提供する機能を覆すほどの
性能的アドバンテージはなさげ、ということでよろし?

話は飛ぶんだけど、別クラスのメソッド呼び出す時、JavaのVMって
関数名検索かけるよね?
Aクラスから「ごくたまに」しか呼び出さないBクラスのメソッドがあったとき、
一部端末でその呼び出しが目に見えて遅い〜マジで1秒近く止まる…
単にprivate final static で宣言されたString返すだけなのに…という怪現象に
見舞われたことがあって、その辺の実装が端末ごとに異なるなら、ますます
class mergeの自動化を、どこかの誰かにお願いしたかったんだけど、
容量面でも、速度面でも、Zip圧縮の辞書の有効性稼ぐ意味でも

・1クラスにぶっこめるだけぶっこめ

は永遠の真理ってことでFAなんでしょうか?
プリプロセッサ使って外科手術的にコトに当たるのが最良でしょうか?
187デフォルトの名無しさん:2005/07/19(火) 12:11:59
プログラミンをするのは全く初めてなんですが、
どうしても作りたいアプリがあったので、独学で始めました。

アプリはjavaらしい、ということで取敢えず「やさしいJava」を買って来ました。
で、一応全てをマスターしまして次は「やさしいJava 活用編」を買って来て実地訓練を積もうかと考えていたのですが…。

ここに来て気づきましたがiアプリはJ2MEなんですよね。
「やさしいJava」はJ2SE向けじゃないですか。
ここは活用編を買うよりも、J2MEの入門書→iアプリの解説本といった方が宜しいのでしょうか。
iアプリ以外でのjava知識の活用は考えておりません。
188デフォルトの名無しさん:2005/07/19(火) 13:37:32
>>187
別にそのまま勉強して良いかと。
基本がしっかりマスターできればちょっと言語変わっても
対応はそこそこすぐ出来るようになる。

ただ、iアプリは制限や癖がきついので
プログラム的にはあってても正常に動かないことがしばしば。
iアプリの実験的な簡易プログラムの数をこなすのをお勧めする。
189デフォルトの名無しさん:2005/07/19(火) 14:10:24
つーか、初心者に携帯アプリやらせるのってどうよ?
携帯アプリってイロモノ曲芸みたいなものだと思うんだが。

メモリとCPUに余裕が無いと動かないアプリしか作れないってのも困るけど、
いきなりJavaじゃないJavaの書き方覚えるようでも困るんじゃないかと思うのだが・・・
190デフォルトの名無しさん:2005/07/19(火) 14:16:22
音の再生で細かく調べてないのだけど
こんな症状がでたので報告。対象はD900i。
結果から言えば、同じサウンドを同時に鳴らせない。

オーディオのポートを2つ作る。
MediaManager.getSoundでa.mldからサウンドを作成してbに格納、初期化などする。
ポート0にbをセットして再生。(正常に鳴る)
再生されてる最中にポート1に同じbをセットして再生しようとすると
ポート0の再生を停止(内部でstopを呼んでる?)して、
しかもご丁寧にポート0にセットしてたのをはずして(内部nullになる?)
ポート1にセットしてポート1の再生が始まる。

比較対照としてN900iで同じことをしたがこっちは同時に再生される。
ちなみにa.mldからcを作成してポート0でb、ポート1でcとすると
どっちも正常に鳴る。
ポートの数だけサウンド持たないと同じ音は同時にならないっぽい。
191デフォルトの名無しさん:2005/07/19(火) 15:14:13
きちんと2つ作成すればいいじゃない
192デフォルトの名無しさん:2005/07/19(火) 15:24:41
>>191
そりゃそうなんだが、メモリ少ないDで
複数作成はきついなぁって思ったまでw
仕様なんだろうがきついのぉって思って報告したまで
193デフォルトの名無しさん:2005/07/19(火) 16:53:51
音楽はほとんどメモリー使わないから、気にしなくていいよー。
ほとんどはグラフィック用メモリーの問題(´・ω・`)
194デフォルトの名無しさん:2005/07/19(火) 18:27:35
>>193
なぬ・・・そうなのか。
空きメモリー計ってやったことないから知らなかったよ。
195デフォルトの名無しさん:2005/07/19(火) 20:13:42
>>189
やりたいと思ったものからやればいいんじゃね?
嫌々やっても仕方ないだろうし。
いきなりVC++をやってる人もいるし。
196デフォルトの名無しさん:2005/07/19(火) 21:15:03
それ俺だ。>VC++
197デフォルトの名無しさん:2005/07/19(火) 21:33:19
Component already added to other Panel

このエラーから、一つのメソッドで実装した画像やらラベルは
他のメソッドからは参照できない仕様なんでしょうか?
回避としては、別に複製するしか無いのでしょうか。
198デフォルトの名無しさん:2005/07/19(火) 21:38:55
>>197
複製というか、コンポーネントのインスタンスを
Panelに貼り付ける分だけ作ればいいだけだと思うけど。
199デフォルトの名無しさん:2005/07/19(火) 21:50:49
>>198
ありがとうございます。できました。
iアプリ初めてだったので、ビビってしまいましたが
何のことはない、newしてませんでした。
200デフォルトの名無しさん:2005/07/20(水) 14:34:16
>>177
できない、と思う。
201デフォルトの名無しさん:2005/07/20(水) 22:47:59
>>186
その遅くなる一部の端末ってどれのこと?
いくらなんでもメソッドの検索がそんなに遅いとは思えない。
202デフォルトの名無しさん:2005/07/22(金) 23:20:35
>>200
iアプリからはそういった情報を参照できないんですか…残念でつ。
ありがとうございました。
203デフォルトの名無しさん:2005/07/22(金) 23:52:32
>>186
> 結論として、SophiaCompressは、フリーで使えるツール達が提供する機能を覆すほどの
> 性能的アドバンテージはなさげ、ということでよろし?

サイズを小さくする、ということにだけ着目するならそうでもない。
FOMAの100KBという制限ならば、結構普通に(詰め込まないで)書いて
最後にSophiaCompressとしたほうが、楽だしメンテ性も維持できて
結構メリットでかいよ。
204デフォルトの名無しさん:2005/07/23(土) 02:10:50
元が大きい分、圧縮率が同じでも得られる利益の幅が違うってことかな。
その分動作速度が落ちるとか?
205デフォルトの名無しさん:2005/07/23(土) 13:44:08
下記のようなiアプリはないでしょうか?
受信したメールの内容を読み取り、電話帳に登録するとか、
スケジュールに登録するとか。
206デフォルトの名無しさん:2005/07/23(土) 13:46:44
メールの内容はトラステッドでないと取得できない。

また、トラステッドでも取得して中身を解析することができない。
(XStringというデータで取得する。詳しくはリファレンス読め)

どういうものを求めているのか知らんが、上の条件のもとでも大丈夫か?
207デフォルトの名無しさん:2005/07/23(土) 15:31:36
>>206
ありごとございます。参考にしてみます。
PCで電話帳・スケジュールを管理して、必要時に携帯にメールして利用したい。
携帯でいろいろ操作するのがめんどくさいので・・・
208デフォルトの名無しさん:2005/07/23(土) 16:40:55
>>207
>>206 == 個人じゃムリ
209デフォルトの名無しさん:2005/07/23(土) 22:44:06
システム関係で公表されてないクラスが相当あるんだろうな。

勝手アプリで悪用されても、ドコモの信頼問題になっちゃうわけだからしゃーないか…。
そう考えると、システム系まで公開したボーダフォンは自由度高そう。(無謀?)
210デフォルトの名無しさん:2005/07/24(日) 02:28:01
家の環境でやろとして
DoJa3.5をDLしてコンパイルしたら・・・

「javac: ターゲットリリース 1.1 がデフォルトのソースリリース 1.5 と競合しています。」
って出てました・・・

DoJa4.0だと・・・
「エラー: サポートされていないエンコーディングです: SJIS_i」
って出ているので
保存している文字コードを変えても状況は変わらず…

当方JDK1.5と組み合わせで使ってるんで
解決策教えて、エロイ使途(つД`)・゚・
211デフォルトの名無しさん:2005/07/24(日) 03:21:00
>>210
JDK1.3.1をインストールするのが一番楽じゃないかしら。
212デフォルトの名無しさん:2005/07/24(日) 12:01:50
「Sun.tools.javac.mainを使う」をチェックしる。
213デフォルトの名無しさん:2005/07/24(日) 19:14:05
>>210
メニューの設定から、Sun.tools.javac.mainを使う、にチェックね。

>>211
つりじゃないとしても、かわいそう。やめれ
214211:2005/07/24(日) 21:01:32
>>213
いや、釣りじゃないよ。
ドコモが「1.3.1_09でした動作保障しないよ」って言ってる以上、
そのバージョンを入れるのが一番すんなり行くでしょ。
215デフォルトの名無しさん:2005/07/24(日) 21:06:08
そうは言っても現実的じゃない罠。
1.5でビルドしても何も変わらないんだし、いいんじゃまいか。
ということで>>212-213の言うとおりにすれば解決するので、頑張れ>>210
216デフォルトの名無しさん:2005/07/24(日) 21:44:24
えらい言われようだな
1.3.1系使ってるのは負け組みか
217デフォルトの名無しさん:2005/07/24(日) 22:32:30
俺も。1.3.1がこんなにバージョンアップしてるのに!!
218デフォルトの名無しさん:2005/07/24(日) 23:59:28
おれも 1.3.1 使ってるよ。
今のところとくに不自由ないから下手に新しいの入れたくない。
219デフォルトの名無しさん:2005/07/25(月) 00:45:38
古くても別にかまわんが、新しいの入れててもDojaの使用には問題ないって話じゃねーの?
段々スレ違いになってきてる罠。
220デフォルトの名無しさん:2005/07/25(月) 11:07:39
あー、なれてれば1.5でもいいけど、やめたほうがいいよ。
1.4から追加されたString#split()と使って「エミュで動くのに、実機だとうごかねー」とかはまるから。
221デフォルトの名無しさん:2005/07/25(月) 15:56:52
夏場名物の学生が質問っす。

現在の携帯の通信って赤外線とかHTTPとかが主っぽいけど、
未だiアプリでBluetoothを使った外部機器との通信って実現できないんですか?
Bluetooth搭載器があるとは聞くけど、利用しているという話が聞こえないもので。
222デフォルトの名無しさん:2005/07/25(月) 16:14:14
Canvasクラスを二つ使っているのですが、
setCurrentで切り替える時に、どうしても画面が一瞬白くなってしまいます。
lockしたたまま切り替えたりしたりしてもダメでした。
解決策はないでしょうか?
ご存知の方いらっしゃいましたら、よろしくお願いいたします。
223デフォルトの名無しさん:2005/07/25(月) 16:31:19
>>222
機種によるが、基本的にダメ。
Canvasクラスを1つで作るしかあるまい。
224デフォルトの名無しさん:2005/07/25(月) 16:37:25
>>223
レスありがとうございます。
ガーン。。。ダメなんですか。。。
今、カードゲームを作っていて、カード対戦中、対戦キャラとの会話移動、
部分を分けて作りました。
キー入力などが整理しやすい、ソースの移植がラクといった理由からです。
一つにまとめるの面倒ですが、チカチカされても困るので
一つにします。ありがとうございました。
225デフォルトの名無しさん:2005/07/25(月) 17:16:33
iαppliTool for Doja-3.0で、少し前まで全く問題なかったんですが、
突然音が出なくなってしまいました。
多分、音声ファイルの形式をガチャガチャ変えた(ちょっと実験していたんで)
ときからだと思います。

PC自体の音(音声ファイル)は出ていて、エミュレータ内のみ出ないんです
(実機では音出ました)。
プロジェクトを新規作成したものもダメ、
再起動しても、再インストールしても直りません。
何か原因か対処法に心当たりありませんか?(つд`)
226デフォルトの名無しさん:2005/07/25(月) 17:29:59
[コントロールパネル]

[サウンドとオーディオデバイスのプロパティ]

[オーディオタブ]
にある
[MIDI音楽の再生]

[既定のデバイス]は何になってる?

そこ調整で直る予感
227デフォルトの名無しさん:2005/07/25(月) 17:54:01
既定デバイスはMicrosoft GS Wavetable SW Synthになってます。
228デフォルトの名無しさん:2005/07/25(月) 18:06:46
>224
キー入力は、きちんと変数に一旦プールしているかい?
PRESSされたところとかで処理しようとすると、ぐちゃぐちゃしたソースになりやすい。

キーの入力部分(PRESSイベント)と、キーのチェック部分は切り分けよう。
229210:2005/07/25(月) 20:46:03
みんな豚クス。
とりあえず、コンパイル問題は解決したが
必要が有ればJDK1.4にデグレードしてみるよ

これで自分のSO504iと
F900iとF901iCで実験が出来る…
230デフォルトの名無しさん:2005/07/25(月) 22:38:12
iアプリでナビゲーションシステムを作るため、図形の回転・拡大のプログラムを作成しています。 
画面の中心を基準に回転・拡大をさせようと思っているのですが、
どういう風に回転・拡大させればいいか分かりません。
画面の左上を基準にしたのは、できそうなのですが。
どなたかプログラムやサイトを教えてください。
231デフォルトの名無しさん:2005/07/25(月) 22:52:46
>>222
setBackgroundでごませられる
232デフォルトの名無しさん:2005/07/25(月) 23:36:17
>>230
その質問ではどういう風に答えればいいか分かりません。
回転・拡大させようとしてるのは何? Image? Sprite?
233デフォルトの名無しさん:2005/07/26(火) 08:32:46
自分で定義した画面上にある長方形とかの図形です。
プログラムを教えてください
234232:2005/07/26(火) 09:18:04
>>233
長方形「とか」って何?

ふつうに自分で座標計算して、Graphics#fillPolygon()で描けばいいんじゃない?
そのやり方がわかんないなら、もっと勉強してから来い。
235デフォルトの名無しさん:2005/07/26(火) 09:24:18
>>234教えてください。
236デフォルトの名無しさん:2005/07/26(火) 09:35:54
アフィン変換でも使ってろ。2〜3FPSしかでらんが。
237デフォルトの名無しさん:2005/07/26(火) 09:41:18
アフィンは遅すぎるよなー。

>>235
とりあえずアルゴリズムスレにでもいくといいよ。
そういうサンプルがテンプレにあるだろうし。

>>231
即座に画面が切り替わって欲しいんだと思われ。
setBackGroundは好きな色をつけられるが、単色だしね。
238デフォルトの名無しさん:2005/07/26(火) 11:20:39
アフィンってそんなに重いのか・・・しらなかったぜ。

>>235
左上を基準としたのはできるのなら
左上から計算した結果を保持して
画面中央へずらせばいいんじゃね?

みんなが返答できないのは君の定義したというデータがどんな形なのかとか
一切みえないからなんとも言えないんだよ。GIFとか決まった形でなく
自分で定義したものを見せないでどうにかしろって言うのは不可能。
少なくともこう言う事やってるというのはわかるソースの一部を見せないとな。
他人に0からソースつくって見せろというのはあつかましいにも程があるぞ。
239デフォルトの名無しさん:2005/07/26(火) 13:59:24
>>235
2Dに限定されるなら自前で透視変換ぐらいすればいいんじゃないか?
sin cosがわかってればベクトルすら知らなくても出来るだろ。
わかんなかったら、中学の算数を再履修することだ
240デフォルトの名無しさん:2005/07/26(火) 21:01:51
241デフォルトの名無しさん:2005/07/27(水) 14:05:49
質問です。
トラステッド専用の機能と、そうでない機能はどのように見分けるのでしょうか。

APIリファレンスに書かれているかと思い探してみましたが、明らかにトラステッド専用のクラスであるMailクラスにも、その旨記述はありませんでした。
公式の
ttp://www.nttdocomo.co.jp/p_s/imode/java/qa_505i.html#1-4
でもちょっと触れられているだけで、詳しくは載っていません。
どこを見ればよろしいでしょうか。
242デフォルトの名無しさん:2005/07/27(水) 14:59:36
>>240
iアプリコンテンツ開発ガイドの詳細編の「com.nttdocomo.systemパッケージ」のページ。
>このパッケージにはトラステッドiアプリにしか使用が許可されない
>クラスやメソッドが多く含まれています。
>ここではそれらの機能については解説しません。

つまりそこに載ってるのがトラステッドでないクラス。
243デフォルトの名無しさん:2005/07/27(水) 15:00:36
>>242>>240宛てじゃなくて>>241宛ての間違い
244デフォルトの名無しさん:2005/07/28(木) 00:01:55
>>241
移動機の上部にある
「α」マークが「DX」に変ればトラスデットiアプリ。

トラスデットでいじれる機能は
住所録/電話帳のようなプライバシーに関わる機能
のようなデータを編集できるそうな。

トラスデットアプリの試験を実機でやるならば
シグナリングテスタがなければ出来ないぞ。

ちなみにFeriCaでも
関係はあるらしいそうだ。

//まぁ、トラスデッドでなくても
//FeriCa機能の一部は使えるけどさ
245デフォルトの名無しさん:2005/07/31(日) 06:31:52
iアプリの自作ゲームが作りたくてJavaの勉強始めたものです。
内容以前の超初心者質問で微妙にスレ違いかもしれませんが、どうかお許しください。

プログラミング経験はVisualBasicだけです。
基本的にサーバーサイドやデスクトップアプリケーションではなく、
iアプリ作ることが目的でJavaを始めたのですが、基本書を何回か読み終えて次に
何したらいいかわからず迷っています。。

『独習Java』と『Javaで学ぶアルゴリズムとデータ構造』という本でJavaの基本は掴めたつもりなのですが、
これからいきなり
iアプリゲーム開発テキストブックhttp://www.amazon.co.jp/exec/obidos/ASIN/4839917361/
みたいな専門の本に手つけちゃって大丈夫ですか?

iアプリ専門の本やる前に、やっぱAWTやSwingなどGUIの知識が必要になるのでしょうか?
iアプリの前にJavaのこの分野は知っておけ、みたいな
急がば回れ事項などありましたらアドバイスください。おねぎします。

246デフォルトの名無しさん:2005/07/31(日) 09:05:44
>>245
現実的に糞役にたたないAWT、Swingを学ぶくらいなら、
いきなりiアプリのGUIを学ぶことに時間をかける、というのが俺の感想

そのあとデスクトップPCのアプリをJavaでかきたい、というならやってもいいかもしれんけど
247デフォルトの名無しさん:2005/07/31(日) 09:20:19
JavaGUIの知識はあってもなくても違いはそんなにないよ。
VBやってたなら基本はJavaの本を読めばオッケー。あとはDoCoMo公式サイトのPDFを読んでAPIリファレンスを用意して、いきなり本でもいいけど、まずiアプリの情報サイトがいくつかあるから感じだけつかんでからでもいいと思う。
俺もJavaに詳しくなくてiアプリから入って4200円で本を買ったがよく分からなかったよw
サイト回ってこんなふうに書くのかぁー、と覚えた。それから本読んだらすごく分かりやすくなった。
長文スマソ。
248デフォルトの名無しさん:2005/07/31(日) 10:50:26
まず、テトリスでも作ってみろ。
作ってく途中で「描画はどうするんだろう」「画像は〜」「データファイルを〜」と沢山疑問が出てくる。
そうしたらネットで調べる。

とにかくいったん完成までこぎつけ、実機で動かす。
多分動かない。
原因を探る。直す。

次にゲームを作る時は効率的なプログラムができる。

机上の空論より、まずはやってみる。勉強はやりながらする。
249デフォルトの名無しさん:2005/07/31(日) 13:04:29
習うより慣れろってやつですね
250デフォルトの名無しさん:2005/07/31(日) 15:19:34
この業界って、俺含めて学校じゃなくて趣味で覚えた人が多いから、
新人とかに教えろって言われても何を教えればいいのか悩むんだよな・・・

特に携帯アプリはプログラムの分野でも曲芸に近いからなw
251デフォルトの名無しさん:2005/07/31(日) 15:28:13
曲芸だよねぇ。
自分で書いてて、時々イヤになるもん。

うはwwなにこの汚物みたいなソースwwOOPって知ってる?wwwwww
みたいな。
1クラス1万行オーバーとか有り得ねぇよ。

あまりにも王道が通用しないっつーか、正直者ほど馬鹿をみるっつーか。
252デフォルトの名無しさん:2005/07/31(日) 16:33:35
プログラミングという技能は、絵描きとか語学とかに近い。
知識だけじゃ何もできない。とにかくコードを書くべし、書くべし!
253245:2005/07/31(日) 18:32:03
みなさん、アドバイスありがとうございます。
めっちゃ参考になりました。

今のところデスクトップアプリケーションのJavaには興味ないので
AWTとSwingには手をつけず、いきなりiアプリ作成始めたいと思います。

iアプリのためだけにJava始めました、ってのは実は後ろめたかったりもするんですが
やっとやりたいことをできるので嬉しいです。
Javaの基本も知らないで、『うのみとばし』っていうゲームを作るiアプリ本に挑戦して
一度挫折してるので、急がば回れで着実にゴールに近づきたい…。
254デフォルトの名無しさん:2005/07/31(日) 19:51:27
むしろJavaを始めるなら、iアプリ(DoJa/3.5あたり)からが良いんじゃなかろうか。
100Kもあれば、大規模なものを書こうってんじゃなきゃ
普通に書いても大丈夫だし
CLDCとかコンパクトで非常に見通しが良いから。
255デフォルトの名無しさん:2005/07/31(日) 21:04:48
だね。
ついでに手持ちの携帯電話で自分の書いたアプリが動くってのは、ちょっと感動する。
256デフォルトの名無しさん:2005/08/01(月) 15:00:38
ネットワークに接続中にキーイベントで中断する時の手順を教えていただけませんか?

ネットワークに接続するためのスレッドを作って、殺すというところまでは考えたのですが、その殺す方法が分かりません
257デフォルトの名無しさん:2005/08/01(月) 16:33:41
>>245 >>253
最初から『独習Java』や『Javaで学ぶアルゴリズムとデータ構造』だなんて、
硬派な優等生だなぁ…

と思ってたら、手始めにちゃっかり萌え本手つけてたんだなw
まぁガンガレ
258デフォルトの名無しさん:2005/08/01(月) 17:02:42
>>256
connectは能動的に切断できない。
読んだ瞬間にその部分で処理がブロッキングされる。
259デフォルトの名無しさん:2005/08/01(月) 17:03:39
>>256
アドバイスが不適切だった。すまん。
殺さなくても「この通信はもう無効だよ」というフラグでも持たせておいて、通信に成功しても失敗しても無視するようにすればいいんじゃないかな?
260デフォルトの名無しさん:2005/08/01(月) 19:19:33
>>258-259
なるほど…
つまり、その通信(datを読み込みたいのですが)をストップさせるのではなく、フラグを使って、結果が返ってきてもなかったことにするということでしょうか?
iMona等でも「中断しました」と出ますが、実際には無視していたんですね。

ありがとうございました。
261デフォルトの名無しさん:2005/08/01(月) 19:25:30
>>260
漏れは別スレッドでcloseしてる。
それですぐ中断できてるかどうかは知らんが、
一応通信側のスレッドには例外が上がってきてくれる。
262デフォルトの名無しさん:2005/08/02(火) 09:07:15
>>261
なんか危ないなぁ(;´Д`)
即中断できるのは魅力だが、全機種でその動きができるかは謎。


JAVAなんだから全機種で同じ動きしろって思うんだがね!
263デフォルトの名無しさん:2005/08/03(水) 22:58:15
>>254
Java始めるならiアプリからってのは、どうかと思うけど。

現場にいる自分が言うのもなんだけど、
初心者がアプリのプログラムから始めると
かなり悪いコードの習慣がついてしまうのではないだろか。

本人がiアプリ以外に興味ないって言うんだから仕方がないけど…
せっかくVBから巣立って、アルゴリズムの勉強までこなしてJavaはじめてるのに
なんかもったいない気がするなー。
264254:2005/08/03(水) 23:08:02
>>263
それは昔ながらの携帯Javaプログラムを想定しているから、じゃないかな?

ちゃんと基本クラスやインターフェース作って継承して、って言う普通のJavaの方法でやるなら
CLDCを始めランタイムがコンパクトにまとまっている分、全体が把握しやすくて
J2SEよりもJava学習には向いているんじゃないかという話なの
# もちろんJ2MEでも良いんだけど

容量もDoJa3.5以降は100Kあるから、ある程度のものなら普通に書いてもだいたい入っちゃうしね。
265デフォルトの名無しさん:2005/08/04(木) 02:05:57
だねー。

凝った内容のゲームを詰め込もうとかしだすと、途端に修羅道逝きだけど、
そこまでしなければいいだけのことだし。
素で書いた30KBでも、相当量のコードが入る。

Javaの勉強の素材として、携帯電話は悪くないと思うよ。
>>264の言うとおり、シンプルだしね。
266デフォルトの名無しさん:2005/08/04(木) 08:32:19
うむ。iアプリを作ることで、自分が普段持ち歩いてる携帯の上で、
自分が作ったプログラムが動く。これは非常におもしろいこと。

新しい言語(Java)を学ぶモチベーションとして大いにアリだと思う。
言語に対するモチベーションは、初心者からある程度のところまで
行くのに重要だしね

iアプリで、ある程度の規模のお手本になるような(綺麗な|巧妙な)
ソースコードってどこかにないかな
267デフォルトの名無しさん:2005/08/04(木) 09:23:12
アスキーの入門本シリーズにあるサンプルは?
268デフォルトの名無しさん:2005/08/04(木) 09:38:18
素直にん・ぱかはどうだろか。

サイトデザインが非常にナニでアレなので、抵抗ある人もいるかもしれないが。
269デフォルトの名無しさん:2005/08/04(木) 21:06:36
すみません。盛り上がっている所申し訳ないのですが、
ちと音まわりについて、お聞きしたい事があります。
今、容量を節約する為、一括にBGMデータを読込まず、
個々のステージ単位でBGMデータを読込むような形で
処理しようとしているのですが、なぜか最初に読込んだ
BGMデータが他のステージでもずっと再生され、
肝心のそのステージのBGMが再生されなく困っています。
やってる事は、クラスAudioPresenterを使用してplay()で
BGMを再生し、BGMとなる元はクラスMediaManagerを使用し、
getSoundで、BGMデータを入手しています。
このgetSoundを利用して、他のステージに行く度に
getSoundで新しいデータを入手し、
クラスAudioPresenterでのsetSoundで、
再度設定するようにしています。この際、古いデータは
System.gc()で消去しています。
そこで懸念に思っている個所が、AudioPresenterで
最初にsetSoundを設定したデータアドレスをずっと見ている
ような気がしてならないのですがどうでしょうか?
270デフォルトの名無しさん:2005/08/04(木) 21:30:10
>>269
間違いなくおまいさんのプログラムがおかしい
271デフォルトの名無しさん:2005/08/04(木) 21:39:07
>>269
素直に音の数だけMediaSoundを用意しなさい
272デフォルトの名無しさん:2005/08/04(木) 22:30:56
・・・あぃ(´・ω・`)
273デフォルトの名無しさん:2005/08/05(金) 11:10:03
>>269
同じことやったことあるがそんなバグはでなかったぞ?
なんか手順飛ばしてるんじゃね?
セットしたアドレスを見てるって言ってるがんじゃ再セットしてない??
2回目以降のスクラッチのJAR内のデータからの場合。
この処理の前に音はちゃんと止めておく。定義書いてないけど判るよね

sound.unuse();
sound.dispose();
in = Connector.openInputStream("scratchpad:///0;pos="+位置+",length="+ファイル容量);
jar = new JarInflater(in);
in.close();
sound = MediaManager.getSound(jar.getInputStream("ファイル名"));
sound.use();
bgm.setSound(sound);
jar.close();
274273:2005/08/05(金) 11:16:35
書いてないけど、
上のソースはtryで囲ってやるように。
gcもつかってないけどどっかでやればいいw

というか>>269のソースがどうなってるのか見たいな。
unuseやdisposeしたデータを読みに行く・使用するとエラー出ると思うんだが。
275デフォルトの名無しさん:2005/08/05(金) 16:10:42
鯖の転送量を減らすのにJarInflaterを使うのは正しいですか?
276デフォルトの名無しさん:2005/08/05(金) 16:36:42
>>275
転送量だけ減少させるならまぁ、間違いじゃない。
圧縮してでかくならなきゃねw
でも展開時、多少遅い機種もあるから
スピードが必要となる部分のデータには向かないこともある。
277デフォルトの名無しさん:2005/08/05(金) 23:54:04
>>276
ありがとうございます
P505が特に遅いようですね。
2kBのDATを20個ですが様子を見ながら使うことにします。
278デフォルトの名無しさん:2005/08/07(日) 11:28:21
MediaImage.use()し、MediaManager.getImage()し、Image.getImage()するとnullが返ってきてしまいます。
この場合、変な画像を使うんじゃねぇ!ということでしょうか?
279デフォルトの名無しさん:2005/08/07(日) 12:41:03
>>278
変な画像ならExceptionとかがでるんじゃね?null返して終わりとか有るかの?
初期化したImage変数(最初はnull)でuseやgetImageでException出してるのに
try-catchで例外処理してないままで変数を参照してる希ガス
280デフォルトの名無しさん:2005/08/07(日) 14:35:12
>>277
目安にしかならないけど、8KBのテキストデータを
1KBに圧縮したZipの展開に、P505で1秒前後だった。
これが許せるかどうかは、状況次第だよね。
裏スレッドで展開する等して誤摩化す手もあるし。
281デフォルトの名無しさん:2005/08/07(日) 22:12:33
>>278

>MediaImage.use()し、MediaManager.getImage()し、
うーん?
MediaImageはMediaManager.getImageしなきゃ作れないはずなんだが。
282デフォルトの名無しさん:2005/08/08(月) 12:01:47
ソフトキーのラベルって左右だけしか設定できないんでしょうか

決定キーのラベルとして中央に設定したいんですけど
283デフォルトの名無しさん:2005/08/08(月) 13:41:35
>>282
できない。
284デフォルトの名無しさん:2005/08/08(月) 13:49:02
>>283
そうですか。。。 サンクスコ
285デフォルトの名無しさん:2005/08/12(金) 04:38:15
processEvent内で重い処理(たとえば通信)を
やっては駄目だという話についてですが
業務アプリとか、完全にイベントドリブンで処理してる場合はどうしたらいいんでしょうかね?

別途スレッド立てて、その中で処理?
286デフォルトの名無しさん:2005/08/12(金) 09:47:26
>>285
当然。
システムコール内で時間のかかる処理をするなんて愚の骨頂ですわ。
287デフォルトの名無しさん:2005/08/12(金) 11:07:32
P901i でお知らせランプ点灯、アプリを作っているのですが、
着信ランプがどうしてもプログラムで点灯してくれません。(つ_T)

他の 505 だと点灯するのですが、
P901i は着信ランプを制御出来ないのでしょうか?
288デフォルトの名無しさん:2005/08/12(金) 14:37:57
>>285
喪前が業務やってるとする。客から電話で商品の注文がある(イベント)。

伝票処理して商品を手配してトイレ行って昼ごはん食べてうち帰って寝て
次の日出社して客に「届きましたか?」って聞くまで、ずっと最初の電話を
繋ぎっぱなしじゃまずいだろう、というのがスレッド化の発想。
289デフォルトの名無しさん:2005/08/12(金) 15:20:52
>>288

ずっと最初の電話を繋ぎっぱなしじゃ
「別の注文(イベント)を受け付けられないから」
まずいだろう

と書かないと混乱させるだけだぞ。
(電話は1本しか引いてないと思いねぇ)
290285:2005/08/12(金) 19:17:47
みなさんサンクス!

正直面倒ですがー、仕方ないですね
291デフォルトの名無しさん:2005/08/13(土) 04:33:58
イベントドリブンで思い出したんだけど。
IApplication#resume()ってあるよね…サスペンドからの復帰の時に呼ばれる奴。

あれ、AudioPresenterのMediaActionにSTOPイベントが
飛んでくる「前に」呼び出しやがる端末が結構な数あるのな…。

ある日のこと。STOPが飛んできたら、その時点での再生時間を控えて、
resume時にplay(time)とかしてやることで、サスペンド直後の位置から
音を再生しなおす、復元処理を仕込もうとしてたんですよ。

てっきりサスペンド発生直後か、最低でもresume()呼び出し前には
AudioPresenterのSTOPは飛んできてるものかとばっかり(実際にエミュレータはそう動く)
思い込んでて、resume()の中にAudioPresenterの復元処理を入れてたんだけど、もうトラブル続発。
調べたら、resume()の呼び出し完了後にSTOPが飛んでくる端末の多いこと。
腰が砕けた。

結局、STOPイベントが飛んできたらフラグを立てて、resume()が呼び出された時も別のフラグを立てて、
双方のフラグが立ってるAudioPresenterだけを復元、とかして解決。
フラグをチェックするタイミングは、イベントとか一切関係なしのメインループん中。

一応これで問題なく動いてるけど、納得いかねえー。
resumeかかった後にSTOPが飛ぶって普通おかしいだろ!
resumeの中で文字通りのレジューム処理できなくてどうすんだよ!
その辺どー考えてんだ携帯屋さーん!

と思った。
いいんだけど。
292デフォルトの名無しさん:2005/08/13(土) 16:02:18
iアプリでゲームを開発したのですが、F506iでテストしてみたところ
どうしても途中で動作がおかしいところがあります。
他の機種だと、正確に動くのにF506iだと、途中でフレームがスキップ
してるというか、急に一瞬画面描画がとまって、先の方へ進んでしまいます。
ちょうど、時間が飛んだ感じです。

フレーム間の時間がその瞬間だけ、3倍以上になっていて、間の処理が
飛ばされているようですが、それが起こるタイミングが完全にランダムです。
(特定のメソッドに依存しません)

いろいろ原因をネット上で調べてみたのですが、何が原因かさっぱりわからず・・・。

誰か助けてください。orz
293デフォルトの名無しさん:2005/08/13(土) 16:41:54
>>292
N505iだとその現象に良く遭遇したね
原因が同じかどうかはわからないけど
N505iで解決した方法は、runメソッドとpaintメソッドの
処理回数を1ループ一回ずつにするという方法で解決したよ
1処理1描画っていう感じかな

あと考えられるのは、paintメソッド外で描画してるとかかなぁ
私は試したことないのですが、あまりよろしくないらしいです

あまり大した助言になってないね・・頑張ってくだされ
294デフォルトの名無しさん:2005/08/13(土) 18:09:12
>>292
293がいってるがN505だと描画パイプラインが非同期だからおきる症状らしいね
unlock()する手前か後でgetPixelsでもやって、描画パイプラインを一旦ストールさせてみると良いかもしれん
295デフォルトの名無しさん:2005/08/14(日) 02:01:55
>>291
サスペンド前にSTOP飛ばないのは携帯のバグくさいなw
296291:2005/08/14(日) 05:47:55
>>295
それが結構な数の端末でそうなるんだ。
少し前のことなんで、ちょっと具体的な端末名は思い出せないんだけど、N900とかが
多分この口だったと思う。
他のメーカーのにも散見された。
絶対数はそれほど多くないけど、優等生のP506なんかもそうだったかもしれない。
いま確認取れる環境にいないので、濡れ衣の可能性もあるから、断言はしないけど。

落ち着いて考えると、サスペンドはアプリの処理に優先する絶対的な割り込みなんで、
STOPイベントの応答待ってられないというのはわかるんだけど、せめてresume()前に
全部のイベントキューは片付ける実装になってて欲しかった。
俺はこのことを「普通こうだろ」と勝手に思い込んでて、確証持てるまでに随分時間が
かかっちまったよ…時間返してって感じだ。


それと直接は関係ないけど、AudioPresenterがらみで>>292に。

ひょっとして、AudioPresenterのstop()呼び出し直後にplay()かけてない?
Docomoの資料にもあるんだけど、F506固有の問題で、stop()呼び出しから
30〜40msecあけてからじゃないと、play()が誤動作することがある。
漏れもゲーム作ってて、原因不明のストール(突然3秒程度止まる!)に悩まされた。

解決方法は2つあって、ひとつはstop()呼出し後に少しウエイトを入れてからplay()を呼ぶようにすること、
もうひとつは、STOPイベントを監視して、完全に音の再生が停止したのを確認してからplay()を呼ぶようにすること。

前者はリアルタイム系のゲームだと厳しいので、漏れは後者のアプローチで突破した。
F506を叩き割りたくなった記憶があるよ。
何かの助けになれば幸いです。
297デフォルトの名無しさん:2005/08/14(日) 11:14:10
そういやF505〜は、待ち受けアプリのスリープからの復帰の際、
活性化イベントが飛んでくるより先にメインスレッドが動き出したなぁ…。

他の携帯が全て逆だった(理屈的に考えてもそうだろうに)から、原因さっぱりわからなくて難儀した。

仕様バラバラすぎだっての。
298デフォルトの名無しさん:2005/08/14(日) 11:18:08
へぇーすげえー
299デフォルトの名無しさん:2005/08/14(日) 12:10:52
あれ? 待ち受けってMApplication#sleep()の直後から実行が再開されて、
そこを抜けた後でイロイロあるんじゃなかったっけ?
300デフォルトの名無しさん:2005/08/14(日) 12:46:04

a++;
sleep();
b++;

sleepでまず止まる。
普通の端末は、復帰イベントが飛んできて、それの処理が終わった後b++;が発動。
F505i〜は、さきにb++;が処理されたりとしばらくしてから復帰イベントが飛んでくる。
結構飛んでくるの遅い。100msは超えてると思う。
理由として、私がこういう処理をしていたから。

・100msごとの毎フレームで「非活性になってからのフレーム数」をチェックし、50フレーム以上経っていたらsleepさせる処理を組み込んだ。
・復帰イベント側に「非活性(略)フレーム数」を0にリセットするコードを書いた
・F505iだけ、復帰した直後にすぐにsleepしてしまう(カウンターがリセットされず、毎フレームチェックがもう一度きてしまっている)
301デフォルトの名無しさん:2005/08/14(日) 14:10:05
待ち受けはワケわかんない仕様に振り回されることが多いよね…。
特にF505のそれはアホかって感じだった。
302299:2005/08/14(日) 15:52:49
>>300
> 普通の端末は、復帰イベントが飛んできて、それの処理が終わった後b++;が発動。
> F505i〜は、さきにb++;が処理されたりとしばらくしてから復帰イベントが飛んでくる。

iアプリコンテンツ開発ガイド for DoJa-3.0 〜詳細編〜 第3.1版 のP121には

> sleep()メソッドを呼び出したスレッドは、休眠状態から活性化状態に遷移すると
> sleep()メソッドから復帰し、それに続くロジックの処理を再開します。sleep()メ
> ソッドからの復帰は、MODE_CHANGED_EVENTの通知に先立って行われます。

「通知に先立って」ってことなのでb++が処理されてからイベントが発生するF505iの
実装の方が正しいんだ、といえるでしょう。またスレッドは活性化と同時に再開する
とあるけど、どのタイミングで再開するかは規定されていないと思った。

もしかしたらMODE_CHANGED_EVENTのprocessEvent()直前もしくは直後に再開するタイ
プと、本当に活性化直後に再開するタイプがあるんじゃないかな。その辺に300のロ
ジックとの間に不整合が起こっている、とは考えられないか?
303デフォルトの名無しさん:2005/08/14(日) 23:21:53
エミュで変な動作を確認したのでメモ。

コマンドラインで doja.exe を動かしているんだが、
ImageStore.selectEntry() を呼んでファイルを選んだ後、
スクラッチパッド (hoge.scr) が保存される場所が %iDK%\lib\multimedia\sp になる。
ファイルを選ぶダイアログでキャンセルすると発生しない。

iDK3.5と4.0の doja.exe, doja_g.exe で確認。
.\sp に保存するって仕様で、
selectEntry の呼び出しでカレントディレクトリを変更してると勝手に予想。
で、カレントディレクトリからファイル選べばいいのでは?と思ったけど、
%iDK%\lib\multimedia 以外から選べないし…

誰か対策しらない?
304デフォルトの名無しさん:2005/08/15(月) 00:18:56
ドキュモにゴルァする
305292:2005/08/15(月) 00:42:52
レスありがとうございます。
試してみましたが・・・直ってないですorz

どうも、タイミングを計ってみたら、しだいにずれていって
時間が飛ぶタイミングで一気に補正されているようで・・・。

まさにフレームスキップがおきてるみたいです。

他に同じ現象起こってる人いないですか?znorz
306デフォルトの名無しさん:2005/08/15(月) 00:44:54
>>302
仕様書上ではそう書いてあるんで、F505iが悪いわけじゃないのは分かるんだ。
だが、他の携帯が全てやりやすい方法で統一されていたのに、唐突にF505iだけが裏切りおったのが(´・ω・`)

>>303-304
ドコモゴルァで思い出したが、setPixelsが異常に重いの治してくれんかなぁ<エミュ
240*240のsetPixelsするだけで30秒近く止まるんだが…。
307デフォルトの名無しさん:2005/08/15(月) 00:52:52
>>302
sleepのメソッドからの復帰

MODE_CHANGED_EVENT
の順番が規定されていても、ほとんど意味ないんじゃないの?

sleep()からの復帰
<コンテクストスイッチ>
MODE_CHANGED_EVENTの通知
<コンテクストスイッチ>
b++
という動作をする可能性は、依然として排除されてないと思うんだが。
308302:2005/08/15(月) 10:03:03
>>307
> という動作をする可能性は、依然として排除されてないと思うんだが。

その可能性はあるけど、それが何か意味があるか?
302で言ったのは、300の方法ではDoJaの仕様上うまく動かないことがある、ということだけ。

「いや仕様上は必ず上手く動くはずだ」という証明ができなければ
F505iで動かない300の方法が「正しくない」ことには変わりないよ。
309デフォルトの名無しさん:2005/08/15(月) 17:40:31
sleep()の直後は、CHANGED_EVENT内で立てるフラグの同期待ちをいれりゃ済むことじゃないのか
310303:2005/08/15(月) 21:38:26
jam を相対パスで指定するのがよくなさそうなので、perl で応急処置してみた。

--- doja_g.pl ---
use File::Spec;
$emulator = 'c:\iDKDoJa4.0\bin\doja_g.exe';

for (0 .. $#ARGV) {
  $n = $_;
  $ARGV[$n+1] = File::Spec->rel2abs($ARGV[$n+1])
    if $ARGV[$n] =~ /^-[ij]$/ && $ARGV[$n+1];
}

system $emulator, @ARGV;
--------------

%projdir%> perl doja_g.pl -i .\bin\hoge.jam
とかする。

ところで、エミュレータだと ImageStore.addEntry で画像を保存できないのは仕様?
311305:2005/08/15(月) 22:13:14
問題自己解決しました。

毎フレームSystem.currentTimeMillisで時間をとっていたところを
AudioPresenterのgetCurrentTimeに変更したところ、問題が消えました。

また、同じ問題に遭遇する方がいたときのために一応ご報告しておきます。
312デフォルトの名無しさん:2005/08/16(火) 00:51:11
>>311
ちょいまち。
getCurrentTimeって、演奏中のAudioPresenterの
再生カーソル取ってくる奴だろ?
あれって任意の場所から音を再生するplay(int)とかのための
関数であって、それで音以外の処理の同期取るのって
何かおかしいと思うぞ。演奏終了したらゼロに戻るんだし。

音の同期処理に使ってるなら、一向に構わないとは思うんだけどさ。
313305:2005/08/16(火) 03:30:27
自分の場合は短期的に時間差分が取れればよかったのと、曲が長めだったのが
助かりました。まあ、0のときだけ例外的にSystemのほうを使ったりしてます。

でも、考えてみたらそういう使い方じゃない限りは根本的な対策になってないですねorz
314デフォルトの名無しさん:2005/08/16(火) 13:13:06
>>292
repaint()で再描画される仕組み(paint()内で描画する)だと、1回の描画に
かかる時間が長いと機種によっては画面の更新がうまくいかない。
(描画が別スレッドで回るからだと思う)
315デフォルトの名無しさん:2005/08/16(火) 17:03:34
基本的な質問で申し訳ないのですが、サウンドに関してです。
勝手アプリに音楽をつけたいと思っているのですが、うまく音がなりません。
対応させる機種は900i,901iとなります。

http://www.saturn.dti.ne.jp/~npaka/ibook2/izon.html

↑ここにあるPSMPlayerを使って変換しているのですが、
MIDIからMLDは実機で確認できたのですが、
WAV(効果音)からMLDにした場合鳴りません。

出来上がったMLDをPSMで再生すると「声」にチェックが
入っているのですがこのためでしょうか?

またDojaで扱えるサウンド形式はMLDのみなのでしょうか?
上記サイトには、WAVも利用できるように書いてあるようなのですが、
試したところなりませんでした。

よろしくお願いしますm(_ _)m
316307:2005/08/17(水) 02:34:05
>>308
いや、だから「意味がない」って言ってるんだけど。
仕様上「先だって」と規定してあるとしても、何の順番も保証されていない、ってことが言いたいだけ。
だったらそんな規定するなと。
で、漏れらは「先だって」なんて幻覚に惑わされてはいけないと。
317デフォルトの名無しさん:2005/08/17(水) 12:41:17
>>315
そのページのPSMPlayerの次に書いてある
WAV2MLDを使ったほうがいい。
ちなみにNは、さらに下に書いてあるYAMAHAの
変換ツールを使う。

機種によってWAV2MLDの音質劣化が酷いときあるので
部分的にPSMPlayerを使うといいかもね。

900以上だとPSMPlayerに対応する着声メーカーないんじゃなかったかな?
同じメーカーの505用で変換できるかというと、PCM音源が505と900で異なる
メーカーがあるので注意。
318315:2005/08/17(水) 13:46:45
>>317
ありがとうございますm(_ _)m

WAV⇒MLDの場合は機種別に作る必要があるのですね。
機種依存が強そうなので、テスト実機が1つしかないからつらいなぁ・・・。

MLDの効果音って探したのですがなかなかないんです(T-T)
319デフォルトの名無しさん:2005/08/17(水) 14:22:21
>>318
900/901iだけで10機種以上あるからね。
505、506、700入れると50種類くらいになる。
新機種が発売されるたびにその機種用の音データを用意する必要があるし
機種依存を気にするならMIDIで効果音を作るか、効果音を諦めるかだね。

有料は別として無料iアプリでBGMと効果音の両方が鳴るのは
あまりみたことないな。
320デフォルトの名無しさん:2005/08/17(水) 20:45:46
>>315に便乗です
私もP901i用に勝手アプリを製作しております。効果音を入れたいと思いWAV2MLDを使ってWAVEをMLDに変換しましたが、このソフトではP901i用に変換する際サンプリングレートの上限が8kHzになってしまいます。実機で再生したところ酷い音質でした。
大手企業が提供する有料のアプリでは綺麗に音がでてるのもあるのにどうしてこうも違うのか分かりません。
やっぱMFiToolの力は絶大ということなのでしょうか?
321デフォルトの名無しさん:2005/08/18(木) 10:55:12
謎のスーパーツールMFiToolsをnyに流してくださいo(><)o
322デフォルトの名無しさん:2005/08/18(木) 11:54:24
>>321
かえれ
323デフォルトの名無しさん:2005/08/18(木) 11:58:32
>>311
System.currentTimeMillisで毎フレーム制御してるが同様の症状は出ない。
原因として考えられるのは
1:描画命令呼び出しをrepaintで呼び出してる。
2:単純に描画が重過ぎる
3:処理のどこかでフラグが立つまで永久ループ、みたいな処理がある。
4:希望しているフレーム速度が速すぎる。
などなど。
324デフォルトの名無しさん:2005/08/18(木) 12:03:38
midiをヤマハのツールで変換しても糞音悪いね…
325デフォルトの名無しさん:2005/08/18(木) 14:30:29
>>324
それはツールの問題ではなくて
携帯に搭載されてる音源の問題だよ
326デフォルトの名無しさん:2005/08/18(木) 14:35:02
スピーカーのしょぼさもあるから、イヤホンで聞いてみそ。
327デフォルトの名無しさん:2005/08/19(金) 00:42:52
iアプリ作成初心者です。
簡単なソースを書いてアプリの作成を勉強しています。
どなたか教えていただけないでしょうか。

Eclipseでデバッグするために
http://www.itmedia.co.jp/enterprise/articles/0410/27/news022_5.html
にかかれているように手順を進めましたが、「デバッグモード起動」で実行しても
デバッグ待機状態になりません。
何か他に設定が必要なのでしょうか?
328デフォルトの名無しさん:2005/08/19(金) 13:25:55
デバッグ待機にならないというのがまずわからないけど、
待機のメッセージ自体がそもそも出ないの?
それとも、その後のリモート接続がうまくいかないの?
329デフォルトの名無しさん:2005/08/19(金) 13:39:26
>>328
待機のメッセージがコンソールに表示されません。
DO-JA4.0+Eclipse2.14で駄目でした。
Eclipseで設定したのはDO-JAのパスだけです。
330デフォルトの名無しさん:2005/08/19(金) 19:10:53
>>327
普通にエミュレーターで実行はできたんだよね?
331327:2005/08/19(金) 19:32:59
>>330
はい。エミュレータでの通常起動はできます。
Eclipseを3.1にしましたけど同じ現象でデバッグ待機できませんでした。
332デフォルトの名無しさん:2005/08/20(土) 12:08:30
待ち受けiアプリを作成しています。待ち受けアプリで、電池残量を取得し
て、電池が少なくなってきたら、待ち受けアプリを終了、停止、もしくわ
電池を消費しないような状態にしたいのですが、terminate()でアプリを
終了しても、また待ち受けアプリなので起動してしまいますし、休眠状態
へ移行させてもシステムイベントがあれば、再び動作してしまい、どのよう
にしたらいいか困っています。どなたがご存知でしたら、ご教授願います。

ダイアログ表示中は、アプリの動作は停止しているのかはわかりませんが、
停止しているのなら、ただ電池が少なくなったとのダイアログをだせばいい
と思っていますが、よくわかりません。
333デフォルトの名無しさん:2005/08/20(土) 12:45:08
>>332
>電池が少なくなってきたら
すみません。電池がフルか、フルでないか、充電中の3つしかありません。
334328:2005/08/20(土) 16:01:15
J2SEをインストールし直したら、デバッグできました。
お騒がせしました。
335デフォルトの名無しさん:2005/08/20(土) 17:50:40
JavaでWeb開発をやっていたものなのですが
携帯開発って敷居が高いですか?
専門学校がゲーム系だったのでアルゴリズムみたいのはわかります。
336デフォルトの名無しさん:2005/08/20(土) 18:54:04
>>335
そんなこと聞くやつには(ry
337デフォルトの名無しさん:2005/08/20(土) 22:15:26
SH901isで使えるiアプリを作ろうと考えています。。
どうしたら作れるのでしょうか。。
すごく初歩的な質問ですいませんが、教えてくださる方はお願いします。。
リンクを教えてくださってもありがたいです。
338デフォルトの名無しさん:2005/08/20(土) 22:16:51
>>337
なぜドコモのHPに行かないんだ?
技術資料ダウンしてよく読め
話はそれからだ
ちなみにJava知らないとキツイゼ
339デフォルトの名無しさん:2005/08/21(日) 02:30:38
>>337
>>6

ちなみにJava知っててもある意味キツイじぇ
340デフォルトの名無しさん:2005/08/23(火) 15:51:21
こんにちは
AudioPresenterのplayとstopを同じボタンに割り当てて
演奏中に押せばstop、演奏してないときに押せばplayとしているのですが、
連打すると、音が止まらなくなります。
どうしても止めたいのでまったく別のボタンに、
stopを割り当てたのですが止まらなくなります。
これはなぜでしょうか?

再生したオブジェクトを他のボタンに割り当ててもstopが効かなくなるのは不思議です。
341デフォルトの名無しさん:2005/08/23(火) 16:30:33
stopに失敗してるはずなので、catchしたエラー内容をまず調べるべし。
342デフォルトの名無しさん:2005/08/23(火) 16:53:02
>>340
ん〜〜〜〜それだけでは・・ちなみにエミュの話?実機?
とりあえず連打する事によって出るバグってことは
連続でストップと再生を短い間隔でやってるからだと思う。
実機の場合、基本的に連続で再生したり止めたりするとエラーになる。

try〜でエラー出てないか拾ってみるといい。
後エラー出てしまうと正常動作しないことも良くあるし。
もし再生中かどうかを自作のフラグで制御してる場合は
エラーが発生した場合にフラグをちゃんと処理してるか。

とりあえずサウンドを操作する場合は短い間隔で
操作しないようにプログラミングしないとダメ。
343デフォルトの名無しさん:2005/08/23(火) 17:18:23
グハァ!
try catch必要だったんですね。。。
試してみます。
できたら報告いたします。
344340:2005/08/23(火) 17:55:41
すいません、try、catchで拾えません。
stopとplayでやったんですけど、ダメでした。
拾う場所間違ってますか?

ちなみにエミュじゃなくて実機のみ発生します。

AudioPresenter.AUDIO_STOPPED:
辺りを利用してフラグたててやってみます。
結果をまた報告します。
345340:2005/08/23(火) 20:13:37
すいません。解決しました。

やったこと、ボタンが押されたらフラグをたてて
mediaActionにて、停止、再生が確認されたらフラグを外すという処理をいれました。
このフラグは、ボタンが有効かどうかのフラグです。

今までは、playかstopした、直後にフラグを立てていたのでうまくいかなかったようです。
ありがとうございました。
346デフォルトの名無しさん:2005/08/24(水) 11:07:08
報告お疲れさん。
即座に止まるかどうかは保証されてないからね。安全策でいこう。
347デフォルトの名無しさん:2005/08/24(水) 15:18:33
HTMLからiアプリを起動する場合にパラメータを渡したいです。
しかし、たとえば下記のように同一アプリをリンクによって別パラメータで
起動するやり方がわかりません。

link1(Param1で起動)
link2(Param2で起動)
link3(Param3で起動)

上記の場合複数の<OBJECT>タグを同一ID(アプリ名)にしないといけないことから、
1ページ内で3つの違うパラメータを配置できないことに気が付きました。これをやる
と、どこをクリックしても一番初めのOBJECTタグが有効になってしまうのですが、
回避策はあるのでしょうか?
348デフォルトの名無しさん:2005/08/24(水) 16:59:19
ページを分ける。
349デフォルトの名無しさん:2005/08/24(水) 17:00:32
アプリをコピーする。
350347:2005/08/24(水) 19:03:33
解決しましたDATA値とID、ISTA値は必ずしも一致してなくていいようです。お騒がせしました。
351デフォルトの名無しさん:2005/08/27(土) 13:37:38
>>346
音関連は端末ごとの動作が本当にバラバラで困り果てるよ…
もう安全なこと以外したくない…
352デフォルトの名無しさん:2005/08/28(日) 02:43:52
iアプリDL元以外との通信って出来ないんでしょうか?
以前、505i辺りの頃に「出来るようになった」と見た記憶があるんですが
Doja4.0のガイドには
>HttpConnectionに渡すURLのプロトコル、ホスト名、ポートは、
>iアプリのダウンロードもととなったURL(ADFのPackageURLキーでの指定)
>と同じでなければなりません。
と書いてあるので。

私の勘違い?
それとも仕様逆戻り?

353デフォルトの名無しさん:2005/08/28(日) 03:28:05
>>352
トラステッドiアプリ(iアプリDX)ならできる。
公式の資料に載ってる。
354352:2005/08/28(日) 03:40:44
>>353
なるほど。
出来るといっても限定つきだったのですね。
謎解決。アリガトンです。
355デフォルトの名無しさん:2005/08/28(日) 03:40:48
厨房以下のレベルだにゃ
DXトラステッドと、そうでないものの区別も知らないとは、(゚д゚)
356デフォルトの名無しさん:2005/08/28(日) 03:42:53
おっと悪口言ったら、先に出てたか(゚д゚)
357デフォルトの名無しさん:2005/08/28(日) 12:34:15
大丈夫か?
358デフォルトの名無しさん:2005/08/28(日) 13:35:58
誰でも始めたときは厨房以下。
359デフォルトの名無しさん:2005/08/28(日) 16:02:22
ちょっと出来るようになるとすぐ調子にのる。
それがプログラマークオリティ。
360デフォルトの名無しさん:2005/08/29(月) 01:38:42
エスペシャルなプログラマクオリティの俺様が降臨あそばされましたよ。


ところで、505iまでは「機種ごとの問題点」がPDFになってるけど、
それ以降は放置プレイされてるよね?
これまでのものも、必ずしも資料として充実していたわけじゃないけれど、
900、901の特定機種でしか出ない問題とか、マイナーな506端末でしか出ない問題とか、
相変わらず山ほどあるので、その辺の情報が公開されないと、こっちで
蹴躓きながらノウハウを蓄積するしかないので、非常に困る。

今からでも復活してくれないかなあ。
ていうか、そもそも何で消えたんだろ。

・メンテナンスに秋田
・以降の端末にはバグなんてないと信じてる
・以降の端末のバグの多すぎさを理解してるので、藪を突付いて蛇を出したくない

さあどれだ!
361デフォルトの名無しさん:2005/08/29(月) 07:14:05
・バグのことを仕様と呼ぶようになった
362デフォルトの名無しさん:2005/08/29(月) 09:49:25
・公式アプリの会社にだけ資料を渡して、勝手アプリに圧力をかける
363デフォルトの名無しさん:2005/08/29(月) 12:11:43
公式アプリの会社にも、901以降の機種バグきてねーぞ。
364デフォルトの名無しさん:2005/08/29(月) 16:58:17
・めんどくさくなった

どうせ実行環境統一されるんだろ?
365デフォルトの名無しさん:2005/08/30(火) 01:10:16
でも、まだ先の話だし。
漏れらにとっては、今が大事な訳だし。

700iSでしか出ないバグとか、知らねえよって感じ…。
誰かたすけてぽ…。
366デフォルトの名無しさん:2005/08/30(火) 13:01:40
んぱかさんなら…んぱかさんならなんとかしてくれる…!(AAry
367デフォルトの名無しさん:2005/08/30(火) 14:13:42
布留川大明神様にお頼みするのじゃ






本も買えよ
ちょっと高いけど
368デフォルトの名無しさん:2005/08/31(水) 01:09:42
こんなスレ見つけたんだけどこれ作れる?

http://pc8.2ch.net/test/read.cgi/php/1125403602/5-
369デフォルトの名無しさん:2005/08/31(水) 01:26:18
ちょっとぐらい自分で努力したら?
370デフォルトの名無しさん:2005/08/31(水) 09:45:38
>>368
中間鯖通らないんだったら、2chの各鯖で配布しないと駄目じゃん。
中間鯖使うなら、既にあるし。
371デフォルトの名無しさん:2005/08/31(水) 10:39:06
>>370
0chとかのスクリプトに使う個人用じゃないの?
372デフォルトの名無しさん:2005/08/31(水) 13:39:11
話それるがiアプリベンチ見てたらSA700isきてたな。
スペック・ベンチ結果だけ見てる分にはDとNの悪いところだけ引き継いだ機種だろこれw
な〜〜〜〜〜んか嫌な機種依存がありそうな匂いがぷんぷんしてますが・・・orz
373デフォルトの名無しさん:2005/08/31(水) 13:48:36
近いうちに、見たらアプリ屋は卒倒するような携帯が発表されるから覚悟しておいたほうがいいよ…。
374デフォルトの名無しさん:2005/08/31(水) 14:29:05
>>373
何気に楽しみだが、今作ってる携帯だとすると
出るのは来年の夏頃かね?
375デフォルトの名無しさん:2005/08/31(水) 14:38:44
>>373
予想できるのは・・・507、701、902か?
もしや・・・・・・・・・1000シリーズが本格始動とか?!
376デフォルトの名無しさん:2005/08/31(水) 14:40:02
>>368
ここの奴らじゃ無理だろwwww

>>373
詳しく
377デフォルトの名無しさん:2005/08/31(水) 14:46:33
あれ…か。
悪夢再来 だろ?
378デフォルトの名無しさん:2005/08/31(水) 15:11:27
質問なんだけど自作iアプリを携帯のブラウザ使わずに
実機にインスコする方法って無いの?
とりあえずカードリーダーと赤外線通信用のUSBデバイスはあるんで
一応写真などはPCと受け渡しできるんだけど。
379デフォルトの名無しさん:2005/08/31(水) 15:25:53
ないーよ。
少なくともそういう建前。
380デフォルトの名無しさん:2005/08/31(水) 15:36:15
>>368
技術的には可能だがやる気的に不可能('A`)
381378:2005/08/31(水) 15:44:34
>>379
ありがと。
やっぱ無理か。イタい・・・
382デフォルトの名無しさん:2005/08/31(水) 16:55:41 BE:7248544-###
>>380
どんなのか期待してみる
383▲ ◆SANUKI/VII :2005/08/31(水) 16:56:04 BE:5436443-###
>>380
名前イレワスレタ
384デフォルトの名無しさん:2005/08/31(水) 17:24:43
>>368
技術的には確かに可能だろうがこれって掲示板のシステム
そのものも作れって事だよな?既存のものでなくて。
よっぽどの暇人でないと作らないと思うけどな。
俺は技術的に出来るとは確信できるが、自分の技術がそれに追いついてないから無理w
385デフォルトの名無しさん:2005/08/31(水) 21:11:07
讃岐見てたのかよ
JaneMobileマダァー?
386デフォルトの名無しさん:2005/08/31(水) 21:26:23
>>372
それって、Java on BREW な端末だったっけか。

>>373
詳しく
387デフォルトの名無しさん:2005/08/31(水) 22:28:23
>>377
Yes.
やっと居なくなった過去の亡霊が復活…。
388デフォルトの名無しさん:2005/08/31(水) 22:43:08
>>384
それに近いこと、去年仕事でやってたわ
ボタン1つで新着記事全部ダウンロードしたりナ
389デフォルトの名無しさん:2005/08/31(水) 23:40:16
讃岐に、iアプリの知識があるとは思えんな
390デフォルトの名無しさん:2005/09/01(木) 00:00:27
>>388
作ってみては?
391デフォルトの名無しさん:2005/09/01(木) 18:14:05
過去ログはほとんどdat落ちだったので質問したいのですが、
Doja2.0以前の画面サイズ(120x120)のアプリをDoja3.0以降の
機種で走らせたいのですが、何かプロパティとかスイッチとかで
240x240のサイズに簡単に変更できる方法はありますでしょうか?
つまり画面が1/4になってしまうので、フル画面で見られないか
ということですが。
392デフォルトの名無しさん:2005/09/01(木) 20:08:00
DojaにVodaみたいな画像拡大機能は無い。
393デフォルトの名無しさん:2005/09/01(木) 20:48:12
オフスクリーンで描画して
drawScaledImge 。

どうしてもやりたいならだが。
394デフォルトの名無しさん:2005/09/02(金) 01:57:55
2.0で動いてたアプリなら、3.0でdrawScaleImageかけても
きっと十分な速度で動くだろね。

Vodaの拡大機能、あれは羨ましかった…。
今は昔の話とはいえ、最初から標準でつけといて欲しいくらいだったよ…。
120x120と240x240じゃ雲泥の差だもんねぇ。
395デフォルトの名無しさん:2005/09/02(金) 02:14:21
どっちにしろ拡大したらクオリティがた落ちだわな…
396デフォルトの名無しさん:2005/09/02(金) 03:42:20
まあ、それでも遊びたいゲームはあるわけで。
ドット絵ガタガタなのも、味があっていいんじゃん?
397デフォルトの名無しさん:2005/09/02(金) 13:36:44
2.0の制限ギリギリまでがんばってつくったアプリを
3.0で240*240でつくろうとすると大抵アウト。

画像を単純に2倍して持たせようとするとメモリーが足らないし
拡大縮小を使うと補完方法が機種依存なため見た目が変わるし
かなり処理速度が落ちる。画像を大量に使うソフトは特にだめだな。
398391:2005/09/02(金) 14:01:32
みなさん、どうもありがとうございます。
やはり簡単にはいかないようですね。
まあコツコツと変換作業をするしかないようですね。
399デフォルトの名無しさん:2005/09/02(金) 14:08:27
>>398
やるかどうか判らないが120か240かは
画面サイズゲットしてそこから判断すれば良い。
携帯の画面サイズに合わせてアプリそのものを2個つくるほうが良いとは思うけどな。

N504とかFoma2000番台のは160とか中途半端にデカイしな画面。
こだわりだすとキリが無かったりする。
400デフォルトの名無しさん:2005/09/02(金) 17:53:14
メモリー量は2倍にしかのびなかったのに、使う画像の表面積は4倍になったからな。
単純に考えて半分のクオリティー(´・ω・`)

あと、504シリーズの場合128*128を求められることが多かったので
移植する際座標を単純に2倍にするだけではダメな罠。

悲しかった。でもおかげで移植料金がきちんととれたわけだがw
401デフォルトの名無しさん:2005/09/02(金) 23:22:59
Vodaも他に問題があって、単純に拡大するだけでは駄目だと聞いたが…
402デフォルトの名無しさん:2005/09/03(土) 17:31:08
いちいちアプリ側のJADファイルに「拡大しますよ」という設定を埋め込む必要があった。
携帯持ってる側が自由にできりゃよかったのに、結局アプリUPしなおしですよ。
VodafoneはそれでなくともUPめんどいのに。
403デフォルトの名無しさん:2005/09/03(土) 20:44:36
>>402
> いちいちアプリ側のJADファイルに「拡大しますよ」という設定を埋め込む必要があった。
「拡大しないでよ」って書かないと、勝手に拡大じゃなかったか?
404デフォルトの名無しさん:2005/09/03(土) 21:53:38
>>403
うんにゃ。
405デフォルトの名無しさん:2005/09/03(土) 22:04:12
どちらにしてもそれだけで済むんだから楽だよな。
406デフォルトの名無しさん:2005/09/05(月) 18:10:56
実機がなくて確認できないので質問。

アプリのダウンロード数をCGIでカウントしたいんだけど、jam に

 PackageURL = count.cgi/foo.jar

てしといて、CGIで

 print "Location: http://#######/foo.jar\n\n";

とかで飛ばした場合、ちゃんとダウンロードされる?
407デフォルトの名無しさん:2005/09/05(月) 18:25:25
んー、そういう少しでもトリッキーなことは、最初から動かない端末があると考えて手を出さない。
iアプリに関してはすべての意思決定をめっちゃ安全サイドに振ってる。

とりあえず、普通にアクセスログを取れるサーバを利用するのはどうだろう。
408406:2005/09/05(月) 19:59:03
>>407
やっぱりダメかな…
アクセスログは定期的に取りにいく必要がでてくるのがきつい。


リダイレクトじゃなくて、CGIで直接出力するんだったら大丈夫かな?
jar取得時のキャッシュの値を見た限りだと、
EZアプリみたいに partial content 要求してくることはなさそうだし。

409バックス:2005/09/05(月) 21:11:44
宣言します!

自分は『盲目者用文字情報音声読み上げ携帯電話操作アシストJAVAアプリケーション』の制作を時間がかかろうとも完成させDoCoMoに無償提供することをここに宣言します。

現在構想している機能は
『ウェブ文字情報読み上げ』
『送信内容の音声読み上げによる確認』
『受信内容音声読み上げ』
『壁紙、着信音及びアラームなどの設定の音声アシスト』
『電話帳相手先名称読み上げ』
これらの機能です。

操作方法は音声ガイダンスに従い、ボタンプッシュで各機能を使えるようにします。

これが自分の最終目標のアプリです。

これで自分は逃げられなくなりました。
何年かかろうともここに『宣言』したので制作します。
410デフォルトの名無しさん:2005/09/05(月) 21:36:57
>>409

ドコモの仕様が変わらない限り一生ムリだよ?
411デフォルトの名無しさん:2005/09/05(月) 21:43:50
できるだけエロい声で読む奴にしてくれ('A*`)
412バックス:2005/09/05(月) 22:30:19
>>410
ウェブ制作板では「普通に可能」って言われましたが?
DoCoMoのJAVAならば追加データをアプリ起動中にも取得できるから容量的には問題ないだろ?
いろメロのパケラジも音声データを大々的に使用しているので音声は問題無し。
ブラウザは2chブラウザimonaが存在しているのでおk。
残りは文字読取りのプログラムだね。HTMLソースを読取ることはCGIで可能。
文字認識は色々と頑張れば何とか…
あとは色々なものを応用統合、機能追加すれば実現可能だと考えているのですが?
簡単にはいかないでしょうが…
413デフォルトの名無しさん:2005/09/05(月) 22:32:46
『送信内容の音声読み上げによる確認』
『受信内容音声読み上げ』
『電話帳相手先名称読み上げ』

このへんはトラステッドじゃないと無理そうだな。
まぁ、認められるまでがんがれ
414バックス:2005/09/05(月) 22:41:11
>>411
レス忘れ

ん〜……却下!

音声はテキトーに女友達の声を使うさ。
415デフォルトの名無しさん:2005/09/05(月) 22:57:56
うーん。応援しよう。
しかし音はサーバーに生成してもらう必要があるな。
通信がガンガン発生しまくるからDOCOMOから警告くらいそうだが、勝手アプリなだ大丈夫だろうか。
416▲ ◆SANUKI/VII :2005/09/05(月) 23:47:15 BE:20385959-###
声は能登な
417デフォルトの名無しさん:2005/09/06(火) 00:15:07
芳ばしくなってまいりました(゚∀゚)
418デフォルトの名無しさん:2005/09/06(火) 00:39:16
SA701 が出るよね
サンヨーの初ドコモ機

アプリの処理系にヘンな癖がないか心配

中身が N か P か SH なら楽なんだが
419デフォルトの名無しさん:2005/09/06(火) 00:43:38
>>412氏の周りには盲目の知り合いがいるんかね?
俺は周りにはいないからそういったアプリの発想は無かったよ
がんがっていいのを作ってくれ
420デフォルトの名無しさん:2005/09/06(火) 01:07:19
iアプリの立ち上げそのものは手動なのかな。。。
421バックス:2005/09/06(火) 01:54:03
レス付いてますね

>>413
その辺は色々と試してみます。

>>415
応援ありがとうございます。
音声はそうなるでしょう。
音声の母音をイジって使うか、50音全てに当てはめるかで通信量が変わりそうなんで実際に音声データを作ってみないと何とも言えないです。
完成後、最終的にはDoCoMoに無償提供依託するつもりです。経年でのバグ修正は個人では追いつかなそうなので。
iメニューあたりで無料配布してくれたり、機種に標準搭載なんかしてくれたら本望で逝ってしまいますねw
ほおっておけばBREW版も制作されると予想しています。

>>416
声の事を考えていたのですが「男性」「女性」の両方あった方が良いかな?と思ってきました。
通信量が恐ろしいことになりそうですがw
むしろ2chの声優志望辺りにでも声をかけようかな?

>>417
香ばしいですねw

>>419
まぁそうですね
身近にいます
自分が先駆者となるのでしょうか?
もしそうなら少し恥ずかしいですね〃〃

>>420
良いところをつきましたね。自分もそこをどうするかで悩んでいます。

何か良いアイディアある方は言ってください。
422デフォルトの名無しさん:2005/09/06(火) 03:10:06
>>406
ホンモノのjarを bar.jarにリネームして、
foo.jar というCGIが
カウントしたら
bar.jarを呼んで吐けば問題ない。
423410:2005/09/06(火) 06:58:19
>413
その辺は色々と試してみます。


何を試すんだ?個人でも仕様書何百枚か書けば認められるもんなのか?
424デフォルトの名無しさん:2005/09/06(火) 08:56:10
正直俺がやるわけじゃないからどうでもいい。

作るんだとしたらトラステッド必須の部分は認可貰うか、
アプリの方で実現することになるだろうな。
後は外に置ける機能は外部サーバに置くってのも重要かも。

基本的にアプリ部分は文字入力機能とサーバ通信のみになる予感。
425デフォルトの名無しさん:2005/09/06(火) 09:01:28
馬鹿が居るな。
そんなもん、制限の緩いSymbian端末でやればいいだろうが
426デフォルトの名無しさん:2005/09/06(火) 09:08:30
言われてみれば糞仕様のiアプリにこだわる理由が見つからねぇΣ('A`)
427デフォルトの名無しさん:2005/09/06(火) 09:45:35
忠告しとくけど、ドコモは個人なんか相手にしないよ?
責任問題でうやむやに出来ない、ちゃんとした法人限定。
たとえ無償でも相手にされない。
428デフォルトの名無しさん:2005/09/06(火) 10:12:05
音声合成+読み上げ技術なんて研究され尽くしてるしな
NTTなんてその最先鋒みたいなもんだ
429デフォルトの名無しさん:2005/09/06(火) 10:20:06
> 何年かかろうともここに『宣言』したので制作します

壮大な釣りが始まりましたね
430デフォルトの名無しさん:2005/09/06(火) 10:35:15
あのさ、>>409は、ちょっと調べればわかる技術上の問題なんて、そんなの当然わかってんだよ。
だから「色々と試してみる」とか言ってるのは、プログラム技術上の問題を指しているんじゃない。
トラステッドの認可を得るために法人を作ります、
現状の仕様で不可能な点は権力と発言力をつけてDoCoMoに仕様を変更させます、
そういうことを試してみようと言ってるわけ。
だから俺らがとやかく言うことないんだ、見守ってやれって。

↓次の質問ドゾー
431デフォルトの名無しさん:2005/09/06(火) 10:46:33
今日のお昼ご飯は何ですか?(゚Д゚ )

それと、701ってもう使った人いる?
いるとしたらどうよ?700と同じようなもん?
432デフォルトの名無しさん:2005/09/06(火) 10:48:34
いいものができれば、それを法人に持ち込むって手もあるしな。

>>418
驚くような糞癖があってクレーム入れておいたよ。
直ってるといいけど('A`)
433デフォルトの名無しさん:2005/09/06(火) 15:08:33
思いっきりレベル低い内容だが報告。
オプションAPIのMathのatan2。
D900i滅茶苦茶遅い・・・。

テスト内容は適当な引数を入れたatan2を256回
連続して計算させて経過時間を計測した。
D900i:2370〜2380ミリ秒
N901i:1〜2ミリ秒

差がありすぎるので自作して回避。
何かつくるとDで実験するのが日課になったなぁ・・。
以下その際のソース
o = System.currentTimeMillis();
for(i = 0;i < 256;i++)
j = com.nttdocomo.opt.ui.j3d.Math.atan2(-555,340);
n = System.currentTimeMillis();
System.out.println(n-o);
434デフォルトの名無しさん:2005/09/06(火) 15:38:59
これだから実装主義は(´・ω・`)
最低速度くらい決めて欲しいよなぁ。
435デフォルトの名無しさん:2005/09/06(火) 20:06:48
iアプリはウインドウズでしか作れないんですか?
436デフォルトの名無しさん:2005/09/06(火) 20:13:39
一体どんなコードを書けば固定小数の逆正接1回で10ミリ秒近くも費やせるんだろう。
ゲームとかだとそこそこ使う機会が多い関数なのに。

やっぱDはボイコットしようぜ。何か開発陣の体質面に深刻な問題があるとしか思えん。
437デフォルトの名無しさん:2005/09/06(火) 21:11:02
>>406
jarを.htaccessのAddHandlerとかでCGIなりPHPなり呼び出す。本体をオープンして出力、カウントアップ。
ブラウザからjarがうpできたり、一定数でストップできたり、ごにょごにょできる反面、負荷がかかる。

あるいは初回通信。
438デフォルトの名無しさん:2005/09/06(火) 22:36:16
>>436
俺はMacで最近iアプリの勉強始めたけど(Java未経験)、ビルドまでは
やろうと思えば出来るんだよ。でも、肝心のエミュレータでのテストはどうも無理っぽい。
不細工だけど、VirtialPCいれて今はやってる。
つーか俺も知りたいよ。Mac環境の快適な環境…
439デフォルトの名無しさん:2005/09/06(火) 22:47:39
Macを捨て(ry
440デフォルトの名無しさん:2005/09/06(火) 22:53:16
マカーに何を言っても無駄だというのが俺の持論。
441406:2005/09/06(火) 22:59:30
>>422,437
thx

カウンタ回すためだけに初回通信するのは面白そうだな

.cgi 以外を cgi-script にするのは抵抗があるから、
とりあえず、PATH_INFO つかって counter.cgi/foo.jar で CGI から出力することにする。
442デフォルトの名無しさん:2005/09/06(火) 23:09:12
>>433
D900iは非対応にするのが基本
443デフォルトの名無しさん:2005/09/06(火) 23:18:30
>>441
別に拡張子がjarじゃなくても大丈夫だよ。
なんでそんな苦労してんの?
444406:2005/09/06(火) 23:38:19
>>443
counter.cgi に引数渡したいだけ。
counter.cgi/foo.jar で ${JAR_DIR}/foo.jar を出力してくれた方が嬉しいでしょ。

何で >>406 みたいな質問したかっていうと、
EZアプリのダウンロードカウンタ作ったときに
ヘッダに Range 指定してきて少しずつ取りに来るんで
直接出力するよりリダイレクトさせた方が楽だったから。

で、iアプリの場合、リダイレクトすると ADF に書いてある PackageURL と
実際の URL が違ってくるのでどうなるか知りたかった。
445443:2005/09/07(水) 01:02:01
>>444
ああ、そういうことね。理解しました。
昔やってみたことで、ちょっと記憶があいまいだけど、確かJARのリダイレクトは出来たと思うよ。
446デフォルトの名無しさん:2005/09/07(水) 10:38:49
>>409
音声読み上げに関しては,auでHVってのを搭載している端末が有って
そういうのがFOMAとかに標準で組み込まれれば割と楽そう。
HVに関してはYAMAHAとかでぐぐってみて。

ただ,どうみてもブラウザとかメーラーとか外部と連携必要っぽいから
勝手アプリでは無理ぽ。全部1アプリに統合すれば可能かな?
447デフォルトの名無しさん:2005/09/07(水) 16:08:00
ProxyVoiceというアプリがあるのだが…
448デフォルトの名無しさん:2005/09/07(水) 19:01:37
画像ファイル名を、英数字→日本語交じりにすると
読み込めなくなるのですが、
リソースには、日本語ファイル名は使えないのですか?
449デフォルトの名無しさん:2005/09/07(水) 19:11:50
確かめてはいないが、普通ファイル名に二バイト文字は使わない。
450406:2005/09/07(水) 22:18:54
>>445
実際にやったって情報はありがたい。
451デフォルトの名無しさん:2005/09/08(木) 17:27:52
>>445
むしろ商用のサービス提供してるところは大抵そうしてるね。

入り口が同じページでも、機種判定を間にかまして、必要なJamとJarを提供する形にしてる。
機種依存と個別対応は避けて通れないのがJavaアプリの世界だから、至極当然な対応だと思う。
452デフォルトの名無しさん:2005/09/09(金) 20:26:59
失礼いたします。
カメラ機能を使うiアプリを作成して、それをネットから<OBJECT declare〜〜で起動させようとしているのですが、
SH901iでiアプリが起動してからカメラが起動しません。
他のP901iやN901iでは起動しますし、
SHでもアプリから立ち上げると正常にカメラが起動します。
単体では正常に動くので、どこが間違っているのか分かりません。
どなたか、救いの手をお願いします……
453デフォルトの名無しさん:2005/09/10(土) 15:31:24
まず、起動しないというのは何なんだ。
エラーが出るのか?
エラーが出るならそのメッセージは何だ?
454名無しさん@そうだ選挙に行こう:2005/09/10(土) 21:36:15
Panelを使って遷移するアプリを考えているのですが、
一度生成したPanelオブジェクトは破棄することはできるのでしょうか?
遷移するときに破棄したいのですが・・・。
455名無しさん@そうだ選挙に行こう:2005/09/10(土) 21:53:20
>>453さん。
452です。
エラーは出ません。アプリそのものは起動するのですが、カメラ起動のキーを押してもなんの反応も無いのです。
(もちろん単体でこのiアプリを起動させた時はカメラ起動のキーを押せばカメラが立ち上がります)
他のキー、アプリを終了させるキー等は正常に動いています。
あと、蛇足ですが、上記のカメラ起動キーはアプリ内のキー割り当てですので、携帯本来のカメラボタンとは違います。
(アプリを終了させるキーも)
456名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:12:07
3.5のエミュ使ってるのだが、imeOnがブロック動作になってる…
457名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:16:35
>>454
破棄できるが、何故かN504などの糞機種は破棄したのにメモリーが解放されない。
むかつく。
458名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:18:05
>>456
imeOnはブロック動作だろ?
459名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:03:50
454です。
オブジェクトの破棄の方法を具体的にお教えていただけないでしょうか。
参照をなくしてgc待ちなのでしょうか。
460名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:45:36
>455
そこで catch した内容をさらせ。
話はそれからだ。
461456:2005/09/11(日) 00:54:54
>>458
DoJa3.5のAPIマニュアルによれば

>  このメソッドはブロックしないメソッドです。 IMEでの入力が完了するまで待つことはありません。

とのことで、非ブロック動作。実機でも確認したよ。
462名無しさん@そうだ選挙に行こう:2005/09/11(日) 02:29:55
これか。
--------
4.2.6 Canvas におけるIMEの利用
Panel を用いた画面ではTextBox のユーザー操作によりIME を起動することができ、
ユーザーが入力した文字列をiアプリに与えることができます。これに対しCanvas を
用いた画面では、DoJa-3.0プロファイルにて新設されたAPI を使用してアプリケーショ
ンプログラムからIMEを起動することができます。これらのAPI を利用することで、
Canvas使用時もPanel使用時と同様にユーザーが入力した文字列をiアプリに与える
ことが可能となります。
アプリケーションプログラムがCanvas.imeOn()メソッドを呼び出すとIME が起動さ
れます。このメソッドは非ブロック型であり、IME の起動が完了するとアプリケーショ
ンプログラムに復帰します。
ユーザーがIME の操作を完了(確定またはキャンセル)すると、アプリケーションプロ
グラムはIME イベントの通知を受けます。開発者はCanvas.processIMEEvent()メ
ソッドをオーバーライドすることにより、IME の処理結果を受け取ることができます。
--------

この文の中の「非ブロック型なのに起動が完了すると復帰」というのが解せないんだけど、
この起動までブロックされてしまうことが問題というオチではないよね?
463456:2005/09/11(日) 03:13:35
>>462
> この文の中の「非ブロック型なのに起動が完了すると復帰」というのが解せないんだけど、
> この起動までブロックされてしまうことが問題というオチではないよね?

違う違う。
エミュレータでは「ユーザーがIME の操作を完了する」までブロックしてる。それが問題。
正確にはprocesssIMEEvent()を抜けてからimeOn()が終わってるよ。

実機はちゃんとその説明どおり「IME の起動が完了する」まででブロックが終わってるッポ。
464名無しさん@そうだ選挙に行こう:2005/09/11(日) 10:23:50
エミュはなぁ…。
setPixelsが実機の100倍遅いとか、結構問題があるんだよなぁ
465名無しさん@そうだ選挙に行こう:2005/09/11(日) 11:44:51
ミニロト向けの(1〜31の数字から5個選ぶ宝くじ)数字選出アプリを作りたいんですが、
このコードはもう少しスマートにならないでしょうか。また、重複排除はどうしたらいいでしょうか。
まだ初心者も初心者です。
ボタンを押すとlabelに乱数から発生させた数字5つを表示させてみました。
ご教示お願い致します。

java歴   :3週間
プログラム歴:3週間
コード作成歴:初めて
466名無しさん@そうだ選挙に行こう:2005/09/11(日) 11:47:32
public class MiniLoto extends IApplication implements ComponentListener {

Panel p;
Label label;
Button button;

public void start() {
p = new Panel();
label = new Label();
button = new Button();

p.setComponentListener(this);
p.add(button);
p.add(label);

Display.setCurrent(p);
}
467名無しさん@そうだ選挙に行こう:2005/09/11(日) 11:48:11
public void componentAction (component c, int type, int param) {
if (type == BUTTON_PRESSED) {
p.setTitle("多分当たります。");
Random R = new Random();

int mini[] = new int[5];
int mini2[] = new int[5];

for (int i=0; i<5; i++) {
mini[i] = Math.abs(R.nextInt());
if (mini[i] >= 1 || mini[i] <= 31) {
mini[i] = Math.abs(R.nextInt());}
else {
mini2[i] = mini[i] / 31;
if (mini2[i] >= 1) {
mini[i] = mini[i]-mini2[i]*31+1;
} } }
label.setText(mini[0],mini[1],mini[2],mini[3],mini[4]);
} } }
468名無しさん@そうだ選挙に行こう:2005/09/11(日) 12:21:11
>>465
こんな感じでいけるんでないか。

・要素数31の配列を作る
・配列に1〜31の数字をぶち込む
・ランダムに配列の要素を2つ選んで入れ替える処理を適当な回数繰り返す
 (1000回もやればいいかしら)
・配列の頭から5個の数値を選ぶ


ちなみに、アルゴリズムの話はスレ違いだ。

469名無しさん@そうだ選挙に行こう:2005/09/11(日) 13:41:49
>>465 今回は手短に答えるけど、アルゴリズムの話は専用スレがあるから、以後そちらでな。

>>467の部分をこうする。
int mini[] = new int[31];
for (int i = 0; i < 31; i++) mini[i] = i + 1; //配列に1〜31が順にセットされる
for (int tmp, n, i = 0; i < 5; i++){ //先頭の5つを順次どれかと入れ替える(自分自身になっても構わない)
n = Math.abs(R.nextInt() % 31); //nは31で割った余り(0〜30)になる (これが入れ替える相手の配列のインデックス)
tmp = mini[i];
mini[i] = mini[n];
mini[n] = tmp;
}
label.setText(mini[0],mini[1],mini[2],mini[3],mini[4]);
470名無しさん@そうだ選挙に行こう:2005/09/11(日) 20:14:00
DoJaはやはり「どうじゃ」と読むのでしょうか.
471名無しさん@そうだ選挙に行こう:2005/09/11(日) 21:25:56
>>460さん
452です。

それが、どうもエラーが出ていないようなのです。
try catchで捕まえようとしましたが、捕まりませんし。
(Exception e)ではカメラ関係のエラーは捕まえられないのでしょうか?
AppTraceをonにしてトレース情報を見てみたりもしましたが、こちらも異常は見受けられませんでした。
正直、もう何が原因なのか分かりません○| ̄|_
472デフォルトの名無しさん:2005/09/12(月) 02:26:46
>>471
それならインスタンスの生成と設定タイミング周りをミスってて、タマタマ動作してるってヤツじゃね?
たとえばキャンバスコントラクタの中でsetCurrentするような、一見動いているように見えるタイプの

まあ452を実際に試したことないので確証はないが、本当に端末不具合だったら泣いていい
473デフォルトの名無しさん:2005/09/12(月) 20:05:38
。・ ゚・。* 。 +゚。・.。* ゚ + 。・゚・(ノД`)
474デフォルトの名無しさん:2005/09/13(火) 11:05:48
>>402, 404
ごめん、これ俺なんだけど間違いだったわ
>>403が正しい
475デフォルトの名無しさん:2005/09/14(水) 13:07:57
アホな質問かもしれませんが非常に悩んでおります。
パネル型で作った場合に、

TextBox tb = new TextBox();
Panel p = new Panel();
int a = 1;
tb.setText(a);
p.add(tb);


としてもテキストボックスに変数aが表示出来ないのです。
何故なのでしょうか。
476デフォルトの名無しさん:2005/09/14(水) 13:57:12
まずAPIリファレンスのTextBoxを読め。話はそれからだ。
477475:2005/09/14(水) 15:25:33
Stringクラスで文字列に変換する必要があったんですね。
失礼しやした。
478デフォルトの名無しさん:2005/09/14(水) 15:55:17
Dojaをコマンドラインから起動してヒープサイズとか設定できたと
思ったんだけど、何て資料に書いてあるんだっけ?
479デフォルトの名無しさん:2005/09/14(水) 16:24:18
とりあえず簡単なアプリから作りたかったら何読んだら良いでしょうか?
480デフォルトの名無しさん:2005/09/14(水) 17:24:51
リファレンスマニュアル
481デフォルトの名無しさん:2005/09/14(水) 21:00:39
サンプルコード
482デフォルトの名無しさん:2005/09/15(木) 11:37:51
空気
483デフォルトの名無しさん:2005/09/15(木) 11:56:27
>>479
まじめに答えると
プログラム経験アリで理解もある:iアプリコンテンツ開発ガイド
プログラム経験なし:書店にある初心者むけプログラムの参考書。
484デフォルトの名無しさん:2005/09/15(木) 15:37:09
ここの住人って、みんなeclipse使ってるの?
俺はあのちょっとごちゃごちゃしてるのが苦手でterapad使ってるんだけど、見出し機能みたいなのが無いから最近不便に感じてたり・・・

何かオススメのエディタってある?
485デフォルトの名無しさん:2005/09/15(木) 17:38:00
VisualStudio6.0
486デフォルトの名無しさん:2005/09/15(木) 19:15:15
>>482
おもろい
487デフォルトの名無しさん:2005/09/16(金) 02:46:23
>>484
はっきり言う。

携帯アプリ書きにとって、eclipseはよほどの理由(親の遺言とか)が無い限り、ベストかつマストな開発環境。
使わないのはよほどの理由(親の遺言とか)が無い限り、ただの阿呆。

悪いことは言わないから、とっとと移行しる。
488デフォルトの名無しさん:2005/09/16(金) 03:31:49
>>487
eclipseにはプリプロセッサが無い
489デフォルトの名無しさん:2005/09/16(金) 09:40:13
>>485
それを買うお金がなひ・・・
学生時代にCDをこpうわなにをするやm

>487
なんてこった('A`)
そこまで優れてるのかえくりぷすよ。
前のPCにインストールした時やたら時間かかった覚えあるから抵抗があったんだけど、そこまで言うならまた導入してみるかー
ありがとうよ!

>>488
そのくらいなら何とか・・・
490デフォルトの名無しさん:2005/09/16(金) 10:33:43
俺3年くらい携帯アプリの開発してるけど、eclipseなんて使ったこと無いよ('A`)
書いてるのもCだかJavaだかわかんないようなソースだしな'`,、('A`) '`,、
491デフォルトの名無しさん:2005/09/16(金) 11:06:58
俺も使ったこと無いな、開発環境は
秀丸+DOJAだけっす。

規模が小さいから処理内容は頭の中で大抵片付くし、
問題になるのはバグというよりも機種依存の方だからなぁ。
作ってるもののレベルの違いなんだろうなw俺低レベルなのしかつくらんしw
492488:2005/09/16(金) 11:24:20
>>489
趣味アプリなら、eclipse最強。これは間違いない。

だが仕事でカッツカツのプログラムを要求されると、eclipseの良いところをまったく享受できない。
俺は仕事なもんで、VCとVCのプリプロセッサ(コンパイラのプリプロセスオプション)を使ってるよ。
493デフォルトの名無しさん:2005/09/16(金) 11:28:25
VCと〜じゃねーや。VS6.0ね。
494デフォルトの名無しさん:2005/09/16(金) 18:42:48
趣味でVS.NET
495デフォルトの名無しさん:2005/09/17(土) 00:21:03
別にeclipseでもビルドシーケンスのカスタマイズできるから
プリプロセスだろうがポストプロセスだろうがなんだって
できるんだけどね。
496デフォルトの名無しさん:2005/09/17(土) 01:08:56
>>487
ふーん
漏れはEmacsで書いてるけどナ。
497デフォルトの名無しさん:2005/09/17(土) 01:57:33
俺メモ帳
498デフォルトの名無しさん:2005/09/17(土) 04:16:23
まあ、ビルドさえ通ればなんでもね。

Emacsちゃんとカスタマイズしてる人なら、それでいいんじゃないかな。
普通にある程度攻めるまでなら、素のeclipseが最適解。
さらに攻めるならeclipse+ANT他。
それで駄目なら神頼み。

そんな感じでいいんじゃないかな。


エディタその他に悩むくらいなら、素直にeclipse入れるのがいいと思うよ。
特に携帯アプリはあまりコードを贅沢に書けないので、CVSとかの支援があると
開発効率が格段に変わってくる。
で、eclipseのCVSクライアント機能は業界トップランク。
こんな幸せな結婚はそうザラにはないし、悩むくらいなら入れなされって感じかな。
499デフォルトの名無しさん:2005/09/17(土) 12:20:25
>>495
そうなんだけどさ、定数やるとき
#define _MAX_ITEM 4
って書くじゃん、カツカツの仕事アプリって。

でもeclipsだと支援機能考えると
final int MAX_ITEM = 4;
って書きたいよね。

例えばそういうところで、せっかくeclips使ってるのに機能が生かせなくて(´・ω・`)しょぼんだなぁと。
500デフォルトの名無しさん:2005/09/17(土) 12:47:05
>>499
final int 使うとBREW移植で面倒(´・ω・`)
501デフォルトの名無しさん:2005/09/17(土) 13:13:00
>>499 いいたいことはよくわかるけど、定数定義やifdef程度ならeclipseでも
テクニックでカバーできるんだよね。もちろんマクロにばりばり依存するような
プリプロセスになると難しいけど。そのへんトータルなコストで判断して
俺はeclipse使ってる。
502デフォルトの名無しさん:2005/09/17(土) 23:44:45
>>500
置換 "final" → ""
503デフォルトの名無しさん:2005/09/18(日) 02:58:08
>>502
何寝ぼけたこと言ってるんだ
504デフォルトの名無しさん:2005/09/19(月) 15:02:46
VS.netでiアプリ開発できるんですか?
505デフォルトの名無しさん:2005/09/19(月) 15:47:04
失礼します。
パネルで文字を入力し、その文字列をキャンバスクラスで表示させ、文字列をキーで移動させる
iアプリを作りたいと思い、以下のように作ったのですが、
パネルクラスからキャンバスクラスを呼び出すとキー入力を受け付けてくれなくなります。
文字をキャバスクラスの中で決めて、
キャンバスクラスを起動させるとちゃんとキーを押すと文字が移動してくるので、
パネルクラスからキャンバスクラスへ移動する時の処理がおかしいと思うのですが、どこがおかしいのか分かりません。
どうかどなたかご指南下さい。
506デフォルトの名無しさん:2005/09/19(月) 15:48:10
クラスは以下のようになっています。
public class Main extends IApplication{
Canvas_class Cc=new Canvas_class();
public void start() {Display.setCurrent(Cc);}

キャンバスクラス
public class Canvas_class extends Canvas{
Panel_class Pc=new Panel_class();
//プログラム本来の処理
//キープレスイベント
if(PUSHKEY==Display.KEY_SELECT){PUSHKEY=-1000;Display.setCurrent(Pc);}
}
パネルクラス
public class Panel_class extends Panel implements ComponentListener{
Canvas_class Cc=new Canvas_class();
//プログラム本来の処理
//キープレスイベント
public void softKeyReleased(int arg0) {if(arg0==Frame.SOFT_KEY_1){Display.setCurrent(Cc);}
//↑これで呼び出すとキャンバスクラスでキー入力を受け付けなくなってしまいます。
}
507デフォルトの名無しさん:2005/09/19(月) 16:37:54
インスタンス作りすぎ。。
508デフォルトの名無しさん:2005/09/19(月) 23:57:01
>>506
キー入力を受け付けないとか言う前にクラスの構造がめちゃくちゃ。

最初に↓ここでキャンバスクラスのCcを生成して、
>public class Main extends IApplication{
>Canvas_class Cc=new Canvas_class();

次にそのCc内でパネルクラスのPcを生成してて↓
>public class Canvas_class extends Canvas{
>Panel_class Pc=new Panel_class();

さらにそのPc内で新たにキャンバスクラスCcを生成してて↓
>public class Panel_class extends Panel implements ComponentListener{
>Canvas_class Cc=new Canvas_class();

そのCcをDisplay.setCurrent(Cc);している。
「一番最初のCcはどうなった?」とか気付いてないでしょ。

それからキャンバスの中でパネルを生成するなんてこと、まずやらない。
最初の段階↓でパネルも生成しておいてから、互いに切り替えるよう改造・整理して。
>public class Main extends IApplication{
>Canvas_class Cc=new Canvas_class();
>Panel_class Pc=new Panel_class();
509デフォルトの名無しさん:2005/09/21(水) 17:22:32
エー?ちょっと入力するだけなら
>キャンバスの中でパネルを生成
してもいいんじゃね?
510デフォルトの名無しさん:2005/09/21(水) 20:11:48
んなあほなw
Panelなんて正常に解放されるかどうかも分からんのに。
511デフォルトの名無しさん:2005/09/21(水) 21:22:42
506です。
508さんのご指摘してくれた箇所を直して、プログラム部分を見直して、
それぞれをちゃんと纏めたら無事動くようになりました。
ありがとうございます。

>>509さん
確かに私が確認した範囲ではパネル内で不審な動作はしていませんでしたが、

>>510さんが指摘されたように、そこから別のインスタンスに移動した時は動作の保証は無くなってしまうようです。
512デフォルトの名無しさん:2005/09/22(木) 02:15:31
お父さんお父さん、聞いてくださいな。
主に勝手アプリでの話しなんだけど、MLDへの変換ってどんなソフト使ってる?
DOCOMOが配布してる奴は商用限定だろうし。
たまには趣味ゲーとか作ってみたいんだが、どーもコレっていう決定打が無い気がする。
オススメのコンバータとか無いもんでしょうか。
513デフォルトの名無しさん:2005/09/22(木) 04:09:38
tp://www.hundredsoft.jp/wav2mld/index.html
趣味の範囲内でやってる者だけど、こんなん使わせていただいてます。
514デフォルトの名無しさん:2005/09/22(木) 14:20:50
>>512
MIDIをどっかからパクってきて着メロコンバータとかで変換するとか
515デフォルトの名無しさん:2005/09/22(木) 16:48:36
Doja3.0or4.0の開発にEclipse3.0又は3.1って使えますか?
仕事で会社全体に強制導入を考えてるんですけど、どれを入れるべきか悩んでます。

あと、3.x系でMIDPの開発ってできます?
516デフォルトの名無しさん:2005/09/22(木) 17:06:11
漏れのPCだと、Eclipse3.xでもDoja4.0使えたよ。ビルドもエミュも動いた。
学校のPCだと、全く動かなかったけどね。

会社でやるなら、推奨環境の2.1.2を使うべきだと思いまふ。
3.xは動くこともあるけど、締め切り前にビルド/テストできないなんて現象出たら怖いですよ。
517デフォルトの名無しさん:2005/09/22(木) 17:15:04
追記。
NDS2.2使用してますが、Eclipse3.xでもMIDPの開発は可能です。(推奨環境はEclipse2.2だけど)
ちなみに、NDS3.0はEclipse3.0推奨してます。
518デフォルトの名無しさん:2005/09/23(金) 02:58:06
ありがとうございます。
今回、3キャリア開発にエクリプスを使えるか調査しているのですが、まずはテスト導入して使い込みながら考えます。
基本はエクリプスで作りつつ、保険としてバッチ環境なりAntタスクを用意したほうが良いんですかね・・・
519デフォルトの名無しさん:2005/09/23(金) 03:38:43
3.xでも特に問題ないよね。
随分長いこと使ってるが、編集の上で特別な問題が起きたことはないかな。
そもそもEclipseのJavacがコンパイルかけたJarは使わない(保証外)だから、
最終的にはDojaの環境なり自前ビルドなりするんだし、それまでの作業が快適に過ごせるなら
委員ジャマイカ。
520デフォルトの名無しさん:2005/09/23(金) 09:34:42
CLDC+MIDPスレとここであまりにも反応が違うんで笑った。
521デフォルトの名無しさん:2005/09/23(金) 12:21:58
しかし、今までテキストエディタ+プリプロセス使いまくりの状況で
いきなりEclipse使えって言われたら効率ガタオチだな(´Д`;

つーか、納期が見えてる仕事抱えた状態でテスト導入とかいわれたらキレる。
522デフォルトの名無しさん:2005/09/24(土) 04:26:35
それは流石に切れていいが。
火急の様がない時には、移行を考えてもいいだろ、別に。

Java使うならEclipseのエディタ機能はピカイチだし、
プリプロセス、ポストプロセスだって、Antが使えるので思うがまま。

まあ時間が出来たときにでも移ってみたら。
523デフォルトの名無しさん:2005/09/24(土) 12:19:05
VS.NET のエディタを使う俺は変り者
524デフォルトの名無しさん:2005/09/24(土) 12:31:15
VS6.0使ってる俺様が来ましたよ。.NETは重過ぎる
525デフォルトの名無しさん:2005/09/24(土) 14:31:45
emacsとmakeにcvsでとりあえず事足りてる
526デフォルトの名無しさん:2005/09/24(土) 18:30:50
Javaにはやっぱantが剥いてるよ
527デフォルトの名無しさん:2005/09/24(土) 20:52:56
JarInflaterについての質問です。
テキストファイルの展開は成功しますが、画像や音楽はNullPointerExceptionが発生してしまいます。
ji = new JarInflater(Connector.openInputStream("resource:///" + this.jarName));
is = ji.getInputStream(this.jar1);
byte buf[] = new byte[(int)ji.getSize(this.jar1)];
is.read(buf);
this.txtData = new String(buf);
     ↑までは成功
this.ms = MediaManager.getSound(ji.getInputStream("resource:///" + this.jar3)); /* ここでぬるぽ */
this.ms.use();
this.ap = AudioPresenter.getAudioPresenter();
this.ap.setSound(this.ms);
JarInflater.getInputStream()を使わず直接音楽ファイルを指定すると正常に再生できます。
どのような原因が考えられるのでしょうか?
528デフォルトの名無しさん:2005/09/24(土) 22:47:38
>>527
>this.ms = MediaManager.getSound(ji.getInputStream("resource:///" + this.jar3));
getInputStream()の引数が変じゃん
529デフォルトの名無しさん:2005/09/24(土) 23:58:40
あぁぁーー……
ありがとうございました、助かりました
530デフォルトの名無しさん:2005/09/25(日) 12:02:32
メーラーがエディタ代わりorz
531デフォルトの名無しさん:2005/09/29(木) 18:58:47
Randomクラスについて。

CLDC1.0の定義によると、
同一シードであれば同一の乱数列が返ることが保証されているそうですが、
これは実機上でもそのようになっているのでしょうか?

そうなっていない事例(またはそう推測される事象)などを
確認された方はいらっしゃいますでしょうか?
532デフォルトの名無しさん:2005/09/29(木) 22:58:31
腐ってもJAVA。きちんと同じになりますよ。
533デフォルトの名無しさん:2005/09/29(木) 23:19:22
>>531
アルゴリズムが規定されてるので大丈夫でしょう。
マニュアルには
(See Donald Knuth, The Art of Computer Programming, Volume 2, Section 3.2.1.)
とあります。
534デフォルトの名無しさん:2005/09/30(金) 09:25:33
Seedを使うRandomなら全部そうだよ。
乱数系アルゴリズム知ってれば分かるけど、所詮計算式に過ぎないから。
535デフォルトの名無しさん:2005/09/30(金) 10:22:36
まあ、その計算式が同一のものかという話なわけだが、
同一のようなので問題ない。
536デフォルトの名無しさん:2005/09/30(金) 11:19:14
そんな心配をする俺がよく使っているランダム発生のコード
昔のアルゴリズム本からの流用だが

class CRandomValue
{
private:
unsigned int m_NextValue;

public:
CRandomValue(){ m_NextValue = 1; }
~CRandomValue(){}

inline unsigned int GetRandomValue( unsigned int max )
{
m_NextValue = m_NextValue * 1103515245L + 12345;
return ( unsigned int )( m_NextValue / 65536L ) % max;
}

inline void SetStartValue( unsigned int start )
{
m_NextValue = start;
}
};
537デフォルトの名無しさん:2005/09/30(金) 11:20:05
ごめ。これC++版だった。でもJavaにするのもそんなにたいしたことないだろう
538デフォルトの名無しさん:2005/09/30(金) 17:23:50
>>535 >>531
複数の実機で乱数列の計算式 y=f(x) が同一か?という話なのか?

……そりゃわからんなぁ。>>533の言うように規定はあるんだろうと願いたいが。
中身がnativeだったりしたら怖い。


でもとりあえず、>>531が何でそんな事を必要としているのか問いつめたい。
539デフォルトの名無しさん:2005/09/30(金) 18:53:00
リプレイとかマップ生成とかじゃね? よく使うよ。
540デフォルトの名無しさん:2005/09/30(金) 20:01:26
リプレイデータ作るときにSeedだけ保存すればいいというのはでかい。
というかこれを必要としないゲームというのをあまり思いつかないな…。
541デフォルトの名無しさん:2005/10/01(土) 02:11:36
失礼します。複数のサウンドの同時再生について質問です。

MID音源から変換したBGMと効果音のあるアプリを制作しています。
対応は900以上です。

なぜか、N900系のみサウンドが正常動作しません。

BGM鳴る→アクションによって効果音が鳴る→同時にBGMがならなくなる
その後、効果音しか鳴らなくなります。

他の機種ではサウンドはBGMと効果音が同時再生可能です。

N900系では、特殊な条件や対処方法があるのでしょうか?
よろしければご教授下さいm(_ _)m
542デフォルトの名無しさん:2005/10/01(土) 03:35:14
>>541
N505、N900までのN系はMIDI 1-8ch以内でデータを作る必要があるのは仕様
543デフォルトの名無しさん:2005/10/01(土) 03:56:17
getAudioPresenterの引数?
544デフォルトの名無しさん:2005/10/01(土) 06:59:14
多分>>542
だけど>>543の可能性も無きにしもあらず。

ちゃんと最初に必要なチャンネル分2つ、getAudioPresenter()で確保してるよね?
545デフォルトの名無しさん:2005/10/01(土) 12:07:12
ちょっと質問させてください。

DoJa4.0をインストールしている状態で、
古いバージョン(3.5を想定)用のアプリは作成できますか?

もし可能であれば、
その際に注意することや、特殊な操作などがありましたらお願いします。


質問の理由:
 ・Eclipse3.0でプラグインを使いたい。複数のIDEは入れたくない。
 ・だからといって旧バージョンに完全移行すると他のプラグイン関係で問題あり。
 ・自分の持ってるケータイがDoJa3.5対応機種(900i)
546デフォルトの名無しさん:2005/10/01(土) 12:35:04
4.0で追加された命令を使わなければOKだよ。
547デフォルトの名無しさん:2005/10/01(土) 13:40:14
サンクスです。
JDKみたいに、特定のバージョン向けとか設定できたら良かったんですけどね。

548デフォルトの名無しさん:2005/10/01(土) 16:22:23
ああ、失礼。
ターゲット指定できたのね。大ボケ。



……インストールでコケた orz
549541:2005/10/01(土) 16:57:15
>>542 >>543 >>544

ご指摘ありがとうございますm(_ _)m
皆様のおかげで、解決いたしました。

>N505、N900までのN系はMIDI 1-8ch以内でデータを作る必要があるのは仕様
この部分において、BGMは1-8ch以上でしたが、
複数サウンドで鳴らさない場合には正常に動作するため勘違いしておりました。

1つのサウンド→1-8ch以上OK
複数サウンド→1-8ch以上NG
*NECよ、こんな風にする意味あるのか・・・orz

仕様を確認きちんと把握できておりませんでした(汗)申し訳ない。
以上、ご報告まで。
550デフォルトの名無しさん:2005/10/01(土) 17:12:35
>>545 eclipse3.0でDoja3.0/3.5/4.0全部動いてるよ。
突っ込んで調べては無いけど、多分問題無いと思う。
ちなみに3.1にしたらDoja4.0以外は認識すらしてくれなかった・・・
551デフォルトの名無しさん:2005/10/01(土) 17:36:41
くそがあああああ
久しぶりにアプリVerUpしてエミュで万全だったのに、実機でアプリ起動するたびに落ちてた
浮動小数使ってたのが原因だった
原因突き止めるために2000円分DLしたorz
コンパイル時に警告ぐらい出してくれ
552デフォルトの名無しさん:2005/10/01(土) 21:15:58
俺は乱数は、乱数の質が気になるので自前のMT乱数クラスを使う。
553デフォルトの名無しさん:2005/10/01(土) 21:21:33
はいはい、スゴススゴス
554デフォルトの名無しさん:2005/10/01(土) 23:32:29
日記の余白
乱数って、実はすんげぇ単純な仕組みであることを本で知りますた
基本は掛けて足すだけですた
555548:2005/10/01(土) 23:42:48
お騒がせしました。
結局、DoJa4.0のインストール時に出る「レジストリに書き込めねぇよウワァァァン」というエラーが
自分には解決できなかったので、非サポートではありますが3.5を入れることに。
556デフォルトの名無しさん:2005/10/02(日) 00:14:02
完全に0からアプリを勉強しようとしてるんですが、
オススメのサイトとか本があれば教えて欲しいです。
557デフォルトの名無しさん:2005/10/02(日) 01:44:05
>>556
「ん ぱか」をぐぐりなされ。

ただし後ろに会社の同僚や彼女が居る場合はドン引きされる可能性があるので、
最初は一人で見るのが吉。


いや、ん・ぱか工房のサイトには死ぬほどお世話になってるけど、
あのページ見てる姿は、どう贔屓目にも仕事してる様には…。
558デフォルトの名無しさん:2005/10/02(日) 01:46:58
>>552
アプリ容量に余裕があるなら、そうしたいところなんだけどねえ。
盛れとかの場合、ライブラリ側で持ってるからいいやっつって真っ先に切り捨てるのがその辺だなあ。
ゲーム系だから言える事なのかもしれないけど。
559デフォルトの名無しさん:2005/10/02(日) 03:28:53
>>557
プログラマがいまさらそんなことを気にしてどうする。
560デフォルトの名無しさん:2005/10/02(日) 11:09:42
>>558
zip圧縮前の、素の.classファイルで700バイト程度。
これを大きいと見るか、小さいと見るかだな。
561デフォルトの名無しさん:2005/10/02(日) 19:57:02
>>551
DoJa-4.0(CLDC1.1)からfloatとdouble使えるからな
しかしなぜ実機と同じDoJaのエミュを使わないんだ
562デフォルトの名無しさん:2005/10/03(月) 08:37:15
>556
ASCII の FOMA 本でも買っとけ。
すぐ漬け物石になるけど。
563デフォルトの名無しさん:2005/10/04(火) 15:10:15
これが新しい携帯だ。
どーじゃ。
ふぉー、まぁー。
564デフォルトの名無しさん:2005/10/04(火) 15:32:36
iアプリ連携ってエミュでテストできる?
565デフォルトの名無しさん:2005/10/04(火) 17:16:42
できる。
iアプリのエミュは優秀すぎる。

しかしsetPixelsが遅すぎる件はいつ直してくれるのかなぁ(*´ω`)
566デフォルトの名無しさん:2005/10/04(火) 17:35:42
dクス、できるのか(´・ω・`)

appフォルダにsampleはあるんだが
args[0] = IApplication.getCurrentApp().getSourceURL() + "sample.jam";
って書いてlaunch呼ぶと
java.lang.SecurityException: Illegal i-application url

が帰ってくるんで困ってるんだけど、何か違うんかな?(´・ω・`)
567デフォルトの名無しさん:2005/10/04(火) 20:00:36
ちゃんとアプリ間起動をJAM内で宣言してるか?
568デフォルトの名無しさん:2005/10/04(火) 20:58:49
ヒント:LaunchApp、LaunchByApp
569デフォルトの名無しさん:2005/10/05(水) 04:33:56
>>563
ごめん、久々に笑った。
570デフォルトの名無しさん:2005/10/05(水) 10:04:58
sinとかcosとかはiモード携帯電話用Javaでは使えないですよね?
571デフォルトの名無しさん:2005/10/05(水) 12:48:50
すんません質問です。
アプリ開発でプリプロセッサを使う意味がいまいち解らないんですが
iアプリを作る場合に、プリプロセッサを使った開発は
使わない場合と比べてどのような効率の違いがあるんですか?

#defineはstatic final intで定数化すればいいし、
マクロでインライン化したいならメソッドにfinalつければいいし
#if 0はコメントにすりゃいいし・・・

プリプロセッサじゃなきゃダメな理由ってあります?好み以外で。
572デフォルトの名無しさん:2005/10/05(水) 13:07:30
>>571
定数とロジックを異なるファイルに分離した上で、.classのサイズを小さく、数を少なくできるんだよ。
まぁ、ポストプロセスなツール使っても近いことはできるが.classの数は、難しいな。
数はそのままjarサイズに響くから、サイズが本当にギリギリの時には効いてくる。
573デフォルトの名無しさん:2005/10/05(水) 13:12:32
>>570
使えますが、自前実装したほうがいいでしょう。
574デフォルトの名無しさん:2005/10/05(水) 14:04:03
>>567>>568
ありd。

どうやらエミュレータの
「設定」「ダウンロードアプリケーション設定」
を設定してなかったのが問題っぽかった。

お騒がせしました⊂⌒~⊃。Д。)⊃
575デフォルトの名無しさん:2005/10/05(水) 14:32:23
>>571
やっぱり、デバッグバージョンとリリースバージョンを簡単に切り分けられるのが嬉しい。
例えば

#ifdef _DEBUG
#define debug(x) System.out.println(x)
#else
#define debug(x)
#endif

とかね。
とは定数。
static final int は容量くうからダメ!!
576デフォルトの名無しさん:2005/10/05(水) 15:24:21
>>575
プリプロセッサの有用性を否定するつもりはないけど、

>#ifdef _DEBUG
>#define debug(x) System.out.println(x)
>#else
>#define debug(x)
>#endif

このような条件付コンパイルのためにJavaの言語仕様上
次の3点がわざわざ規定されているからプリプロセッサの優位性の
例としては不適切。

1. プリミティブ定数のコンパイル時解決
2. まさに条件付コンパイルに使えるよう1.を行った際のifブロックでの
 到達不能性チェックに例外を設ける。
3. 2.によってリリースコードでコードの増加がないようコードの省略を
 コンパイル時の最適化に要求。

3.はmustではないけど、1+2をわざわざ条件付コンパイルのために考慮
したこともあってSunやIBMのコンパイラではまず間違いなく実装されている。

プリプロセッサの例としてはmaxやminをマクロで定義したいとか
そういうほうが適切だよね。
577576:2005/10/05(水) 15:38:02
ごめん、575をちゃんと読んでなかった。defineの切り分けだから
まさにプリプロセッサの領分だね。
578デフォルトの名無しさん:2005/10/05(水) 15:47:36
>>577 単に定数の切り替えだけって意味ならプリプロセス便利だけど、
575の例が意図してるデバッグコードの差込なら、576が書いてる理由でプリプロセッサは不要。
579デフォルトの名無しさん:2005/10/05(水) 17:30:01
>>573
いつから浮動小数点演算が実装されたんだ?
580デフォルトの名無しさん:2005/10/05(水) 17:35:28
581デフォルトの名無しさん:2005/10/05(水) 18:02:05
>>570
DoJaのバージョン次第。505以降(DoJa3.0)の機種なら
オプションAPIながら全機種正常動作する。
ただ機種によっては同じクラス内のもので遅いとの報告があり>>433
自作した方が速度的に無難。
個人的にはsinテーブル作成時のみ使用してるけどな起動時に。

>>579
ちなみにcom.nttdocomo.opt.ui.j3d.Mathのcosとsinは
どっちも浮動小数点には関係ない。どっちもint数値。
582デフォルトの名無しさん:2005/10/05(水) 18:34:00
平方根も自作した方が無難?
583デフォルトの名無しさん:2005/10/05(水) 20:06:45
>>576
ものすごく詳しく話を聞きたい。
1についてだが、final static intを使ってもjarのサイズが増えるんだが、これは違う?
2と3だが、少なくともドコモエミュでコンパイルする際「使ってないメソッド」すら省略してくれないんだが、何か手があるの?


>>579
sin/cosのような小数点が絡むものは、1.0を4096として実装されてるんですよん。
584デフォルトの名無しさん:2005/10/05(水) 21:13:22
>>582 固定小数クラスはググレば見つかるよ。
sqrt自作は俺には無理だったんでネットで見つけた実装をパクったw
sinはテイラー展開で意外とかんたんに実装できるぞ。sin作れればcosはいらんし。

クラスサイズ的に自作が良いかオプションAPIをインポートするのが良いかは検証してないので知らん。

>>583 俺もその辺興味ある。Javaコンパイラの実装については明るくないので。。。
携帯の場合JDK1.3推奨なわけだが、それでも>>576のいうような賢いコンパイルってやってくれるのかな?
585デフォルトの名無しさん:2005/10/05(水) 21:32:31
1+1+1+1+1すら最適化しない
それがドコモクオリティー
586デフォルトの名無しさん:2005/10/05(水) 21:56:48
>>583 メソッドの省略はまた別の話。
#クラスのバイナリ互換性も絡むし。IBMの製品では明示的に省略するオプションあったけど。
576でいっているのはこういう最適化のこと。
$ cat Test.java
public class Test {
    private static final boolean DEBUG = false;
    public static void main(String[] args){
        if(DEBUG){
            System.err.println("debug");
        }
    }
}

$ javac -g:none Test.java

$ javap -c Test
Compiled from null
public class Test extends java.lang.Object{
public Test();
 Code:
  0:  aload_0
  1:  invokespecial  #1; //Method java/lang/Object."<init>":()V
  4:  return

public static void main(java.lang.String[]);
 Code:
  0:  return

}
>>584
該当する仕様自体はJava2が出来たときには含まれていたから1.3のコンパイラ
でも状況は変わらないんじゃないかな。少なくともIBMの1.3.1では実装されていた。
587デフォルトの名無しさん:2005/10/05(水) 22:33:05
ほー。それ削ってくれるんですか。いいな。
でもstatic final booleanが容量食うのが嫌ね…。

プリプロセッサの効能としては、あとは#includeが使えるところがいいかな。
588デフォルトの名無しさん:2005/10/05(水) 22:51:10
>>587 そのような心配があるときは
$ cat Const.java
class Const {
  static final boolean DEBUG = false;
}
$ cat Test.java
public class Test {
  public static void main(String[] args){
    if(Const.DEBUG){
      System.err.println("debug");
    }
  }
}
のように別ファイルに切り分ける。576のルール1によって定数は
コンパイル時に解決されているから、実行時にConst.classが存在
しなくても実行できる。このように1.はバイナリ互換性を乱すものだけど
必要なものとして規格に入っている。
589588:2005/10/05(水) 22:53:36
あ、もちろんstatic final booleanの容量の話ね。
590デフォルトの名無しさん:2005/10/06(木) 00:35:37
プリプロセッサを用いて最適化やコーディング作業の負担を減らすというのはいいと思う。
ただ、開発チーム以外の人がそのソースを見る可能性が出てきた場合、
#defineや#includeを使った記述はJavaでも何でもない「我社の独自言語です」なので
そこら変を考慮する必要はあるぞと。
591デフォルトの名無しさん:2005/10/06(木) 00:43:55
企業レベルでjava使ってる香具師がプリプロセッサ知らんというのも変じゃないか
592デフォルトの名無しさん:2005/10/06(木) 00:54:42
知ってる知らないの問題じゃない。
「Javaのソースでやり取りしましょう」と決めたなら
#defineとか記述してないソースをやり取りするのが筋だろう。

もちろん、その相手と
「プロプロセッサ使ってます。そちらでもこのソースに合わせて使ってください。」
で話が通ってるなら好きにやればいいんだが。
593デフォルトの名無しさん:2005/10/06(木) 01:09:17
結局>>571の疑問は解決できてるのかな。
>>572>>575いうメリットって>>586>>588の内容を読むと
意味ないって感じなんだけど。
とくに572のいう「定数とロジックの切り分けをファイル単位で出来て、かつ
ファイル数の増加が起こらない」ってのは588よむと
static finalで宣言してインライン展開させてConst.classを配布しなければ
ファイル数も増加しないし容量もかわらんってことだよね?
594593:2005/10/06(木) 01:27:32
なんか意味違って読めるな。

とくに572のいう「定数とロジックの切り分けをファイル単位で出来て、かつ
ファイル数の増加が起こらない」ってのは、588によればプリプロセッサ使わなくても
static finalで宣言してインライン展開させてConst.classを配布しなければ
ファイル数も増加しないし容量もかわらんし同じことってことだよね?
595デフォルトの名無しさん:2005/10/06(木) 01:27:36
iアプリ仕事で組んでる人はCのプリプロセッサ使って書くのが
ほとんど一般的になってない?
596デフォルトの名無しさん:2005/10/06(木) 01:33:25
おまえらゲーム屋じゃないの?
597デフォルトの名無しさん:2005/10/06(木) 01:38:05
いや、やっぱ#includeにかわる実践的な手段が無いってのは痛いと思うぞ。

開発やる上では、できればシステム部分とゲームタイトル依存部分は明確に分けたい。
そういう場合、やっぱり関連するメソッドごとにファイル単位で切り分けておいて#includeでまとめたくなるわけで。
こればっかりは>>588のやり方では無理だよね?
598デフォルトの名無しさん:2005/10/06(木) 02:15:50
しかしiアプリ以外まで視野に入れ始めると588の方法には殺意を覚えるBREWプログラマ
599デフォルトの名無しさん:2005/10/06(木) 02:52:37
>>588の話を読んで、ちと実験してみた。
[Test.java]--------------------------------
class Define {
static final boolean DEBUG = false;
static final int VAL_A = 100;
static final void sysout(String s)
{
System.out.println(s);
}
}

public class Test{

public void main(String[] args){
for(int i=0; i<Define.VAL_A; i++){
Define.sysout("hello"+i);
}
if(Define.DEBUG) {
for(int i=0; i<Define.VAL_A; i++){
Define.sysout("world");
}
}
Define.sysout("test");
}
}
----------------------------
というコードを書いて、javac Test.java -O -g:none でコンパイル
600デフォルトの名無しさん:2005/10/06(木) 02:53:20
んで、javap -c Test で逆コンパイルした結果。(JDK1.3.1で確認)

No sourcepublic class Test extends java.lang.Object {
public Test();
public void main(java.lang.String[]);
}

Method Test()
0 aload_0
1 invokespecial #1 <Method java.lang.Object()>
4 return

Method void main(java.lang.String[])
0 iconst_0
1 istore_2
2 goto 30
5 new #2 <Class java.lang.StringBuffer>
8 dup
9 invokespecial #3 <Method java.lang.StringBuffer()>
12 ldc #4 <String "hello">
14 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
17 iload_2
18 invokevirtual #6 <Method java.lang.StringBuffer append(int)>
21 invokevirtual #7 <Method java.lang.String toString()>
24 invokestatic #8 <Method void sysout(java.lang.String)>
27 iinc 2 1
30 iload_2
31 bipush 100
33 if_icmplt 5
36 ldc #9 <String "test">
38 invokestatic #8 <Method void sysout(java.lang.String)>
41 return
601デフォルトの名無しさん:2005/10/06(木) 02:53:53
(連投スマヌ)結果を見ると31で定数が置き換わっているのがわかる。
また、36は最後の行に対応していることからif(Define.DEBUG)が除去されているのも確認できた。

しかし、Define.sysout()がインライン展開されない。調べてみるとfinalメソッドにしたからといって必ずインライン化されるとは限らないらしい。
JDKのバージョンによってこの当たりの挙動は微妙に違ってくるようで、いまいち信頼できない・・・
確実にメソッドをインライン化させる手段ってないのかなぁ。
それがあれば脱プリプロセッサな開発も夢ではないんだが。(あ、#includeはどうしよう・・・)
602588:2005/10/06(木) 03:20:17
576でも書いたけどプリプロセッサを否定しているわけじゃなくて
条件付コンパイルは例としては悪いってのを言いたかったのは
再確認しておくね。

>>601
>確実にメソッドをインライン化させる手段ってないのかなぁ。
>それがあれば脱プリプロセッサな開発も夢ではないんだが。(あ、#includeはどうしよう・・・)

jxelinkをすすめとく。ポストプロセッサだからeclipseみたいなIDEとの
相性もいいし。
603588:2005/10/06(木) 03:38:09
ちなみに599をjxelinkしてjavapした結果。
public void main(java.lang.String[]);
 Code:
  0:  iconst_0
  1:  istore_2
  2:  iload_2
  3:  bipush 100
  5:  if_icmpge    41
  8:  new   #13; //class StringBuffer
  11: dup
  12: invokespecial  #14; //Method java/lang/StringBuffer."<init>":()V
  15: ldc   #16; //String hello
  17: invokevirtual  #20; //Method java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
  20: iload_2
  21: invokevirtual  #23; //Method java/lang/StringBuffer.append:(I)Ljava/lang/StringBuffer;
  24: invokevirtual  #27; //Method java/lang/StringBuffer.toString:()Ljava/lang/String;
  27: astore_3
  28: getstatic    #33; //Field java/lang/System.out:Ljava/io/PrintStream;
  31: aload_3
  32: invokevirtual  #39; //Method java/io/PrintStream.println:(Ljava/lang/String;)V
  35: iinc  2, 1
  38: goto  2
  41: ldc   #41; //String test
  43: astore_3
  44: getstatic    #33; //Field java/lang/System.out:Ljava/io/PrintStream;
  47: aload_3
  48: invokevirtual  #39; //Method java/io/PrintStream.println:(Ljava/lang/String;)V
  51: return
604デフォルトの名無しさん:2005/10/06(木) 03:42:27
なんだってJavaの最適化能力はこう貧弱なんだろうなあ。
例えば代入の伝播。
A=B=C=D=0 と A=0 B=0 C=0 D=0 は意図する所は同じだが、
コードサイズは格段に左の方が小さくなる。
こうしなければならなかった積極的な理由って何だ!

乗除算が絡むと、どの瞬間(桁あふれ等の)例外が発生したか
捕まえるために、1+2*3/4-5*6/7+8-9なんて計算は全然
片付けてくれない。

笑わせてくれるよなあ。
605デフォルトの名無しさん:2005/10/06(木) 03:47:14
>>604
>例えば代入の伝播。
詳しく。

>1+2*3/4-5*6/7+8-9なんて計算は全然 片付けてくれない。
言語仕様上片付けることが保証されてますが何か?
606デフォルトの名無しさん:2005/10/06(木) 03:47:20
そこまでサイズを求なければならない積極的な理由って何だ!
笑わせてくれるよなあ。


とも書ける。
607デフォルトの名無しさん:2005/10/06(木) 03:49:08
iアプリだから。
608デフォルトの名無しさん:2005/10/06(木) 04:03:29
とりあえず604は定数リテラルの扱われ方を全然理解してないな。
609デフォルトの名無しさん:2005/10/06(木) 04:04:28
orz 整数リテラルだよ...
610デフォルトの名無しさん:2005/10/06(木) 04:12:54
>>602 jxelinkって何?
ぐぐるとSmartLinkerって言葉が出てくるんだけど、これってWebsphere専用の機能なんじゃないのか?
できればフリーなツールで似たようなのが有ればいいんだけど・・・
611デフォルトの名無しさん:2005/10/06(木) 07:55:37
>>606
(=゚Д゚)ノ Doja3.0以降対応のRPGツクールを作ってください
612デフォルトの名無しさん:2005/10/06(木) 10:22:53
>>611
それって今騒がれてるIRMではないのか?
613デフォルトの名無しさん:2005/10/06(木) 11:14:12
>>612
もうあったのかΣ('A`)

仕事で作るだけで自分じゃ遊ばないから既存アプリには
とことん疎いぜヽ('A`)ノ
614デフォルトの名無しさん:2005/10/06(木) 11:20:32
>>613
今は体験版しか公開されてない。

その後、機能はいろいろ追加されているようだけど…

詳しくは専用のスレみてごらん。
http://hobby7.2ch.net/test/read.cgi/appli/1124869042/l50
615デフォルトの名無しさん:2005/10/06(木) 13:04:56
ウィルコムのピッチもJava対応になったってなー。
ますます仕事が増えそうな悪寒。
ユーザー少なそうだけど。

ところで、あれってノーマルJavaなのか?
616デフォルトの名無しさん:2005/10/06(木) 14:30:04
詳細は判らんが拡張無しのMIDP2.0らしい。
すでにアプリ開発してるところはあるので資料があれば見てみたいけど・・・
617デフォルトの名無しさん:2005/10/06(木) 17:24:42
おまいら、がんばってくれ!


【java】emulators for docomo fps8【iアプリ】
http://hobby7.2ch.net/test/read.cgi/appli/1127819038/
618デフォルトの名無しさん:2005/10/06(木) 20:33:37
エミュ厨死ねクズ
619デフォルトの名無しさん:2005/10/06(木) 21:28:25
エミュレータ自体に罪はないんだが。
プログラマならもうちょっと落ち着け。エミュレータ作成は大抵のプログラマにとって挑む価値を感じる課題なはずだぞ。
620デフォルトの名無しさん:2005/10/06(木) 22:43:20
Winny並みに糞
621デフォルトの名無しさん:2005/10/07(金) 02:08:16
>>619 エミュ作成に価値を感じた事は一度もありませんが何か?
622デフォルトの名無しさん:2005/10/07(金) 03:12:14
>>604
Javaの場合はバイトコンパイル時の最適化より
JITコンパイルの方に力入れてる感じだからな。
携帯にJITコンパイラが載るのはいつだろう・・・
623デフォルトの名無しさん:2005/10/07(金) 08:33:50
>>619
大抵の職業ゲームプログラマにとって飯の種を奪うものですが('A`)
遊びでやってんじゃないんだよ!ヽ('A`)ノ
624デフォルトの名無しさん:2005/10/07(金) 11:11:44
エミュレータ=ゲームエミュ って考えしかないのかー。
625デフォルトの名無しさん:2005/10/07(金) 11:19:33
GBとかのソフトを携帯でやるんだろ?
ゲームエミュじゃねえか。
626デフォルトの名無しさん:2005/10/07(金) 11:28:46
まぁ落ち着け。
エミュレータ自体に罪は無いって話だ。
ゲームをエミュレートしようが、地球をエミュレートしようが、エミュレーションという事柄自体はプログラマをひきつける魅力があるだろ?

ここはプログラマが集まるスレなんだから、ゲームROMのコピーだのなんだのについては語らなくてもいいんでね?ってこと。
627デフォルトの名無しさん:2005/10/07(金) 11:55:49
628デフォルトの名無しさん:2005/10/07(金) 14:18:50
スレ違いもたいがいにしとけ
629デフォルトの名無しさん:2005/10/07(金) 16:50:17
902なんだが・・・とんでもない数出るそうだな・・・いまさらなんだが・・・。
先日のSAもきついのに・・・つうかいまだにどうするか悩み中
N、P、F、SH、Dの定番シリーズに
SA、SO、T、NM、Mの新シリーズが怖い・・・。

参考リンク
ttp://keitai-station.cdx.jp/foma902i.html
630デフォルトの名無しさん:2005/10/07(金) 23:21:15
>>627
その結果が、あのクズ端末の数々か…
631デフォルトの名無しさん:2005/10/08(土) 04:40:35
すみません、初心者質問です。
iアプリではNumberFormatクラスは使えないのでしょうか?
double 型の表示を小数2桁位で抑えたいのです。
どなたかご教授お願いします。
632デフォルトの名無しさん:2005/10/08(土) 05:24:44
できないんじゃないの?
java.text.*無いって言われるし
633デフォルトの名無しさん:2005/10/08(土) 08:54:47
>>631
使えない。
念のため言っとくとDoJa-4.0未満だとdouble型は使えない。
634デフォルトの名無しさん:2005/10/08(土) 12:48:46
>>632,633
レスありがとう御座います。
やっぱり無理なんですね。。困った
635デフォルトの名無しさん:2005/10/08(土) 14:21:07
>634
計算前に100倍しておいて、計算後に100で割った商と余り。
636デフォルトの名無しさん:2005/10/08(土) 17:58:28
String.splitも使えませんか?
637デフォルトの名無しさん:2005/10/08(土) 18:59:51
>>636
つ[CLDC API リファレンス]
638デフォルトの名無しさん:2005/10/09(日) 00:50:30
ありがとうございます
自前で実装なんですね…
639デフォルトの名無しさん:2005/10/09(日) 02:01:29
>>638
CLDCはJDK1.2までのAPIの一部しか入ってないと考えたほうがいいよ。
だからJDK1.3から入ったCollection APIもないし、JDK1.4で入った正規表現もない。
640デフォルトの名無しさん:2005/10/09(日) 13:30:31
シリアライズがないのがきつかったです(つД`)
641デフォルトの名無しさん:2005/10/10(月) 02:03:45
質問させてください.
imeOnがうまく動いてくれません.

どっかに書いてあったソースをパクって
public String inputString(String init, int displaymode, int inputmode) {
while (getKeypadState() > 0);
imeflag = true;
imestring = init;
imeOn(init, displaymode, inputmode);
while (imeflag) {
try {
Thread.sleep(200);
} catch (Throwable e) {
}
}

return imestring;
}

public void processIMEEvent(int type, String text) {
imestring = text;
imeflag = false;
}

こんな感じに書いてみたのですが,無限ループになってしまうのか,固まってしまいます.
while (imeflag)のところをコメントアウトすると今度はimestringがinitのままになってしまうようです.
どうすればいいのでしょうか.
エミュレータだとなぜか普通に動きます(コメントアウトしてもしなくても).
DoJa 4.0,N901iSを使っています.
642デフォルトの名無しさん:2005/10/10(月) 02:20:29
>>641
とりあえずimgflagをvolatileにしろ。
でも、それが原因じゃなさそうだがw
643デフォルトの名無しさん:2005/10/10(月) 08:45:00
sleepって呼ぶごとに加算されるとか?
いやスッドレ関係はよく知らんのだけど
644デフォルトの名無しさん:2005/10/10(月) 09:45:47
>>641
imeOnの呼び出しを次のものに書き換える。

final string myInit = init;
final int myDmode = displaymode;
final int myImode = inputmode;
new Thread() {
    public void run() { imeOn(myInit, myDmode, myDmode); };
}.start();

imeOnはエミュレータではブロック、実機では非ブロックという、なんかよくわから
ないことになってるから、こんな風にして強制的に非ブロック動作にしておいた方が
変なところで詰まらないで済むかも。
645デフォルトの名無しさん:2005/10/10(月) 14:00:01
>>642-644
返答ありがとうございます.
imeflagをvolatileにしてみましたが,どうもfalseになってくれないようです.
processIMEEventが呼ばれてないんでしょうか?
>>644のやり方だとwhile (imeflag)のところを残した場合は無限ループ,
コメントアウトした場合はなぜかぬるぽとか言われました.
強制的にブロッキングする方法はないんでしょうか?
646645:2005/10/10(月) 14:11:13
すみません,645は説明不足です.
imeflagがfalseになってくれないのは実機での場合です.エミュレータでは
falseになります.無限ループも同様です.
NullPointerExceptionはエミュレータで試した場合です.
これはノンブロッキングにしたことから発生しているようです.
647645:2005/10/10(月) 14:36:38
ループ作戦を諦めてShortTimerを使っていろいろ弄ってたらできました.
processIMEEventが呼ばれてないわけではなく,sleepの辺りが駄目だったのでしょうか.
お騒がせしました.
648デフォルトの名無しさん:2005/10/10(月) 23:19:00
固定少数点の扱い方とかString.splitがないとか
ちょっと工夫すれば自分で実装できるだろうに
しかもドキュメントに目をとおすこともしないなんて
最近レベル落ちてないか?

関係ないけど、先日サーバ側は他所に任せてる仕事で
アプリとのやりとりはバイナリでやるっていったら
>文字エンコーディングの指定が不明
とか言ってきやがったんで頭イタクなったよw
649デフォルトの名無しさん:2005/10/10(月) 23:50:58
むしろ携帯側は文字なんでもいけるしな。
650デフォルトの名無しさん:2005/10/11(火) 05:24:53
お前のチラシの裏じゃねえんだ
651デフォルトの名無しさん:2005/10/11(火) 07:17:14
ここは便所の落書きだしな
652デフォルトの名無しさん:2005/10/11(火) 09:50:26
>>648
UTF-8でいいのか?って確認じゃないのか?
653デフォルトの名無しさん:2005/10/11(火) 10:45:52
>>648
今も昔もレベルは高くない
654デフォルトの名無しさん:2005/10/11(火) 10:53:42
>>648
iアプリの仕事なんざ真面目にやってられない
655デフォルトの名無しさん:2005/10/11(火) 12:33:14
>>652
お前か!
656デフォルトの名無しさん:2005/10/11(火) 14:12:02
もうEUC-JPで統一でいいじゃん(´A`)
657デフォルトの名無しさん:2005/10/11(火) 14:20:14
SJISさいこー!
658デフォルトの名無しさん:2005/10/11(火) 14:25:24
>>648
「携帯はあんまりフォント積んでないからUTF-8やUTF-16,UCS2じゃ
 ダメ文字があるんでそ?だったらSJISにしましょうか?」
って確認されたんじゃネーノ。
サーバ側やってる人はドコモの特殊事情なんか知らないんだろうから、
ちゃんと教えてあげなよ。
659デフォルトの名無しさん:2005/10/11(火) 15:48:22
>>658
だからバイナリっていってるじゃ
660デフォルトの名無しさん:2005/10/11(火) 16:13:20
>>659
だからUCS2って言ってるじゃん・・・
661デフォルトの名無しさん:2005/10/11(火) 16:27:22
あれ?byte[]から文字列取り出すときのエンコーディング指定の話じゃないのか?
662デフォルトの名無しさん:2005/10/11(火) 17:05:17
俺もそう思ったんだが、どうやら
「ただのバイナリーデータで、文字列なんぞ存在しない」といいたいんじゃないかと思えた。
「テキストデータじゃないんだYO」って感じ?
663デフォルトの名無しさん:2005/10/11(火) 22:09:59
つまり説明不足な>>648>>648を招いた原因のひとつなんだろうな
664デフォルトの名無しさん:2005/10/12(水) 01:04:15
iアプリじゃなくて鯖側だけの仕事がときどきあるんだが、
>>648みたいなヴァカに当ったらどうしたらいいんだ?

PHPだとレスポンスヘッダをocter-streamにして吐けばいいのか?
tomcat使えれば簡単なんだろうけどな。
665デフォルトの名無しさん:2005/10/12(水) 02:49:18
664がまずやらないといけないのは、648みたいなのと根気よく
話し合って誤解がないようにすることだな。
666デフォルトの名無しさん:2005/10/12(水) 03:36:51
よっぽど割りが合わない限りは一緒に仕事したくないタイプ
667デフォルトの名無しさん:2005/10/12(水) 13:44:09
質問です。
iアプリではpixelGrabberクラスやMediaTrakkerクラスは使えないのでしょうか?
また代わりになるような物はありますでしょうか?
668デフォルトの名無しさん:2005/10/12(水) 22:28:59
開発ガイドやAPIリファレンスを1度でも読んだことあるか?
669デフォルトの名無しさん:2005/10/12(水) 22:38:34
PixelGrabberは無いなあ。
gif等のリソースから生成したわけでなく、Image#createImage(だっけ?)で作ったImageに
別Imageの指定領域を描画することはできるので、そっちで代用するのはどうだろう。

MediaTrackerは無い。
MediaListnerのコールバックとうまく同期しよう。
あまり密に同期しようとすると、端末ごとにVMのクセがバラバラなので、めちゃくちゃ地雷踏むけど。
670デフォルトの名無しさん:2005/10/13(木) 17:21:15
>>668
読んでたらここで聞かない罠
671デフォルトの名無しさん:2005/10/14(金) 17:13:02
質問です。

N504のように、currentTimeMilisの時間解像度と、ShortTimerの時間解像度が違うマシンがあるわけですが、
currentTimeMillisの時間解像度はどうやればとれるのでしょうか?
ShotTimerはgetResolutionでとれるのですが…。
672デフォルトの名無しさん:2005/10/14(金) 21:17:25
>>671
とれない
673デフォルトの名無しさん:2005/10/14(金) 21:44:17
IアプリからサーバーにPOSTでテキストデータと写真データを同時に送りたいんだけど、
どうやるか教えてください。
674デフォルトの名無しさん:2005/10/14(金) 22:42:25
>>671
無事に取れることを祈れ

long getCTPeriod()
{
long v1 , v2;

v1 = System.currentTimeMillis();
while( v1 == System.currentTimeMillis() );
v1 = System.currentTimeMillis();

while( true )
{
v2 = System.currentTimeMillis();
if( v2 != v1 ) break;
}

return v2 - v1;
}
675デフォルトの名無しさん:2005/10/15(土) 08:57:44
>>674 ここって最初の1行だけでよくない?なんで繰り返してんの?

>v1 = System.currentTimeMillis();
>while( v1 == System.currentTimeMillis() );
>v1 = System.currentTimeMillis();
676デフォルトの名無しさん:2005/10/15(土) 16:04:45
>>675
値取得だけならそうなのかも。てことはこんな感じでよくね?

long getCTPeriod()
{
long v1;

v1 = System.currentTimeMillis();
while( v1 == System.currentTimeMillis() );
return System.currentTimeMillis() - v1;
}
677デフォルトの名無しさん:2005/10/15(土) 17:28:13
センターにメールがあることをチェックするにはどうすればいいのでしょうか?
PhoneSystem.getAttribute(PhoneSystem.DEV_MAILBOX)
がPhoneSystem.ATTR_MAIL_AT_CENTERであるかどうかを調べればいいのかと
思ったのですが、この方法だとエミュレータではうまくいくのですが実機だと
うまくいっていないようです。
この方法ではセンターに届いているメールはチェックできないのでしょうか?
678デフォルトの名無しさん:2005/10/15(土) 18:35:38
>>677
トラステッドアプリじゃないとその機能使えません
エミュレータでは動くけどね
679677:2005/10/15(土) 18:42:25
まじっすか
ありがとうございました
680デフォルトの名無しさん:2005/10/15(土) 20:06:35
iアプリのSSL通信で困っています。
P505iS で https(SSL)上で
マルチパート形式のレスポンスが返るPOSTリクエストを
送信( connect() )しますと、
ConnectionException.SSL_ERROR が発生してしまいます。

P505iS以外の機種では発生しません。

こんな経験ある方、いらっしゃいますか。
681デフォルトの名無しさん:2005/10/15(土) 20:07:23
iアプリのSSL通信で困っています。
P505iS で https(SSL)上で
マルチパート形式のレスポンスが返るPOSTリクエストを
送信( connect() )しますと、
ConnectionException.SSL_ERROR が発生してしまいます。

P505iS以外の機種では発生しません。

こんな経験ある方、いらっしゃいますか。
682デフォルトの名無しさん:2005/10/15(土) 20:08:16
>マルチパート形式のレスポンス
のデータサイズは?(Contents-Length)
683デフォルトの名無しさん:2005/10/15(土) 22:48:48
681です。
>のデータサイズは?(Contents-Length)
サーバーでContents-Lengthは設定していないのです。
POSTリクエストがあったということは、サーバーにログが残っているということですね?
684デフォルトの名無しさん:2005/10/16(日) 00:54:07
>>673
ちょうど、漏れも同じ事を調べてた。
これぐぐってみ。
つmultipart/form-data
685デフォルトの名無しさん:2005/10/16(日) 03:51:46
>>673,684
てゆっか、サーバサイドの仕様による。
サーバサイドも自分でつくるなら、わざわざmultipart/form-dataなんて仕様にのっとらなくても
適当にプロトコル決めて勝手におくっちゃえばいいよ。
たとえば
1バイトめ: テキストのサイズ
2バイト目: 画像のサイズ
3バイト目以降: テキストデータ
(テキストのサイズ) + 2バイト目以降: 画像データ
みたいな感じで。

サーバサイドがmultipart/form-dataをうけとめるように作られちゃってるなら、
もちろんそれにのっとって送る必要はあるけど。
686デフォルトの名無しさん:2005/10/16(日) 10:36:54
681,683です。
サーバのログをみたところ、P505iSだけHTTP/1.0 他の正常な機種はHTTP/1.1 という違いはありました。
687デフォルトの名無しさん:2005/10/17(月) 10:38:50
ビルドして起動し、操作すると
「java.lang.RuntimeException: openFlag」
というメッセージが出て、アプリが終了します。
どうしてなのでしょうか?教えてください。
688デフォルトの名無しさん:2005/10/17(月) 11:04:58
>>687
すまんが日本語でしゃべってくれないか?
689デフォルトの名無しさん:2005/10/17(月) 11:14:30
>>688は理解力が足りないようだな。

>>687
アプリが終了する原因は
「java.lang.RuntimeException: openFlag」
が出てるからだったんだよ!!!
690デフォルトの名無しさん:2005/10/17(月) 12:48:29
たんたんとtry catch
691デフォルトの名無しさん:2005/10/18(火) 11:56:15
iアプリ初心者です。
getPixelsで配列化したデータをイメージに戻したいのですが良い方法ありますか?
692デフォルトの名無しさん:2005/10/18(火) 12:35:05
解決しますた
693デフォルトの名無しさん:2005/10/18(火) 17:44:28
解決したのならどうやったか書いてくれると、次に同じ疑問を持った人が助かる。
694デフォルトの名無しさん:2005/10/19(水) 00:33:26
まぁsetPixelsっていうそのままのメソッドがあるわけだがw
695デフォルトの名無しさん:2005/10/19(水) 02:29:35
ですな。
696デフォルトの名無しさん:2005/10/19(水) 10:15:01
>>689
「java.lang.RuntimeException: openFlag」 が
出る原因は何なんでしょうか?
697デフォルトの名無しさん:2005/10/19(水) 10:25:06
イメージの反転を行うsetFlipMode()メソッドの回転の中心は
イメージの中心なのでしょうか?
また、イメージの拡大縮小を行うdrawScaledImage()の拡大縮小の
基準点はどこなのですか?
教えてください。
698デフォルトの名無しさん:2005/10/19(水) 10:33:22
>>697
なぁ。一度でもいいからエミュレータで動かせよ。な?
699デフォルトの名無しさん:2005/10/19(水) 11:53:46
>>697
APIリファレンス読んで判らないならここで言っても判らない。
つうか、基準点なぞ存在しない。

読んでわからないなら、作って動かせ。
700デフォルトの名無しさん:2005/10/19(水) 12:02:53
>>696
>>687なんだろうが・・・あれだけの情報で判る奴なんて居ない。
起動して落ちるとか書いてるけど、起動してどこで落ちてるかぐらい調べろ。

なんとなく>>697も同一人物くさいな・・・。
まずはテンプレにあるサイト回って基本となるソースの構築から勉強しろ。
いわゆる土台となるスケルトンが作れないのに画像描画とかはまだ早い。
701デフォルトの名無しさん:2005/10/19(水) 13:03:17
サウンドについて質問です。
波形データのMFiとMIDIっぽいMFiの二種類があると
思うのですが、波形データのMFiを複数同時再生することは
可能でしょうか?

702デフォルトの名無しさん:2005/10/19(水) 14:01:56
ピクセルのRGBの値をとりたいのですがgetColorOfRGBの使い方の例を見てみたりすると、
色を直接指定してしまっていて肝心の値をとれていないようなのですが他に方法があるのでしょうか?
703デフォルトの名無しさん:2005/10/19(水) 15:01:58
>>702
もう少し分かりやすい日本語で。
とるならgetPixelがあるはずだが。
704デフォルトの名無しさん:2005/10/19(水) 16:32:34
>>702
お前はgetColorOfRGBを何だと思ってるんだ。
「これはこういう機能の筈だ」っていう先入観を捨ててからリファレンスを読め。
705デフォルトの名無しさん:2005/10/19(水) 18:06:53
エミュだけでやってた時代getPixelとgetRGBPixelの
違いに気付かなかった俺が居るw
いざ実機で動かしてみた時に焦ったもんだw
706デフォルトの名無しさん:2005/10/20(木) 00:24:45
902iきたー(棒読み)

http://npaka.yoko.ne.jp/bench/bench.jsp
SHがなんか爆速に見えるんだがどうよ。
707デフォルトの名無しさん:2005/10/20(木) 01:09:45
かえって性能が上がりすぎると恐いね。
家ゲーと同じ運命を辿りそうで…
708デフォルトの名無しさん:2005/10/20(木) 06:50:39
>>707 同意

解像度なんか GBAよりすでに上だったりするしなァ
709デフォルトの名無しさん:2005/10/20(木) 11:12:40
そのうちVGAになるようだw
http://k-tai.impress.co.jp/cda/article/event/26159.html
710デフォルトの名無しさん:2005/10/20(木) 15:30:43
おいおい504→505の画面テラチイサス再来か!?
711デフォルトの名無しさん:2005/10/20(木) 15:34:56
しかしVGAになったらアプリでの使用容量が単純計算で4倍必要に
なるって事だよな

しばらくは無理か?
712デフォルトの名無しさん:2005/10/20(木) 15:44:52
画像はでかい方が圧縮がかかりやすい傾向にあるから意外と小さくなる
713デフォルトの名無しさん:2005/10/20(木) 16:28:41
質問です。

実機に対応していない機能、例えばDoja3.0のカメラ機能を使う処理がアプリ内にある場合、
それをDoja3.0以前の504iなどで実行するとその処理は無視されるのでしょうか?
それともエラーで落ちるのでしょうか?
714デフォルトの名無しさん:2005/10/20(木) 21:10:02
実行時例外。
715デフォルトの名無しさん:2005/10/20(木) 21:28:46
駄目だ。。。1人では解決できません。助言お願いします。

Win2000 eclipse Ant で 900用のプログラムを製作中です。
spsize 409600 にして run したら Image.use 中に
Uncaught exception java/lang/OutOfMemoryError
というエラーがeclipseコンソールに表示され、強制終了する様になってしまいました。

検証したのですが、
spsize 204800 だと、エラー落ちせず、
spsize 307200 だと、2画像だけ use出来て、3画像目の useでエラー落ちします。
spsize 409600 だと、1画像も useが実行出来ずエラー落ちします。
どうやれば解決するのでしょうか?

よろしくお願いします。
716715:2005/10/20(木) 21:44:03
すいません。
書き忘れました。
読み込んでいる画像は全て gif です。
717715:2005/10/20(木) 21:54:48
解決しました。

ttp://cgi.sinsen.org/bbs.cgi?start=1079
> スクラッチパッドを使う場合は"scratchpad:///0;pos=1024,length=512"などと
> アクセスする場所と長さを指定するとメモリ消費が若干改善されると思います。

これ試したら、嘘の様に動き始めました。
エミュレーターのメモリ不足だった様です。

お騒がせしてすいませんでした。
ああ、、、今日1日の悩みは何だったんだろうか、、、
718デフォルトの名無しさん:2005/10/21(金) 02:11:07
719702:2005/10/21(金) 03:39:10
レスありがとうございます。
g.getRGBPixels(0,0,w,h,pix,0)
などで画像のピクセルの抽出処理をするとします(wとhは画像の幅と高さ)
それで例えばネガポジ反転したい場合、ピクセルごとに255からrgbそれぞれの値を引けば
実現出来るのは分かりますが、その肝心のrgbの値が何処に格納されてるかが分かりません。
もの凄い検討違いな事言ってるかも知れませんがよろしくお願いします。
720デフォルトの名無しさん:2005/10/21(金) 04:18:58
>>719
引数の pix は何だ?
721デフォルトの名無しさん:2005/10/21(金) 05:10:08
すいません、pixはw*hの長さを持つピクセルを入れる配列として用意してみました。
722720:2005/10/21(金) 06:07:22
>>721
いや、だからさw
そのpixに入る値があんたの求める「rgbの値」だろ、って言ってんの
723デフォルトの名無しさん:2005/10/21(金) 09:56:41
>>702
なあ、APIリファレンス読んでるか?それともどこかのサイトか本を読んでるのか?
APIリファレンスに「色を0xRRGGBBの形式で取得します」って書いてあるのが読めない?
それとも日本語が理解できない?
16進数とか、ビット演算とか知ってるか?知らないとRGBを取り出せないぞ?
724デフォルトの名無しさん:2005/10/21(金) 10:41:25
レスありがとうございます。日本語理解出来てませんでした…
今度からちゃんとAPIリファレンス読むようにします。
725デフォルトの名無しさん:2005/10/21(金) 10:54:55
って事は読んでないと?
726デフォルトの名無しさん:2005/10/21(金) 11:24:24
最低限の事をやってから質問するように
727デフォルトの名無しさん:2005/10/21(金) 12:06:57
すみません、iアプリでWindowsで言うところの
PostMessage相当のメソットはありますでしょうか?
728デフォルトの名無しさん:2005/10/21(金) 14:16:48
>>718
大画像の方がヘッダ分の誤差が小さくなるから間違ってはない
729デフォルトの名無しさん:2005/10/21(金) 16:14:54
>>727
そもそもメッセージなんか飛んでない。
何をしたいんだ?
730727:2005/10/21(金) 16:48:10
>>729
できればprocessEvent()へメッセージを集中させて、
イベント管理を行いたかったのですが。
SendEvent≒progressEventを直接呼ぶとした場合、
PostEventに相当するメソットが有るといいなぁと思いまして。
731デフォルトの名無しさん:2005/10/21(金) 17:42:14
漏れは直接processEvent()呼んでるw
732デフォルトの名無しさん:2005/10/21(金) 20:36:24
>>730
俺も>>731と同じ。
だが非同期にしたいのであれば、自分でSTACKを作ってPUSHし、メインループを抜けたところでPOP&直呼びすればいいと思われ
733デフォルトの名無しさん:2005/10/21(金) 20:37:56
なんか、最近の質問はすべて>702がしてるんじゃないかって気がしてきたよ・・・
もしそうだとすると、いったい何を作ろうとしてるんだろう?
734デフォルトの名無しさん:2005/10/21(金) 23:25:39
質問するのはいいんだが、書き込む前に深呼吸とAPIリファレンスの読み直しをお願いしたい気持ちだ。
735デフォルトの名無しさん:2005/10/21(金) 23:50:16
DoJa4.1情報+4.0機種依存情報キター
736デフォルトの名無しさん:2005/10/22(土) 02:03:05
外部SP読み書きってキモいね。
737デフォルトの名無しさん:2005/10/22(土) 13:25:39
はいはい、誰か4.0→4.1の変更点まとめといてね。
PDFをDoJa 4.1か何かで検索すれば良かったはず。
738デフォルトの名無しさん:2005/10/24(月) 10:07:25
・0が1になった
739デフォルトの名無しさん:2005/10/24(月) 13:38:45
はいはいわろすわろす
740デフォルトの名無しさん:2005/10/24(月) 16:13:53
SDカードがスクラッチパッド代わりに使えるようになった
741デフォルトの名無しさん:2005/10/24(月) 16:46:39
Pだけな…
742デフォルトの名無しさん:2005/10/24(月) 21:55:01
ファイルシステムマダァ?
階層を表現するのマンドクセ
743デフォルトの名無しさん:2005/10/25(火) 01:44:44
ファイナルシステム承認!!!
744デフォルトの名無しさん:2005/10/25(火) 09:03:56
何の階層だ?
ファイルシステムは管理(分類)のし易さから木構造に
なってるけど、iモードじゃいらないだろ?
745デフォルトの名無しさん:2005/10/25(火) 15:47:54
質問です。
CanvasとPanelを切り替えて使うアプリを作っているのですが、
Canvasでいろいろ表示した後、Panelに切替、再度Canvasに切り替えた時、
デフォルトのCanvasに戻ってしまいます。
Panelに切替る前のCanvasを表示させるにはどうすればいいんでしょうか?
746デフォルトの名無しさん:2005/10/25(火) 16:07:25
>>745
過去ログ読め
747デフォルトの名無しさん:2005/10/25(火) 16:34:09
32のサイトで解決しました、すいませんorz
748デフォルトの名無しさん:2005/10/25(火) 17:06:06
Javaってnewの意味も知らないで書けるのか。凄いな・・・
749デフォルトの名無しさん:2005/10/25(火) 21:50:54
脈絡もなくnewの話をして、何を一人で感心してるんだ?
750745:2005/10/25(火) 23:23:24
ttp://appli-style.com/technique/bug/bug_02.html
これが原因なのかと思ったんですが、違うみたいですorz
751デフォルトの名無しさん:2005/10/25(火) 23:40:28
CanvasをPanelから戻るたびにnewして作り直してるからではなく?
752デフォルトの名無しさん:2005/10/25(火) 23:52:56
>>745
Panelから戻ってくる時に、Display.setCurrentにデフォルトのCanvasを指定しているとか?
Panel⇔Canvasはこのスレの505近辺で話題に出てるぞ。
もっとも参考にならんかもしらんけどな。

そして俺は今から901シリーズですら描画遅れの出るクソソースをリファクタングさorz
こんなソースばっかり書いてるから成長しねぇんだ、俺。
753デフォルトの名無しさん:2005/10/26(水) 00:26:15
>>751
作り直してはいないです。

>>752
あー、それっぽいです…
Display.setCurrentにデフォルトのCanvas指定してます。
どう直せばいいんでしょうか?

このスレは一通り目を通したので、505〜も読んだんですが、
最初の段階でパネルもキャンバスも生成してるので、そこら辺は大丈夫だと思います。
754デフォルトの名無しさん:2005/10/26(水) 00:44:48
切替部分のソースのせてみそ
755>>745:2005/10/26(水) 00:48:42
そもそも「デフォルトのCanvas」の意味がわからない。何のことだよ。

CanvasをPanelに換えて、再びCanvas(元と同じオブジェクト)に換えるんだよな。
で、そのときのCanvasがどうかなってて驚いてるんだよな。
具体的にどうなってるんだ?何に驚いてるんだ?そこを書かなきゃわからんよ。
756755:2005/10/26(水) 00:49:42
>>755の名前欄間違えた。
>>745に宛てたレスってことで。
757デフォルトの名無しさん:2005/10/26(水) 01:25:01
確かにわかりにくかったですね、すみません。
キャンバスとパネルは1つずつです。
あくまで切替を学ぶためのアプリで内容はあまりないんですが、
キャンバスに初めに■を描画させていて、ボタンを押すことで他にも●などを描画します。
パネルに移動し(特に処理はしません)、再度キャンバスに戻ると初めに描画させた■だけが表示されています。
これをパネルに移動する前のように、●などを表示させた状態で表示させたいんです。

>>754
キャンバスからパネルに移動する時は、
Display.setCurrent(((test)IApplication.getCurrentApp()).MyCanvas);
パネルからキャンバスに移動する時は、
Display.setCurrent(((test)IApplication.getCurrentApp()).MyPanel);
です。
758755:2005/10/26(水) 01:38:34
>>757
そういうことか。
Panelから(元の)Canvasへ切り替えても画面内容は保証されないよ。
自分で画面全体を再描画する必要がある。変数の値は保持されている。

他にも例えば電源ボタン押して一時中断して(ダイアログが出る)、
ダイアログをキャンセルしてアプリの画面へ戻ったときも画面内容は保証されない。
自分で再描画する必要がある。これは開発ガイドにも書いてある。
759デフォルトの名無しさん:2005/10/26(水) 02:45:36
>>758
なるほど、そうなんですか。
みなさんありがとうございました。
760デフォルトの名無しさん:2005/10/26(水) 21:07:01
失礼します。
iアプリでその携帯の固有番号を収得する事は可能なのでしょうか?
761デフォルトの名無しさん:2005/10/26(水) 21:30:13
http://www.nttdocomo.co.jp/p_s/imode/java/caution.html

> N900i(S)に搭載されているKVM では、Java ヒープ上に発生したフラグメント(未使用領域の断片)を
> システム側で回収、結合するヒープコンパクション機能がサポートされていません。

> P900i(V)に搭載されているKVM では、Java ヒープ上に発生したフラグメント(未使用領域の断片)を
> システム側で回収、結合するヒープコンパクション機能がサポートされていません。

なめとんのかオンドゥルァー
762デフォルトの名無しさん:2005/10/26(水) 22:14:50
>>760
無理。あと取得しても意味ない。自分で乱数作れば良い
763デフォルトの名無しさん:2005/10/26(水) 22:28:05
>>761
流石NECクオリティ。全然直す気無いのな。
764デフォルトの名無しさん:2005/10/27(木) 00:14:59
>>761
お前、何をいまさらw
さんざここで対策会議が開かれたぞ。
765デフォルトの名無しさん:2005/10/27(木) 00:39:37
iモード絵文字の外字ファイルって公式にはないのでしょうか?
766デフォルトの名無しさん:2005/10/27(木) 00:55:02
>>765
エミュレータをインストールする時に設定できるんだから、あのどこかにあるんじゃないの?
767デフォルトの名無しさん:2005/10/27(木) 03:35:36
公式にある絵文字入力ソフトを起動すると「外字ファイルのパスを指定して」とでるのですが、
その絵文字入力ソフトのフォルダの中にdocomo.tteがありました。
なぜ手作業か意味不明。
768デフォルトの名無しさん:2005/10/27(木) 19:54:14
Dojaプロファイルバージョン番号は取得できないのでしょうか?

作成中のアプリにアプリ連携機能を追加したいのですが、
Doja3.0未満のユーザがやってしまうとエラーで落ちそうなので判定したいのです。
System.getProperty("microedition.platform");でしこしこやるしかないんでしょうか
769デフォルトの名無しさん:2005/10/27(木) 20:07:56
>>768
APIリファレンス読んで無いんなら無いんじゃね?
少なくとも俺は聞いたこと無いし。

逆にADFに動く端末を設定できるから、そっちでやるといいかも。
770デフォルトの名無しさん:2005/10/27(木) 20:35:45
ちゃんとあるよ。

エラーで落ちるならClass.forName().newInstance()を使ってtry catch。やったことないけど。
771デフォルトの名無しさん:2005/10/27(木) 21:02:36
System.getProperty("microedition.prodiles")
書き忘れたorz
772デフォルトの名無しさん:2005/10/27(木) 21:04:44
×System.getProperty("microedition.prodiles")
○System.getProperty("microedition.profiles")
もう(ry
773768:2005/10/27(木) 22:58:00
ありがとうございます。
当方手持ちのSH505i(Doja3.0)で実行したところ、
なぜか "DoCoMoProfile-2.0" と表示されました。あまりあてにならない値なのかな
774デフォルトの名無しさん:2005/10/27(木) 23:23:25
ちょっとまて、そんな馬鹿なw
775768:2005/10/27(木) 23:56:53
public static String profile = "";
 (中略)
profile = System.getProperty("microedition.profiles");
 (中略)
menu_panel.setTitle("メニュー:" + profile);

これで出ました。
776デフォルトの名無しさん:2005/10/28(金) 00:06:35
>>761
これって長時間アプリを動かし続けるとメモリ不足でぬるぽ?
回避策ってどうしようもないの?
777デフォルトの名無しさん:2005/10/28(金) 00:12:08
コンパクションはしなくても、再利用はするだろ。
778デフォルトの名無しさん:2005/10/28(金) 00:39:04
>>774
SH505は知らんけど、SO505iならDoCoMoProfile-2.0て返してくれるのを確認したぜ
779デフォルトの名無しさん:2005/10/28(金) 00:40:12
>>770
floatを使っていたら、N506はダウンロードすら拒否されるのをおまいは知らないな
780デフォルトの名無しさん:2005/10/28(金) 00:58:13
そもそも、Class.forName()して、newInstance()した後どうするんだよ。
Methodクラスもないというのに:-)
781768:2005/10/28(金) 01:03:15
やっぱり
System.getProperty("microedition.platform");
でDoja3.0未満の機種名を全て判定するしかないようですね
782デフォルトの名無しさん:2005/10/28(金) 01:35:47
N503ではInteger.parseInt("")で例外を投げる前に落ちる?
初回起動時にスクラッチパッドにreadUTFしたらまずい。


みたいな初心者の頃のメモを発見した。
783デフォルトの名無しさん:2005/10/28(金) 03:55:54
ダウンロード時に振り分けろっつーの
784デフォルトの名無しさん:2005/10/28(金) 04:15:15
アプリ連携機能だけoffにしたいんじゃないの?
ADFで動作機種限定するのはどうかと思うが
機種ごとにアプリつくり分けるのも面倒だしな
785デフォルトの名無しさん:2005/10/28(金) 07:06:38
503ではread〜がうまく行かない機種があったような。
代わりにInputStream.readでnew Stringとか。
全部数値とかフラグはintとビット演算子でちまちまやってた頃が懐かしい。
786デフォルトの名無しさん:2005/10/28(金) 15:08:04
>>760
phone.getproperty(phone.terminal_id)とかでできね?うろ覚えなんでぐぐれ
787デフォルトの名無しさん:2005/10/28(金) 16:55:54
>>786
String sTerminalId = Phone.getProperty(Phone.TERMINAL_ID);
とかだな。

これで端末固有のIDは取れる。
ちなみに電話番号は無理。
788デフォルトの名無しさん:2005/10/29(土) 00:12:29
>>784
あぁ、以前話題になったが、
ADFの機種限定は判定ルーチンが腐ってるからやめたほうがいい
789デフォルトの名無しさん:2005/10/29(土) 01:07:19
レンタル鯖のアクセスログみたら504iが0.1%しかなかった
もう切り捨てていいかいな
790デフォルトの名無しさん:2005/10/29(土) 03:03:18
いいよ
791デフォルトの名無しさん:2005/10/29(土) 19:55:56
もう捨ててるほうが多いだろ
792デフォルトの名無しさん:2005/10/29(土) 20:43:56
ゲーム類なんかは、今でも新作で504対応のものが出てて
かえってビビらされるな。
793デフォルトの名無しさん:2005/10/29(土) 21:09:02
504iで動くようなものは505i以降じゃフリーズしそうだw
794デフォルトの名無しさん:2005/10/29(土) 22:51:33
しかし、ずいぶんと遠くに来たものだな。
N503iのタイマ精度に怒り狂ってた頃が懐かしい。
795デフォルトの名無しさん:2005/10/29(土) 23:52:19
>>786さん、>>787さん、ありがとうございます!
無事IDを収得する事が出来ました!
796デフォルトの名無しさん:2005/10/30(日) 01:29:55
>>794
これから何処に行くのかが、段々心配にはなってきましたけどね。
505時代が一番良かったのかな。
797デフォルトの名無しさん:2005/10/30(日) 02:42:58
505の画面サイズはでかいのにあちこちの容量が足りない時代に
また戻りたいってのか?

これからしばらくは901のスペックがハイエンドで固定でしょ。
アプリ作って売る側にしても、制作期間が延びた癖に
アプリの値段がほとんど変わってないから、
これ以上容量とか増やされても商売として割りに合わないだけだし。
798デフォルトの名無しさん:2005/10/30(日) 11:02:21
まったくだ。
その点では505が良かった。
今は「通信で画像とってくればいいでしょ。定額制なんだから」とか言われる。ふざけんな。
799デフォルトの名無しさん:2005/10/30(日) 14:43:29
ばあさんがふともも出すなよw
800デフォルトの名無しさん:2005/10/31(月) 13:32:21
>>799 15分くらい必死で考えたけど、どういう例えなのか解らなかったヨ
801デフォルトの名無しさん:2005/10/31(月) 13:38:55
エミュレータで動いて実機で動きません・・・
dojaです。
802デフォルトの名無しさん:2005/10/31(月) 13:58:34
>>800
・ふとももちらり>つい見てしまう>ばぁさんにがっかり
・新機能追加>何も知らない上層部が食いつく>作成部ガッカリ

>>801
愛がないと動きませんよ
803デフォルトの名無しさん:2005/10/31(月) 14:32:55
Dojaエミュレータってビルド設定でバージョン指定できるのね。
でも指定できるバージョン中途半端すぎ。
804デフォルトの名無しさん:2005/10/31(月) 14:46:20
>>801
ヒロシネタ秋田
805デフォルトの名無しさん:2005/10/31(月) 14:48:49
>>801
dojaです・・・
実機でサポートしてないAPIあるかもとです!
dojaです・・・
バージョンの確認しましたか・・・?
dojaです・・・
実機の独自仕様とかもあるとです・・・他の実機でも試すとです
dojaです・・・
ロクなレスが返せません!

dojaです・・・
dojaです・・・
dojaです・・・
806デフォルトの名無しさん:2005/10/31(月) 16:45:38
>>805
お前、心底優しいな
807デフォルトの名無しさん:2005/10/31(月) 16:57:40
>>805
優しい奴から死んでいく・・・
生き延びたかったら気をつけることだ、坊や。
808デフォルトの名無しさん:2005/11/01(火) 20:03:00
iアプリから設定できるカメラの静止画サイズ、普通にカメラ機能で設定できるサイズと
違うと言うのは聞いていたが、640×480すら選択できないのか。
505で640×480設定出来るから、FOMAの機種でも出来るもんだと思っていたよ。
809デフォルトの名無しさん:2005/11/01(火) 20:07:09
文字サイズから何も学ばないドキュモちゃん
810デフォルトの名無しさん:2005/11/01(火) 20:20:27
おまいら、iアプリを今から
作る勉強をしているおれに協力してくれ。
javaとかいう言語を使うのはわかったお


具体的にどういうもんが必要なのかお
ぐぐったら「市販の本を買って付属のCDからインスコ」
とか書いてたけど・・・


おすすめの本とかあるかい?
811デフォルトの名無しさん:2005/11/01(火) 20:23:58
>>810
DoCoMo公式見れば分かるが
812デフォルトの名無しさん:2005/11/01(火) 20:29:00
>>810
ありがとう!
ヴざったらしいかも知んないけどまた質問に来ます
813デフォルトの名無しさん:2005/11/01(火) 20:30:01
お前は本買ってないのかと
814デフォルトの名無しさん:2005/11/01(火) 20:40:55
>>813
金が出来次第買います。ご迷惑をおかけします。

java2 SDK Standard EditionのDLの具体的な場所がわからなく、困っています。
わが社の本を買えというSUNの陰謀でしょうか?

http://java.sun.com/j2se/1.4/ja/
↑ここからだとどういけばDLページに着くのでしょうか?
辞書と睨めっこしてましたが無理です・・・
815デフォルトの名無しさん:2005/11/01(火) 21:00:20
ここの住人は何故か質問にはとても冷たいけど的確なレスを返してくれるよ。ガンガレ。

と言う訳でまず本を買ってからにしろ。
816デフォルトの名無しさん:2005/11/01(火) 21:01:08
>>814
まずはそのページ右側に注目してみようか
817デフォルトの名無しさん:2005/11/01(火) 21:08:54
一瞬で見つかるな。
818デフォルトの名無しさん:2005/11/01(火) 21:10:50
やばい、すげぇ釣られそうw
819デフォルトの名無しさん:2005/11/01(火) 22:49:18
>>815
ありがとうございます。
>>816
見てみます。
>>818
マジでわからない俺・・・
820デフォルトの名無しさん:2005/11/01(火) 22:52:29
その次のページで
「NetBeans IDE + J2SE SDK」と「J2EE 1.4」
の絵を見てカッコイイと思った方をダウンロードすればOK
821デフォルトの名無しさん:2005/11/01(火) 22:58:51
とりあえず進行状況かいときますね(上から下へ行っています)
http://java.sun.com/j2se/1.4/ja/
http://java.sun.com/j2se/1.4.2/download.html
http://java.sun.com/j2ee/1.4/download.html#sdk
どれかわからなすwwww
とりあえずJ2EE 1.4 SDK and Sun Java System Application Server Platform Edition 8.1 2005Q2 UR2
とかいう所のAll-In-One BundleのDLをクリック
https://sdlcweb3a.sun.com/ECom/EComActionServlet;jsessionid=DEE04947C9F103AED91B09C82D78B47D
????wwwww
Linux Platform - J2EE SDK 1.4_02-2005Q2 UR2 FCSでも
やってみるJ2EE SDK 1.4 UR2, Multi-language ?
マルチ言語?英語以外だから日本語なのかもな・・・クリック


進めないorz


どうみてもバカです。本当にありがとうございました。
822デフォルトの名無しさん:2005/11/01(火) 23:05:33
j2eesdk-1_4_02_2005Q2-windows-ml.exe
色々やってたらこの様なものをDLしましたが実行してもよかですか?
WINですよスペック
823デフォルトの名無しさん:2005/11/01(火) 23:11:05
>>822
それ入れたらPC爆発
824デフォルトの名無しさん:2005/11/01(火) 23:45:01
>>822
「Java 導入」で適当にぐぐったら見つけたページ
ttp://blue.sakura.ne.jp/~starlightparade/Jstart.html
画像入りでそれなりに親切にかいてある。
ただし、落とすのは「J2SE JRE」じゃなくて「J2SE SDK」の方な。
これでダウンロードとインストールはなんとかなるはずだ、がんがれ。
825デフォルトの名無しさん:2005/11/02(水) 00:48:51
その次はNoClassDefFoundExceptionだな。
826デフォルトの名無しさん:2005/11/02(水) 10:45:55
ところでJDK1.3でなくていいのか?俺はとりあえず1.3にしてるんだが・・・
827デフォルトの名無しさん:2005/11/02(水) 10:52:46
>>822 ほらよ
1.http://java.sun.com/j2se/1.4.2/ja/download.html
2.「J2SE v 1.4.2_10 SDK」 の「J2SE SDK のダウンロード」
3.Acceptをチェック
4.j2sdk-1_4_2_10-windows-i586-p.exe をDL

めんどくせーことさせんな。このヴぉけくぁwせdfrtgyふじこp@
828デフォルトの名無しさん:2005/11/02(水) 11:55:10
1.4じゃダメだろ。
推奨は1.3だ
829デフォルトの名無しさん:2005/11/02(水) 13:40:39
動作確認したのが1.3で実際には1.4でも問題無く動いてる。
1.5は駄目なんだっけ?
830デフォルトの名無しさん:2005/11/02(水) 14:13:43
保証されてるのは1.3。
漏れは普通に1.5使ってるけど、いわゆるひとつの自己責任という奴。
831デフォルトの名無しさん:2005/11/02(水) 14:43:36
http://java.sun.com/j2se/1.3/ja/download.html

1.3はsunのサポートが2006年3月30日までで、その先は恐らくダウンロードもできなくなると思う。
ドコモはエミュレータとかの動作を1.4で保証してくれるようになるだろうか。
832デフォルトの名無しさん:2005/11/02(水) 14:44:49
1.3はここからだな

1.http://java.sun.com/j2se/1.3/ja/download.html
2.SDKの方のダウンロードをクリック
3.Acceptをチェック
4.j2sdk-1_3_1_16-windows-i586.exeをDL
833831:2005/11/02(水) 14:46:20
いや、古いバージョンでもダウンロードはできるようだな、失礼。
過去のバージョン履歴が閲覧できてダウンロードページへもジャンプできた。
834デフォルトの名無しさん:2005/11/02(水) 16:03:10
>>810
市販の本には、ろくなのがないから買わん方がいい。
835デフォルトの名無しさん:2005/11/02(水) 16:23:17
市販じゃないロクでもある本とやらを見てみたいもんだ。
836デフォルトの名無しさん:2005/11/02(水) 16:33:24
少なくともDoJa-4.0のドキュメント(DevGuide.pdf)には
J2SE SDK 1.3.1〜1.4.2 で動作保証するって書いてあるにょ
837デフォルトの名無しさん:2005/11/02(水) 17:45:22
>>823
爆発するですか・・・ リカバリしたばかりなのにそれはやんだ。
>>824
ありがとうううみてみるお・・・
他の方たちのもみてからきめるお
>>825
そういえば立ち読みで見たjava参考書にclassとかかいてました
>>826.829
最新バージョンでは色々ちがうのですね・・・
>>827
ありがとうございますww
色々とすみませんww
>>828
マジですか
>>831
要するに今DLしろという事でしょうか?
>>832-833
ありがとうございますww
>>834.835
要するに市販買えということですか

最新が一番心配なさそうですね
DLしてみます。
みんなありがとうwww工房の俺に新設に本当ありがとうwww
838デフォルトの名無しさん:2005/11/02(水) 18:48:11
いやいや836を読もうぜw


と工房の俺がレスしてみる
839デフォルトの名無しさん:2005/11/02(水) 19:10:13
とりあえずwwと、わざとらしい誤字を止めろ
840デフォルトの名無しさん:2005/11/02(水) 20:56:53
わかりました。
841デフォルトの名無しさん:2005/11/02(水) 20:59:46
とりあえず
java2最新版とdoja4.0
導入できました。ありがとうございます。

まだ本を買う金はないので
javaの解説してるホームページでも見てみます。

また質問に来るかもしれないのでその時はよろしくお願いします。
842デフォルトの名無しさん:2005/11/02(水) 21:03:45
>>841
いや、どうせ携帯用なのだからJavaらしい書き方されては困るので
いきなりi-modeの解説ページに行ってくれ
843デフォルトの名無しさん:2005/11/02(水) 21:25:07
>>841
ん・ぱか工房行けといいたかったが、あそこはサイトにはプログラムの書き方とかは殆ど無いからなぁ……
と言う訳でちょっと難しいかも知れんが「Appli-Style.com」を貼っておく
ttp://appli-style.com/index.html
何書いてあるか最初はわからんかも知れんが分からんことはぐぐったりしてがんがれ。

844デフォルトの名無しさん:2005/11/02(水) 21:28:13
>>843
なんだ?このWindowsマンせー的なHPは・・・
目が痛い
845デフォルトの名無しさん:2005/11/02(水) 21:48:14
文句の多い奴だ!
846デフォルトの名無しさん:2005/11/02(水) 21:55:21
>>845

「かーちゃん!フランクフルト買ってくるときはカラシ買ってこいって行ったろ!?」
「これか?」
「だからこれ、『和』だよ『和』!そうでなくて俺が言っているのは、なんかプチプチ種みたいなのが入ったやつなんだよ 
いっつも言ってんのになんでかってこないんんだ?いいかげんにスレよ」
「ソースでええやん」
「前に同じこと言ったときに『わかった』とかいったくせに・・・勝手こいよ早く」
「文句の多い奴だ! 」
847デフォルトの名無しさん:2005/11/02(水) 22:03:19
いや、それはとーちゃんが悪いだろw
848デフォルトの名無しさん:2005/11/02(水) 22:38:19
>>841
ちなみにアナタの持ってる携帯の機種は?
849デフォルトの名無しさん:2005/11/02(水) 22:44:16
>>842
いってみます
>>843
ありがたいこってす
>>848
D900i('A`)
850デフォルトの名無しさん:2005/11/02(水) 23:38:26
Hello Worldがやっとできました・・・
クラスとかがなんか引っかかりますが。何なんでしょう。
専門ページもむずかしいですねー専門用語は立ち読みで覚えた分しか
わからないです。(コンパイルとか)

まあ今日は寝ます。PCばかりしてる人はこんな難しい事を
やってるんですね。凄いです。
また明日でもお願いします。
851デフォルトの名無しさん:2005/11/03(木) 02:16:18
>>849
D900iだったらDoJa-3.5をインストールした方が良いと思う。
エミュレータと携帯のDoJaのバージョンを合わせておけば >>551 みたく
無駄な金や時間を費やす確率が随分減ると思うので。
852デフォルトの名無しさん:2005/11/03(木) 02:56:14
>>850 そりゃ、毎日10時間以上プログラム組んでる生活を何年も続けてりゃ出来るわな。
学生が数時間の勉強で「タリー」とか言ってるのとは次元が違う。




つ【PCの前に軟禁されて強制的に勉強させられてるとも言える】
853デフォルトの名無しさん:2005/11/03(木) 08:50:53
質問させてください
Canvasを使ってゲームを作ろうと思っているんですが、キャラクターを移動させる際
キーを押しっぱなしにしていると、キャラクターの座標(xとする)を変化し続けるようにするには
どうすればよいのでしょうか?下のままでは何度も押さないといけないので

public void processEvent(int type, int param) {
if (type == Display.KEY_PRESSED_EVENT) {
if (param == Display.KEY_UP) {
x = x+1;
}
}
}
854デフォルトの名無しさん:2005/11/03(木) 09:05:55
キーを離したら飛んでくるイベントがあるよな?
それがくるまでは押し続けているということ。

またはgetKeypadState
855デフォルトの名無しさん:2005/11/03(木) 09:42:44
面倒なのでおまいらが作ったフレームワークください
856デフォルトの名無しさん:2005/11/03(木) 09:47:57
>>854
それはわかるんですが、押されている間だけx+1を繰り返す処理の書き方がよくわからないんです。
すみません。
857デフォルトの名無しさん:2005/11/03(木) 10:29:54
>>852
すごいっすねー
根性に感服です。
>>851
うわ・・・・それはいやですね。
バージョン変えてみます。
858デフォルトの名無しさん:2005/11/03(木) 10:33:33
>>852
あほや、仕事でやっている奴なんてたいした事ね-やつ多いよ
一番すごいのは趣味でやっているやつら
859デフォルトの名無しさん:2005/11/03(木) 10:35:29
ちょっとした疑問なのですが、
FFの様なゲージがたまる→自分のターンが来る
見たいな戦闘を織り交ぜたRPGは容量等を考慮して
実質作成は可能のなのでしょうか?
860デフォルトの名無しさん:2005/11/03(木) 10:35:59
>>856
別のスレッドかタイマー起動してやるしかない
JavaはWindowsとかのイベントループが無いので
それを自分で書く必要がある
861デフォルトの名無しさん:2005/11/03(木) 11:09:33
>>860
あー、そうなんですか。
タイマーもいろいろ試行錯誤してたんですが、自分の力ではちょと無理っぽそうでした。
もうちょいいろいろ考えてみます。
ありがとうございました。
862デフォルトの名無しさん:2005/11/03(木) 15:13:22
>>859
出来る。
というか、そのプログラム容量とデータ容量の配分を企画と話合ってどうするかを
決めるのはPGの役目だぞ(一般的に)
863デフォルトの名無しさん:2005/11/03(木) 16:34:48
ゲージシステムは容量とはあんま関係ないとは思うが
864デフォルトの名無しさん:2005/11/03(木) 16:51:03
戦闘システムのコード量が嵩張ったら、30KBにおさまらないジャマイカ
865デフォルトの名無しさん:2005/11/03(木) 16:54:27
話し合って決める?だって?
ち〜が〜う〜だ〜ろ〜
企画と喧嘩しながらプログラム容量を"守る"のがPGの仕事だ
やつら貪欲な化け物さ
油断をすれば骨まで食われる
866デフォルトの名無しさん:2005/11/03(木) 17:20:38
>>864
・タイマ1個
・個人別ゲージ格納変数
・個人別ゲージ描画

ぱっと考えて容量増になるのはこれくらい。
それ以外の判定処理などはドラクエタイプと変わらんはず。
凝ったデザインのゲージにしたいなら無視できんけど。
867デフォルトの名無しさん:2005/11/03(木) 18:47:39
みんなやる気あるんだな〜

容量なんて入るものは入るし、入らないものは入らないんだから、
普通に無駄なく作って容量足りなくなったら仕様削ってくださいって
言うだけだろ。
削ってって言う時にこっちの仕様削減案を出すのもポイント。

あと、良い子は製作中にresフォルダにダミーファイル
突っ込んで軽く容量アップとかしながら容量足りない感を
演出したりしちゃいけないゾ!
868デフォルトの名無しさん:2005/11/03(木) 19:02:37
>>867
作った後に仕様削るってヤバいよ
PG的にはエンバグ原因になるし、
企画的にはバランス調整やり直し、
仕様と一緒に削られたデータを作ったデザイナ&サウンドは膨れ顔
削るのにも時間かかるからこれでスケジュール遅延決定。

入りそうに無い物ははじめから入れさせない。
これ大事。


あとダミーファイルは普通にやってる。
自分への緊張感の為に。
869デフォルトの名無しさん:2005/11/03(木) 19:12:15
>>868
もちろん始めから絶対入らないってわかる時は
始めの仕様を削らせるよ。

ウチのクライアントは結構慣れてる人多いから
そこまで悲惨な削り方をしなくても済んでるんだけどね。

それでも、馬鹿アーティストもどきが出てきたおかげで
今度ミーティング行かなきゃならんわけだが('A`)
ホント、採算も計算できない斜陽産業の連中は嫌だね。
870デフォルトの名無しさん:2005/11/04(金) 02:30:46
PCで携帯ゲームってできますか?
871デフォルトの名無しさん:2005/11/04(金) 04:45:29
>870
じゃぁまず、なぜPCでやる必要があるのか、から聞いてあげる。
872デフォルトの名無しさん:2005/11/04(金) 08:26:12
公式エミュレータ使えばいいじゃん
873デフォルトの名無しさん:2005/11/04(金) 11:30:39
だれも突っ込まないからいまさらだが突っ込むか・・。
>>861
散々過去にも出てるのだがprocessEvent内で処理を行う内容は最小減にしとくべき。
押されたら動かすんじゃなくて
押されたという情報を記録してその記録をメインループで見て動かすべき。
ヒントとして押されっぱなしだけを検知したい場合はprocessEventは使わないでいい。
以下上が押されっぱなしか?の例

static final int KEY_UP = (1<<Display.KEY_UP) | (1<<Display.KEY_2);//マクロ
int keydata;
//処理のメインループ
while(true){
/*ここらでウェイトの調整などなど*/
keydata = getKeypadState(); //キーデータ取得
if((keydata & KEY_UP) != 0){
/*押されている時の処理*/}
}

上の例だとちょんっと押された時に反応しないのでprocessEvent内で
押されたと言う情報を取得して組み合わせる。そこは考えてくれw
全部言ってもしゃーないしなw
874デフォルトの名無しさん:2005/11/04(金) 13:35:23
件の工房じゃないがちと質問。
processEvent()内の処理を最小限に・・・って、どんな理由から?
現状、漏れはショートタイマーでメインループ、
必要に応じてrepaintコール、
paint内で全ての描画を担当させてるんだけど。
スクラッチパッドのアクセスや通信はスレッドにて。
一応コメントしておくと、ゲームではないので高精度タイマーは不要。

>>873 の例だと、スレッドでメインループ作ってるわけだよね?
その方がベターな理由があれば教えて欲しい。
875デフォルトの名無しさん:2005/11/04(金) 13:48:44
他のイベントが取れなくなるんじゃね?
876デフォルトの名無しさん:2005/11/04(金) 13:58:22
>>874
以下開発ガイドからのコピペ
--------------------------------------------------------------------------
processEvent()メソッドの呼び出しは、ユーザーの操作やタイマーなど
非同期なイベント発生を契機として行われます。
processEvent()メソッドの呼び出し時に、それがどのようにスレッドに
割り当てられるかはメーカーにより異なりますので注意してください。
例えばあるメーカーの機種では、同時に発生した複数のイベントに
対して1つのスレッドで処理を行うかもしれません。
processEvent()メソッド内で行われる処理は極力短時間で完結するようにしてください。
--------------------------------------------------------------------------
つうわけで禁止ではないが推奨ではないってことだな
processEvent()内で色々な処理を多数やらせるのは。

過去の例でかなりでてたのが、イベント内で描画やってたり
通信部分を書いてあったりしたので注意を促したまでだよ。
その重い処理をやってる間に何回イベントが呼び出されるかわからんし。

イベント内で作っても出来るから別に構わないじゃん!って考えだと
後々苦労する(仕事では無難なのが一番・不具合の元になりやすい)し、
今は良いが昔の機種では処理速度が極端に違ったりしたんで
昔から作ってる奴はあまりやらないと思うよ。
877デフォルトの名無しさん:2005/11/04(金) 13:59:21
100番付近を読め!
878874:2005/11/04(金) 14:22:46
>>875,876
サンクス。
iアプリは・・・と言うかjava初なので参考になりますた。
普通やらない事をやるなって事ね。
いや、むしろGraphicsを奪い取ってスレッドで上書きする手法の方が
邪道のような気がするがw
とりあえず今のアプリはこのままでよさげなので、
ゲーム作る機会があったらそのとき作り替えますわ。

>>877
100getttt

いやスマン、このスレは全部読んだつもりだったんだが、
114以降を読み飛ばしていたらしい。
(113を読んだ記憶があr
879821:2005/11/04(金) 16:44:56
返答ありがとうございます。
FF風戦闘はなんら問題ないのですね。

まだ金が出来てないので立ち読み中ですが
やっとクラスとメゾットの意味がわかりました。

俺のiアプリ最終目標は
FF風RPGをフリーで出す事ですが
現時点では必殺技があるオセロを目指して作ってみます。

また質問があったらよろしくお願いします。先輩。
880デフォルトの名無しさん:2005/11/04(金) 17:26:29
必殺技いらねええええええええええ
881デフォルトの名無しさん:2005/11/04(金) 17:37:38
オセロとFF関係ないやん。ワロタ
882デフォルトの名無しさん:2005/11/04(金) 17:46:40
>>879
簡単なアプリ作成からやるのは良い事だが・・・
オセロは決して簡単ではないと思うけどなww
ルール部分は楽勝だと思うけどCPUの思考アルゴは
やり始めの人間にはかなり厳しいんじゃね?

ま、CPUさえ除けば練習としては持って来いかもなぁ。
CPUも考えがあんまり無い奴ならすぐ作れるし。
ま、がんばれ。
883デフォルトの名無しさん:2005/11/04(金) 19:03:02
>>879
描画やイベントに詰まったらまた来い。気が向いたら答えよう。


しかしオセロの必殺技・・・
盤面の1マスをランダムにひっくり返すとか、2連続で置けるとか?
最外周部のマスを時計回りに1マスずつずらす、とか面白そうやな。やられたら泣くが。
884デフォルトの名無しさん:2005/11/04(金) 19:05:05
http://www.c3-place.com/i/block/
ここのアプリをPCに落とすことはできませんか?
885821:2005/11/04(金) 20:07:56
>>880
ごめんよパトラッシュ、僕もう決めたんだ
>>881
なんか普通じゃない奴作りたいんですよ。
>>882
いやあ、考えると面白いんですよこういうの。
実現可能かはともかく。

CPU考えてませんでしたorz
単純なのからやってきます。
>>883
必殺技の構想(だけ)はきまってるんですが・・・
コマをひっくり返した数が何回以上で〜て感じで。

妄想案
・四隅ゲット
・台を揺らして現在あるコマをランダムに配置する

・・・まあ多分無理ですがorz




質問の際はよろしくお願いします。
886デフォルトの名無しさん:2005/11/04(金) 20:23:51
>>821
後学のために企画屋とプログラマは全く仕事が違うって事を
今のうちから覚えておいた方がいいぞ。
ネタ考えるのはプログラマの仕事じゃないからな?

よく専門学校のゲーム科とかにプログラマ志望入っちゃって、
道を踏み外す奴の大半がコレ。
887デフォルトの名無しさん:2005/11/04(金) 20:26:30
企画も別にネタばっかり考える仕事じゃないんだけどな
888デフォルトの名無しさん:2005/11/04(金) 20:29:04
必殺技がある時点でオセロじゃね~
889821:2005/11/04(金) 20:44:10
>>886
ただ単にアプリが作りたくなっただけなんです・・・
すみません。別に専門とか行く気はないです。
ごめんなさい。
>>888
オセロに代わる名前プリーズ>>890
890デフォルトの名無しさん:2005/11/04(金) 20:46:03
おろろ
891デフォルトの名無しさん:2005/11/04(金) 20:52:09
リバーシDX
892デフォルトの名無しさん:2005/11/04(金) 20:53:22
かえすんじゃー
893デフォルトの名無しさん:2005/11/04(金) 20:53:56
ふたりはオセロキュア
894821:2005/11/04(金) 22:08:37
オセロキュアワロスwwwwwww
ありがとう。まだ出来るかもわかってないのに。
がんばるよ。
895デフォルトの名無しさん:2005/11/04(金) 22:39:33
ツボにはまって鼻血がでたwww
896デフォルトの名無しさん:2005/11/04(金) 22:52:05
何このフレンドリーなスレ。(゚∀゚)オレモマゼテ!!

>>894
一通りJavaの知識ついてきたなと思ったら、サンプルプログラムとかでGoogleやYahoo検索してみるといいぞ。
基礎的なiアプリのソースコードが出てくる。
参考書とか書籍が無くても、やる気になれば、HPやJavaドキュメントを見て作れるものさ。
897デフォルトの名無しさん:2005/11/05(土) 00:50:55
SH506iC向け(それ以外の機種の動作はどうでもいい)の
アプリをつくりたいんだけっちょも、
この場合、DoJaのどれをダウソすりゃいいかわかんね。
おせーて
898デフォルトの名無しさん:2005/11/05(土) 01:32:47
つドキュメント
899デフォルトの名無しさん:2005/11/05(土) 03:57:03
>>897
>>6の公式サイトくらい見なよ
900デフォルトの名無しさん:2005/11/05(土) 09:03:48
getRGBPixelで取得した値をR,G,Bの各要素ごとに
3つの変数に代入したいんですがどうすればよいのか教えて欲しいです。
901デフォルトの名無しさん:2005/11/05(土) 09:56:45
ヒント:ビット演算子
902デフォルトの名無しさん:2005/11/05(土) 10:19:11
>>901
もうちょい
(´・ω・) ヒントホシス
903デフォルトの名無しさん:2005/11/05(土) 10:37:49
と、思ったけどできったぽいです。
>>901
(´・ω・) アリガタス
904821:2005/11/05(土) 14:42:57
>>896
アドバイスありがとう
905デフォルトの名無しさん:2005/11/05(土) 17:36:41
906デフォルトの名無しさん:2005/11/05(土) 18:29:55
>>905
いえ、失礼ですがこんなにややこしい物じゃなくて
オセロ+必殺技(コマの配置を換える事が出来る)て感じです。

・・・あれ?おんなじ?orz
907デフォルトの名無しさん:2005/11/05(土) 19:18:26
>>906
つまり、常時じゃなくて特定(必殺技使用)の時のみ、盤面をいじるって訳ね。
オセロ以外のパズル要素が、前者はもすぬごく高いが、後者はそれほどでもない。
908デフォルトの名無しさん:2005/11/05(土) 20:07:14
そんな感じです。
おバカな工房の俺にはとてもそんな常時なんて
909デフォルトの名無しさん:2005/11/05(土) 21:42:50
そんな企画はいいからとりあえずCPU抜きのオセロ作ってみろ。
と、工房から作りはじめた俺が言ってみる。
910デフォルトの名無しさん:2005/11/05(土) 23:12:47
ウヒィ ムズカシス
911821:2005/11/06(日) 00:23:28
コンパイル後の入力ミスを探すコツを教えてください。
Dojaの表示じゃよくワカンネ
慣れしかないと書いていますが
意味もよくつかめません・・・
912デフォルトの名無しさん:2005/11/06(日) 00:33:33
>コンパイル後の入力ミス
どんなミスかよくわからないのだが・・・
System.out.printlnを所々に入れて
どこまで処理が走っているのか調べるとかそういうことか?
913821:2005/11/06(日) 00:53:51
>>912
まだヘローワールドもできないのさ。

ヘローワールド入力中・・・
入力終わったー!
Dojaの「ビルド」押す
   ↓
26個のエラー
(^ω^)・・・・な、なんか . でも抜けてるんだお!
   ↓
53個のエ(ry
   ↓
('A`)・・・最初から打ち直すか・・・
   ↓
28(ry
('A`)・・・ああ、これか。「〜は不正な文字です」とか「<identifier>がありません」とか
これを見ながら直せってんだな。・・・identifier・・・?
   ↓
適当に入力
   ↓
どうみてもカオスです。本当にありがとうございました。

なんかこういうのは慣れって書いてたんだけど、コツとかある?意味不ならヌルーしてよかですよ('A`)
914デフォルトの名無しさん:2005/11/06(日) 00:58:57
>>913
>コンパイル後の入力ミス
って書くから混乱した
コンパイル時のミス つまりソース自体の記入ミスだろう

>「〜は不正な文字です」とか「<identifier>がありません」とか

Java自体初めてなんだろ?だったら最初はそんなもんじゃないのかなぁ。
ここでミナまで教えて欲しければそのソースコード載せればいい
それ以外は、文法おぼえてね と言うしかない・・・
915デフォルトの名無しさん:2005/11/06(日) 01:36:56
まあ、たぶんね、全角スペースが混ざってるんだと思うよ
サイトからコピペして張ったんでしょ?
916デフォルトの名無しさん:2005/11/06(日) 01:37:26
っ[ Eclipse ]

ただし、コンパイルは通っても
(君が)理解できない理由で
実機で動かないプログラムを
量産しやすいから要注意。


Java の参考書も用意しておこうぜってことで。
917デフォルトの名無しさん:2005/11/06(日) 01:48:10
>>913
Dojaのビルダー単体でJavaプログラム書くのは、10徳ナイフで料理するようなものだ。
できないことはないが、慣れてない人間だと無理無茶無謀無鉄砲。

最低限、エディター(多機能のメモ帳って感じのソフトウェア)を、別途用意した方がいい。

準備するのがメンドクサイが、Eclipseという無料配布しているソフトがお兄さんのお勧めだ。
ソースコードの文法間違ってる箇所を警告してくれたり、変数やメソッドが一目で分かるように管理してくれる。
開発資源の管理だってできるし、ビルドだって一発簡単!
こりゃあインストールするしかないねジョニー!!
918デフォルトの名無しさん:2005/11/06(日) 03:09:33
アプリにバグがあって修正したんですが、バージョンアップとして認知してくれないようです。
バージョンアップってのはどこを見てバージョンアップか別のアプリかってのを判断しているのですか?
919821:2005/11/06(日) 03:26:39
うほっ皆ありがとう。
>>914
エラー:改行が多すぎます!!!!orz
>>915
勉強にならないからそれだけは・・・とおもっとったけど無理なのでやりました。
今は反芻してます。
>>916
猛烈に金がほしいです(´・ω・)
>>917
俺の場合ナイフすら持ってない感覚です・・・
Eclipseですか。見てみます。



そういや思ったんですけど女性のプログラマーさんはいないんですかね?
いや、ちょっとおもっただけでそんな下心うわなにいuyfうおyfuo
920デフォルトの名無しさん:2005/11/06(日) 06:13:33
>>918
ADFのLastModifiedキー
開発ガイド詳細編くらい読むべき
921745:2005/11/06(日) 10:10:35
再び質問させてください。
Canvasから切り替えると画面内容は保証されないということで、
切替る前に画面をjpegとして、スクラッチパッドに保存し
切替た後にそのjpegを再度読み込むことでなんとか形的にはクリアできたのですが、
jpegの性質もあってかATTR_QUALITY_HIGHに設定しても画像の劣化が目で見てとれます。
jpeg以外を使う方法か、そもそも画像として保存せずにデータとして保存する方法などあるんでしょうか?
922デフォルトの名無しさん:2005/11/06(日) 11:05:40
ユーザ操作を記録してpaint()で勝手に再現されるようにしたら?
923デフォルトの名無しさん:2005/11/06(日) 11:47:20
>>913
コンパイルエラーが多量に出た場合、上から順に修正していけよ。
ソースの上のほうのエラーのせいで下の方を正しく評価できない場合が多いから
最初のエラー数個を修正しただけで一気にエラーが減ることはよくある。

あと、全角文字をプログラム中に書くな。〜は不正な文字 ってのは全角使った時に出ると思いねぇ。

おれもeclipse+Dojaプラグインな環境を薦めるが、ちょっと敷居が高いのでまずHelloWorldぐらいできるようになってから朝鮮汁
924デフォルトの名無しさん:2005/11/06(日) 11:49:19
>>919
プログラムは、夢を見ないことが上達のコツΣd('A`)
925デフォルトの名無しさん:2005/11/06(日) 11:52:49
>>921 Doc-ViewとかMVCと呼ばれる構造にすれば、状態の再現はそんなに難しいもんでもないんだがな。

・処理と描画を完全に切り分ける。
・処理側は色んなパラメータをセットするだけにする。
・描画側はパラメータにしたがって表示するのみ。ここでは計算や変数のセットなどは行わない。

てなかんじで全体の処理を切り分け出来てれば、画面が切り替わる時にパラメーターを保存し、再現時にはパラメータを見て再描画するのみ。
926デフォルトの名無しさん:2005/11/06(日) 12:47:39
>>921,925
それも考えたんですが、今作っているのはそれだとパラメーターの数が凄いことになってしまいそうです。
それ以外に他に手はないでしょうか?
927デフォルトの名無しさん:2005/11/06(日) 13:01:56
>>921
保存してる期間だけメモリ使うけど、getPixelsとかでイメージとしてまとめて保存したら?
切替といってもスクラッチパッドに保存するのは大袈裟すぎる気がするんだが
928デフォルトの名無しさん:2005/11/06(日) 13:50:06
>>921
JPEGで保存した画像のスクリーンショットをさらにJPEGで保存なんて繰り返していれば劣化するの当たり前だよな
929デフォルトの名無しさん:2005/11/06(日) 14:18:30
>>926=921
基本的には>>925のやり方を勧める。
パラメータの数がすごいことになるというなら、構造を見直してみるのも悪くないと思う。

どうしても他のやり方がいいというなら、こういう方法もよく使われるので紹介する。
・画面サイズのImageオブジェクトを用意する。
・Canvas内での描画処理は画面ではなく全てこのImageオブジェクトに対して行う。
・Imageオブジェクトに一通り描画したら、このImageオブジェクトを画面に描画する。

PanelからCanvasに戻ってきたときはいつでもこのImageオブジェクトを画面に
描画するだけで、切替前の画面がそのまま再現される。
ただ、常に画面サイズのImageオブジェクトが1つメモリ上に居座ることになる。
930デフォルトの名無しさん:2005/11/06(日) 14:46:19
Eclipseと日本語かツールはインストールできましたが、DoJaプラグインのインストールが難しいです(><)
931821:2005/11/06(日) 15:08:05
でけたああ
ていうか全角スペースめちゃくちゃあったw
どうみても進歩です。本当にありがとうございました。
932821:2005/11/06(日) 15:19:08
線描くのむずかしす
933930:2005/11/06(日) 15:24:34
エミュの再インストールでできました(><)
グラフィカルで見やすいです!
GUIでクラスが作れちゃうんですね!
メソッドの候補が出たり、間違ったら修正してくれたり凄すぎます!
934821:2005/11/06(日) 15:29:11
public void Graphics.drawRect(int 45,int 23,int 76,int 43);
線を描く命令、どこに描けばいいんですかね?
エラー:式の開始が不正です
てなるお
935930:2005/11/06(日) 15:32:20
DoJa3.5設定がクリックできません(><)
なぜでしょうか?コンパイルは出来ているのに…
>>934
線はこれですよ
g.drawLine(0, 0, 100, 100);
936821:2005/11/06(日) 15:40:18
>>935
うほ、ありがたす
でも違うんだ、こう、全体的に見て
g.drawLine(0, 0, 100, 100); をどこに置けばいいのかな・・・
937930:2005/11/06(日) 15:43:01
こんな感じです
import com.nttdocomo.ui.*;

public class Test extends IApplication {
public void start() {
Display.setCurrent(new Main());
}
}
class Main extends Canvas {
public void paint(Graphics g) {
g.drawLine(0, 0, 100, 100);
}
}
終わり
938930:2005/11/06(日) 16:09:25
DoJa3.5設定が押せました(><)
プロジェクト名をを選択しておけばよかったんですね!
お騒がせしました!
939デフォルトの名無しさん:2005/11/06(日) 16:26:15
人に頼りすぎだぞ?
もう少しサンプルコード見て頭使わないと、絶対できるようにならない。
940821:2005/11/06(日) 16:42:58
>>937
ありがてう
>>939
うは 俺もその段階にきたか。
すいませんでした。サンプル見てきます。
941930:2005/11/06(日) 16:55:04
何度もごめんなさい
実行しようとしたらAppSize(=1)<0 で NG ですと出て動きません
AppName=EclipseTest
AppClass=EclipseTest.Test
PackageURI=EclipseTest.zip
という設定です
ググったところ、再インストールしたら直ったそうですが、こちらでは直りませんでした
どうしてなのでしょうか?
942デフォルトの名無しさん:2005/11/06(日) 16:59:08
知ってる人がいたら教えて欲しいんですが、HEADタグ内に下記のようなOBJECTタグを
設定して、アプリをダウンロードさせる側の A タグは下記のような構成なのですが
P901i・D901iではダウンロードできるのにN901iではダウンロードできないという症状が出ています。

<OBJECT DECLARE ID="test" DATA="./hoge.jam" TYPE="application/x-jam"></OBJECT>
<A IJAM="#test" HREF="./foo.html">Dawnload</A><BR>

もしかして、タグの問題ではなくてjamの記述の問題なのかもしれませんが・・・
もしそうだとしても、機種ごとに必須のjamキーってあったりするのでしょうか?
943デフォルトの名無しさん:2005/11/06(日) 21:34:29
>>942
N901iで落とせないと言うのはどういうメッセージが出てきて落とせないんだ?
ダウンロードそのものが始まらないのか?
それとも何らかの警告メッセージが表示されるのか?

とり合えず、ADFのTargetDeviceを確認。
ここが無記入もしくはall●●●(←機種の数字)になっているか?
ここに個別の機種種別が入っているとそれ以外ではDLできなくなる。



944デフォルトの名無しさん:2005/11/07(月) 00:59:34
>>942

OBJECTタグはHEADじゃなくてBODYじゃないとダメだと思うが。
誰からHEADタグ内に書けなんて教わったの?
945デフォルトの名無しさん:2005/11/07(月) 03:10:09
>>942
Dojaフォルダの apps/???/bin/ にDownload.htmが生成されるからそれ嫁
古いDojaは生成されんかも試練。
946デフォルトの名無しさん:2005/11/07(月) 03:48:06
>>941
・設定→Java→準拠及びクラスファイル→コンパイラー準拠レベルを1.3にしてみる
・eclipse.exe -cleanで再起動してみる
たぶんどっちか。
947930:2005/11/07(月) 04:06:03
>>946
上の方法で出来ました(><)
こんなことに6時間も悩んでしまいましたorz
ありがとうございました!
948921:2005/11/07(月) 09:35:57
>>927-929
getPixelsを使うことで無事解決しました。
後学のためにも929さんの方法もやってみます。
本当にありがとうございました。
949デフォルトの名無しさん:2005/11/07(月) 13:51:32
何で再描画するだけなのにgetPixelsなんて使うかなーって思ってる奴の数

950デフォルトの名無しさん:2005/11/07(月) 14:27:09
もしかしてペイントみたいなの作るの?
>>922にすればundo redoが実装できるw
951デフォルトの名無しさん:2005/11/07(月) 19:24:26
>>950
よくこれだけでわかりますねΣ(゚д゚lll)
>>922のような仕様はレベル高そうで、経験値が足りませぬ
952デフォルトの名無しさん:2005/11/07(月) 21:46:13
DoJa3.5での3D表示ですが、とりあえずfigureとかを任意の3D座標に配置するのは
できるようになりました。
それで次に画面上の2D座標を指定してその位置の3D座標位置を検出したいのですが
これはどうやればいいのでしょうか?
DirectXのサンプルなどを参考にしてやろうとしたんですがうまくいかなくて・・・
953デフォルトの名無しさん:2005/11/07(月) 22:22:22
>それで次に画面上の2D座標を指定してその位置の3D座標位置を検出したいのですが

さぁ、文意の怪しい質問がやってまいりました。
954デフォルトの名無しさん:2005/11/07(月) 22:49:18
2Dの座標指定で3Dのオブジェクトの座標を取得するということか?
そんなばかな!
955デフォルトの名無しさん:2005/11/07(月) 23:43:57
あるスクリーン座標(x, y)に投影されてる点が3D空間上のどの点が投影されたものかを知りたいんだろうなあ。
>>952
とりあえず、3Dの画像を表示する時に、内部で何が行われるのか理解しよう。
「レイトレーシング」
でぐぐるべし。
956952:2005/11/08(火) 00:24:43
>3D空間上のどの点が投影されたものか
そういうことです。説明不足ですみません。
PCゲームみたいなカーソルで3Dの地面をクリックしたらその場所に
キャラが歩いていく。みたいなことをしようとしてます。

で、いろいろ調べて交差判定でやればいいというのを見つけたのですが
単位ベクトル4096とかで混乱したりしまして・・
この判定処理の部分はどうやったらいいんでしょう?
957デフォルトの名無しさん:2005/11/08(火) 00:36:30
3D関連のスレいきな。iアプリとは関連性がない。
とりあえず面と線の当たり判定はググレばさくっと出てくることを教えておこう。

そして単位ベクトルすら理解していないのでは、3Dにはまったく手も足も出ない。
急がずまわるのが最短だよ。
958デフォルトの名無しさん:2005/11/08(火) 00:36:39
3D関係のスレで聞いた方が早いよ。
つーかもはやスレ違い。
透視演算の逆が必要になるわけなんで、場合によってはそう優しい計算じゃない。
文章見てる感じだと、ガンガレとしか言い様が無いが…

まあ、がんがってくれ。
959デフォルトの名無しさん:2005/11/08(火) 01:59:20
>>952
大抵は投影変換行列の逆行列使うけど、MascotCapsuleは
投影変換用の行列がAPIの中に隠れているから、
2D->3Dってかなりあやふやなまま作らないといけないんじゃないか。
まあたぶん定型の投影変換計算式使ってると思うけど
960952:2005/11/08(火) 07:26:16
みなさんありがとうございます。
もうちょっと勉強して出直してきます。
961デフォルトの名無しさん:2005/11/08(火) 10:45:09
>2Dの座標指定で3Dのオブジェクトの座標を取得するということか?
>そんなばかな!
3Dオブジェクトをマウスクリックするようなのはゲームでもさんざん使われてますが何か。

大雑把に言うと視点の中央から2D画面上の点を通るレイ(直線)を定義すればOK
Z方向のどの地点を取るかはやりたいことによる。
物体をクリックして動かしたいのならそのレイとの交差判定をするし、
特定のZ位置でよければ直線の式から計算して求めればいい。

まぁ、スレ違いなのでDirectXか3D関連のスレで聞いてくれ。
あと、「レイ マウスでクリック 交差判定」ぐぐったら出てきた。
http://www.tsg.ne.jp/sept/prg/memo/polypick.asp
http://www.microsoft.com/japan/msdn/directx/japan/dx9/winform3.asp

それから、4096は固定少数演算な。1を12ビット左シフトして出てきた値。
962デフォルトの名無しさん:2005/11/08(火) 10:56:25
>>961
そんなことは>>953-959まで、皆わかった上での発言だと思うよ?

それはさておき、ぼちぼち次スレの季節ですね。
963デフォルトの名無しさん:2005/11/08(火) 11:32:47
>>959
昔やったときは、予想通りあやふやなまま作る羽目になった。
なんかエレガントに作れないかなー。
964デフォルトの名無しさん:2005/11/08(火) 16:34:08
cgiからデータを受け取るために下記の様に書いてみたんですが、cgiから送られてくるデータはint型なんですよ。
下記の書き方じゃ当然string型として受け取ってしまうわけで、どうしたらint型で受け取れるでしょうか?

try{
String w_url=new String(getSourceURL()+"test.cgi");
wo_connect=(HttpConnection)Connector.open(w_url,Connector.READ_WRITE,true);
}
catch(Exception e){}

try{
wo_connect.setRequestMethod(HttpConnection.POST);
wo_connect.setRequestProperty("Content-Type","text/plain");
OutputStream wo_stream = wo_connect.openOutputStream();
OutputStreamWriter wo_buffer = new OutputStreamWriter(wo_stream);
wo_buffer.write(read_data);
wo_buffer.close();
wo_stream.close();
965デフォルトの名無しさん:2005/11/08(火) 16:34:30
wo_connect.connect();
InputStream wi_stream=wo_connect.openInputStream();
InputStreamReader wi_buffer=new InputStreamReader(wi_stream);
StringBuffer w_StringBuffer=new StringBuffer();
String res;
int w_char;
while((w_char=wi_buffer.read())!=-1){
w_StringBuffer.append((char)w_char);
}
res=(String)w_StringBuffer.toString();
wi_stream.close();
wo_connect.close();
}
catch(Throwable e){}
966デフォルトの名無しさん:2005/11/08(火) 16:47:14
通信は基本的に文字列じゃね?
967デフォルトの名無しさん:2005/11/08(火) 16:48:22
int hoge = Integer.toString(数値にしたいString);

余談だけど、それ某サイトのものだと思うけど、変数名がC言語風なので、Javaの規則にそった変数名にすることを勧める。
968デフォルトの名無しさん:2005/11/08(火) 16:49:14
いやん間違えた
Integer.parseInt()
969デフォルトの名無しさん:2005/11/08(火) 16:53:58
>>967 >>968

ありがとうございます。できました。
アドバイスありがとうございます。もっと精進します。
970デフォルトの名無しさん:2005/11/08(火) 20:21:12
DoJa4.0をインストールしたところ、
レジストリの書き込みに失敗したという旨のエラーメッセージが表示されてしまいます。

エラーの出るタイミングは
利用規約の承認や各種設定などを行い、実際にインストールをするとき。
もっと具体的にいえば、ファイルのコピーなどが終わったと思われる、最後の最後です。

エラーと言っても、それ以外の作業は順調に成功しているらしく
インストール自体が失敗したり、中断するわけではありません。
設定が一切保存されないだけで、起動はします。
(ただし、jamファイルが正常に吐けないので意味はありませんが……)

OS : Windows 2000 Pro SP4
JRE : SE v1.4.2_03
SDK : SE v1.4.2_03

レジストリ関連ということで、Adminでインストールしたらエラーは出なかったのですが
開発の度にAdminで入るわけでにもいきませんので……。



あと、Eclipse+DoJa の質問もこちらで良いのでしょうか?

971デフォルトの名無しさん:2005/11/08(火) 20:35:30
         ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) < 次スレまだ〜?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        |  愛媛みかん  |/
972テンプレ:2005/11/09(水) 03:29:51
NTT DoCoMoのiモード携帯電話用Javaに関する話題を扱うスレッドです。

※DoCoMo以外は下記スレへ。

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

■ iアプリ特有ではなくJava一般に関する質問はこちらへ
【初心者】Java質問・相談スレッド68【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1119115837/

■ iモード携帯電話用Java(iアプリ)まとめサイト
http://ton.my-sv.net/

■関連スレ
【日本携帯】Mascot Capsule/Micro3D【標準】
http://pc8.2ch.net/test/read.cgi/tech/1117773530/

過去スレ
Part 1 http://piza2.2ch.net/tech/kako/975/975428633.html
Part 2 http://pc3.2ch.net/tech/kako/1000/10007/1000723476.html
Part 3 http://pc2.2ch.net/test/read.cgi/tech/1040898596/
Part 4 http://pc5.2ch.net/test/read.cgi/tech/1067139509/
Part 5 http://pc5.2ch.net/test/read.cgi/tech/1084246226/
Part 6 http://pc5.2ch.net/test/read.cgi/tech/1091286071/
Part 7 http://pc5.2ch.net/test/read.cgi/tech/1102844217/
Part 8 http://pc8.2ch.net/test/read.cgi/tech/1110946222/
Part 9 http://pc8.2ch.net/test/read.cgi/tech/1120411353/
973テンプレ:2005/11/09(水) 03:30:42
■ 開発環境

NTT DoCoMo - iアプリコンテンツの作成について
http://www.nttdocomo.co.jp/p_s/imode/java/index.html
Java[tm] 2 Platform, Standard Edition v 1.4
http://java.sun.com/j2se/1.4/ja/
CLDC仕様書 日本語版
http://java.sun.com/products/cldc/docs/CLDC1.0_ja_docs.zip
Eclipse.org
http://www.eclipse.org/

■ 機種依存情報

ん・ぱか工房(iアプリ機種依存情報)
http://www.saturn.dti.ne.jp/~npaka/
NTT DoCoMo - アプリケーション作成上の注意点
http://www.nttdocomo.co.jp/p_s/imode/java/caution.html
Overflow! さかきけいのページ(504iまでの機種依存情報つきAPIリファレンスあり)
http://godwood.allnet.ne.jp/vioret/

■ アプリを省サイズ化するツール(ObfuscatorまたはOptimizer)

Java Blender
http://web.yl.is.s.u-tokyo.ac.jp/amo/JavaBlender/
jarg - Java Archive Grinder
http://jarg.sourceforge.net/
974テンプレ:2005/11/09(水) 03:31:52
■ 主なアプリ配布サイト

ギガアプリ
http://g-appli.net/
アプリ★ゲット
http://appget.com/
ゲームチャンネルi
http://appli.channel.or.jp/pc/i/

■ 携帯関連ニュース

ITmedia:モバイル
http://www.itmedia.co.jp/mobile/
ケータイ Watch
http://k-tai.impress.co.jp/
Nekomaru What's New
http://snget.hp.infoseek.co.jp/news/news_index.htm

■ 関連板

携帯アプリ板
http://hobby7.2ch.net/appli/
携帯・PHS板
http://hobby7.2ch.net/phs/
975テンプレ:2005/11/09(水) 03:32:41
■ iアプリ特有ではなくJava一般に関する質問はこちらへ
【初心者】Java質問・相談スレッド68【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1119115837/

■関連スレ
【日本携帯】Mascot Capsule/Micro3D【標準】
http://pc8.2ch.net/test/read.cgi/tech/1117773530/

■ iモード携帯電話用Java(iアプリ)まとめサイト
http://ton.my-sv.net/
976デフォルトの名無しさん:2005/11/09(水) 03:34:54
スマン、>>975は重複してるからいらない。無視してくれ。
977デフォルトの名無しさん:2005/11/09(水) 05:07:00
>>973
さかきけい氏のページからは、携帯アプリ関連のコンテンツが消滅してると思われ
978デフォルトの名無しさん:2005/11/09(水) 08:01:37
関連板がふるいね。
979デフォルトの名無しさん:2005/11/09(水) 13:47:08
902iシリーズ全6機種は「JBlend」搭載──統一プラットフォームへ
980デフォルトの名無しさん:2005/11/09(水) 20:27:25
>>979
やっと、機種ごとのやっかいな動作チェックから開放されるのか( ´Д⊂ヽ
981デフォルトの名無しさん:2005/11/09(水) 20:34:59
JBlendはVMだから、グラフィックとかのハード依存部分とは関係ないだろ
982デフォルトの名無しさん:2005/11/09(水) 21:22:16
>機種ごとのやっかいな動作チェックから開放されるのか
んなわけないオー
vodaやauはずっと以前からアプリックスだけど
動作チェックは必要
983デフォルトの名無しさん:2005/11/09(水) 22:18:16
つかの間の喜びだったorz
984デフォルトの名無しさん:2005/11/09(水) 23:31:31
>>983
明日仕事あるけど、飲まないか
985デフォルトの名無しさん:2005/11/09(水) 23:45:18
飯だ米酒だ飲ま飲まイェイ!
986デフォルトの名無しさん:2005/11/10(木) 01:40:25
携帯アプリ開発者オフとか恐ろしいことになりそうだな。
987デフォルトの名無しさん:2005/11/10(木) 10:17:59
N端末開発している友達連れてっても良いか?w
988デフォルトの名無しさん:2005/11/10(木) 10:21:44
やめといた方がいいのではw
989デフォルトの名無しさん:2005/11/10(木) 10:50:27
data_h_y[0]=String.valueOf(data_double+0.6);
data_h_y[1]=String.valueOf(data_double+0.4);
data_h_y[2]=String.valueOf(data_double+0.2);
data_h_y[3]=String.valueOf(data_double);
data_h_y[4]=String.valueOf(data_double-0.2);
data_h_y[5]=String.valueOf(data_double-0.4);
data_h_y[6]=String.valueOf(data_double-0.6);

data_double=171.3 なのですがこの結果を出力すると

data_h_y[0] 171.9
data_h_y[1] 171.70000000000002
data_h_y[2] 171.5
data_h_y[3] 171.3
data_h_y[4] 171.10000000000002
data_h_y[5] 170.9
data_h_y[6] 170.70000000000002

ってなるんですよ。何で0000000000002ってなってしまうんでしょうか?
使ってるのはdoja4.0です
990デフォルトの名無しさん:2005/11/10(木) 11:35:28
ビットで表しきれない数字、ってことかね?プログラム以外の問題。
Dojaの小数点って精度高くなさそうだし。

コレで問題起きるなら、小数点第2位で丸めるとか。
991デフォルトの名無しさん:2005/11/10(木) 11:58:10
最悪手間だが固定小数から計算しなおして使う方法もありかな。
実機でやってみてから考えてみれば良いだろうが・・・。
992デフォルトの名無しさん:2005/11/10(木) 13:13:08
>989 もともと浮動小数点はそういうもんです。
993デフォルトの名無しさん:2005/11/10(木) 14:45:05
>>987
いいねぇ。吊るし上げオフ、お仕置オフ。
994デフォルトの名無しさん:2005/11/10(木) 15:02:31
iアプリの1画面での最大表示文字数に制限はありますでしょうか?
1画面上におけるLabelの最大数やLabelに格納できる最大文字数に制限があるのか、
機種別に異なっている等が知りたいです。

>>6のリンクを捜しましたが見つかりませんでしたのでご質問させていただきました。
ご教授お願いします。
995デフォルトの名無しさん:2005/11/10(木) 15:15:25
iモード携帯電話用Java(iアプリ) Part10
http://pc8.2ch.net/test/read.cgi/tech/1131603113/
996デフォルトの名無しさん:2005/11/10(木) 15:37:56
>>995
乙。

埋め埋め遺詠。
997デフォルトの名無しさん:2005/11/10(木) 15:38:27
>>994
ラベルやボタンなどは長すぎると画面外にはみでる。
折り返して全て表示してくれる機種があるのかどうかは知らん
998デフォルトの名無しさん:2005/11/10(木) 16:44:33
うめ
999デフォルトの名無しさん:2005/11/10(木) 17:01:48
1000ならDocomo倒産
1000デフォルトの名無しさん:2005/11/10(木) 17:03:46
1000!
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。