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

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
2デフォルトの名無しさん:05/03/16 13:11:03
■ 開発環境

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/
3デフォルトの名無しさん:05/03/16 13:12:50
■ 主なアプリ配布サイト

ギガアプリ
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/
4デフォルトの名無しさん:05/03/16 13:14:19
iアプリ特有ではなくJava一般に関する質問はこちらへ
【初心者】Java質問・相談スレッド63【大歓迎】
http://pc5.2ch.net/test/read.cgi/tech/1110197411/
5デフォルトの名無しさん:05/03/16 14:53:07
昨日パレット系の話してたものです。
SH700iのカラーが独自仕様でした!
6デフォルトの名無しさん:05/03/16 15:49:29
>>5 どんな風に?
7デフォルトの名無しさん:05/03/16 16:05:00
RGBXのX部のbitが全て立ってました。
他の携帯は全て倒れてました。

黒が
SH700i -> 0xFF000000
その他 -> 0x00000000
8デフォルトの名無しさん:05/03/16 16:05:45
>>7 案外、不透明度が設定できたりして(笑
9デフォルトの名無しさん:05/03/16 23:05:49
カメラで取った画像をサーバーに送りたく、
あちらこちらのサイトを参考に、通信するプログラムを組んでみました。
文字列をサーバーにPOST で送り、それをレスポンスとして表示し、
受け取るところまで成功しました。

ところが、スクラッチパッドに保存している写真データを読みながら、
OutputStream out = con.openOutputStream(); でつくったオブジェクトに
書き込んだところ、全然送信できていません。
printlnで見たところ、InputStream#public int read(byte[] b)で
戻り値の合計がスクラッチパッド分ありましたので、読めてはいるようです。

サーバー側のログをみるとアクセスはしていて、またアプリ側もアクセスした
レスポンスを表示しているので通信エラーでも無いようです。

そこで、OutputStreamに何が書き込まれているか知りたいのですが、可能でしょうか?
また、初心者が陥りやすそうな罠などあれば教えてください。

ちなみに、そのスクラッチパッドのデータを読み込んでから、
また、スクラッチパッドに書き込み、
MediaManagerで表示することは出来るので、スクラッチパッドには誤りが無いようです。
10デフォルトの名無しさん:05/03/17 00:04:27
>>7
確かSHはsetColor(0)が黒じゃなくて透明(つーか無意味)なんだよね
その辺が影響してるのかも
11デフォルトの名無しさん:05/03/17 00:10:23
上位8bitが立ってないと透明になると思われ。
12デフォルトの名無しさん:05/03/17 00:12:58
>>9
ちゃんと送れてないか受け取れてないんだろ
似たようなのが前スレにあったが‥

URLエンコしてるなら
con.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
してないなら
con.setRequestProperty("Content-Type","application/octet-stream");

どう受け取るかは鯖のプログラム次第だからなんとも言えん
13デフォルトの名無しさん:05/03/17 00:56:42
>>12
Content-Typeって、
text/plain と
application/x-www-form-urlencoded
しか指定できないんじゃなかったっけ?
14デフォルトの名無しさん:05/03/17 09:35:48
PalettedImageって、getPixelsすらできないのね(つД`)
特定の座標の色が、パレットの何番目の色なのかすらわからない。

Windowsにおける256色ゲームの半透明のように、パレット同士のかけあわせを
テーブルで持とうと思ったのに、ダメぽ
15デフォルトの名無しさん:05/03/17 10:42:08
>>8
2004年秋モデル以降はできるんじゃないの?
つかAPIにもあるし
169:05/03/17 11:01:29
>>12
レスどうもっす。

application/octet-streamにしてみましたが駄目でした。
現在わかっているのは、
img=[スクラッチパドから読み込んだデータ]をバイトに変換して書き込んでいます。
これだと、サーバー側にはなにも送られていません。ところが、
img=[適当な文字列]だときっちり送信できるのです。

上記を踏まえて、スクラッチパッドが怪しいと思い、
スクラッチパッドを読み込んでメモリ上のバッファに保存後、
再度書き込み、そして表示させる。
という処理をいれたところ、データの表示自体は上手くいきました。

陥りそうな罠がわかりません。
17デフォルトの名無しさん:05/03/17 11:31:25
送られてこないのはどうやって確認したのさ
送られてるんだけど受け取り方が間違ってて受け取れてないだけじゃないの?
18デフォルトの名無しさん:05/03/17 11:43:55
Graphics2の実装状況なのですが、
D900iが積んでないことは確認しました。(DQとFFが作れなかった原因とも聞いています)

D901iは実装されているのでしょうか?
お分かりになる方いらっしゃいましたら、お願いいたします。
4.0での拡張命令実装表がまだ公式に無いもので…。
19デフォルトの名無しさん:05/03/17 12:23:49
>>17
レスどうもです。
文字列を送ったときに表示されているんだらから
サーバー側に非はないと勝手に思い込んでいました。

実験したところ、
img=aaa\0\0bbb
なんてものを送信したら、ご推察の通りaaaしかPOSTデータで取得できませんでした。
解決には至ってませんが、糸口が見つかりました。
ありがとうございます。
20デフォルトの名無しさん:05/03/17 13:58:39
>>19
自己レスですが他力で解決できました。
(【PHP】くだらねぇ質問はここに書き込みやがれpart4 )
http://pc5.2ch.net/test/read.cgi/php/1110697712/82-90
21デフォルトの名無しさん:05/03/17 17:53:16
>>13
んなこたーない。
22デフォルトの名無しさん:05/03/18 01:36:09
setCurrentでPanelクラスとCanvasクラスを切り替えているんですが
Canvas>Panel>Canvasと切り替えたところで
Canvasクラスの中のprocessEventが反応しなくなってしまいました。
こういった場合まず何を疑えばいいのでしょうか?

Canvasクラス
Graphics(){}
exe() {
ボタン押されたらsetCurrent(new Panelクラス())
}
processEvent(){
キー値受け取り
}

Panelクラス
softKeyReleased(){
ボタン押されたらsetCurrent(new Canvasクラス())
}

クラスの構造はこんな感じです。
23デフォルトの名無しさん:05/03/18 09:20:03
>反応しなくなっていまいました
何が反応しないのか。
paintすらこないのか?
それともキーイベントがこないのか。
RESUMEイベントすらこないのか?
画面はどうなっているのか。
そして何故新しいキャンバスをわざわざ作っているのか。

書かなければならないことはこんなにもある。我々はエスパーではない。

それでも一応推測しよう。
おそらくsoftKeyが効かないのか?
それを「processEventがこない」と勘違いしてるのではないか?

panel.setSoftKeyListener(null);
をしてないだろう?
それではいつまでもpanel側にソフトキーのイベント受信権を奪われたままだ。
24デフォルトの名無しさん:05/03/18 12:45:04
>>22
そもそも
setCurrent(new Canvas())
って、ボタン押毎に新インスタンス作ってどーすんの?
というわけで、疑うべきはアンタのJava理解度ですから!残念!
切り替えはメイン(IApplicationとか)でPanelとCanvasインスタンス作って
PanelにはCanvas、CanvasにはPanel、のインスタンスを教えてやり
切り替えは PanelではsetCurrent(Canvasのインスタンス) とかやれ。斬り!
25デフォルトの名無しさん:05/03/18 13:32:16
最近エスパー頼みの質問が多いな。

そういうのは板違いだから超能力板でやっておくれw
26デフォルトの名無しさん:05/03/18 13:37:55
>>23
ありがとうございます。
反応しないというのはキーを押してもprocessEventの中の
getKeypadStateがキー値を受け取ってくれなかったいうことです。
そのためソフトキーを押しても反応が無くて困ってました。
画面はCanvas>Panel>Canvasと切り替わっています。
うまく伝えられなくてすいません。

>panel.setSoftKeyListener(null);
これやってませんでした。
早速試してみたいと思います。
ありがとうございました。

>>22
http://www.ne.jp/asahi/hishidama/home/tech/iappli/iappli.html
ココを見て真似て書いてみたんですが
ボタンを押すたびにインスタンスを作ってはいけないのですね。
27デフォルトの名無しさん:05/03/18 14:03:09
アンカー間違えました。>>22ではなく>>24です。
JAVAの理解度と言われると正直何も分かってないに等しいです。

それで早速試してみたんですけどエミュレータが起動するところで固まってしまいました。
画面は起動時の緑色の画面のままです。
電源ボタンすら無反応なのでAlt+F4で終了しました。

IApplicationクラス{
コンストラクタ{
Canvas c=new Canvas()
Panel p=new Panel()
}
start(){
setCurrent(c)
}
}
Canvasクラス{
コンストラクタ{
Panel pa=new Panel()
}
}
Panelクラス{
コンストラクタ{
Canvas ca=new Canvas()
}
}

28デフォルトの名無しさん:05/03/18 14:10:50
エミュでは起こらないのですが
端末では画像を取り込んだ場合(ImageStore.selectEntry();使用時)
エラーが起こる場合があるんですが、取り込むファイルサイズがある一定のサイズを超えたらエラーが起こるような感じです。
どなたかその一定サイズをご存知の方はおられないでしょうか?
よろしくおねがいします。
29デフォルトの名無しさん:05/03/18 14:50:31
>>28
どの端末かくらい言え・・。全部なのか、一部なのか。
少なくとも起きてる機種くらい言え。
30デフォルトの名無しさん:05/03/18 15:10:44
>>29
えーN901icです。
すみません。
31デフォルトの名無しさん:05/03/18 15:25:27
割り込みスマソ
スクラッチパッドからイメージを取得していますが、lengthが効いていません。
1324バイトのGIF画像なんですが、210とか5437とか指定しても1324バイトぽっきり読み込みます。画像もちゃんと表示されます。lengthは付けても意味はないのですか?DoJa3.5です。
3224:05/03/18 15:47:09
>>26
ソース丸々有るならいっそ丸写しでやってみんさい。
それでダメならそのソースの作者にでも聞いてみれ。こっち振るな。
そのサイトでも、最初の方(一番簡単な)では setCurrent(new〜) じゃないろ?
何で後半そうなったかは知らんけど・・。彼もまた勉強中ってことかいな。

オイラ実はMIDP専門でiアプリ初めて触ってみたんだけど
ttp://up.isp.2ch.net/up/461cc9c15e42.lzh
で動いた。でも26のままでも一応動いてた。アリ?エミュ(4.0)だから?
ンマー、とりあえずこれで試してみて。あとは自習で。

>>31
意味無いわけがあるかー!ウソテッククイズかよ!
多分、書き方が悪いか端末が悪いかのどっちかだろ。
とりあえず、イメージ取得する部分のソースと機種名書いてみそ。
33デフォルトの名無しさん:05/03/18 15:51:15
orz もうね、実機でバグって言ってるのに実機名書かない奴とかわけわかんない
34デフォルトの名無しさん:05/03/18 16:02:15
>>30
実際何がやりたいのかすら判らんが、
その呼び出そうとしてる画像は通常の画像なのか?
再配布不可識別子が不可に設定されてれば
アクセスした時に弾かれる。
selectEntryの時にサイズうんぬんは関係ないはず。
出してくる例外をキャッチしてトレースしてみろ。

再配布不可能の設定をアプリで変更して
配布可能にしようとか考えてるんじゃないだろうな?

イメージ取り出して使うときにはサイズは機種依存。
3.0以降なら240*240に抑えておくべき。
35デフォルトの名無しさん:05/03/18 16:10:10
質問するときの注意

・エラーが起きたのなら、エラー内容くらい書け。NullPointerExceptionとかそういうやつだ

・実機でバグというのなら、その実機名くらい書け

・回答者はお前じゃない。詳しく書かなきゃわからない

・可能ならばソースをコピペしろ
36デフォルトの名無しさん:05/03/18 16:24:12
>>32
すみません,今210にしたらcom.nttdocomo.ui.UIException
でした
mdaImg = MediaManager.getImage("scratchpad:///0;pos=" + SP_IMG + ",length=5437");
N900i,N503iです
37↑31:05/03/18 16:25:35
でした,書き忘れてました
3828:05/03/18 16:35:57
>>34
>その呼び出そうとしてる画像は通常の画像なのか?
通常の画像です。
ネットで探してきた画像は読めるのですが、
カメラで撮影した画像は読めないみたいです。
やはり240×240を超えたらだめなんでしょうか?
39デフォルトの名無しさん:05/03/18 16:39:51
>>27 まさに何も分かってない。
エミュレータで行き当たりばったりに試す前にまずJavaやMIDPの参考書、
Java解説サイトなりを読んで理解度を高めるのが先。質問はそれからにしな。
4024:05/03/18 16:42:05
>>36
実際のサイズより小さい数ならともかく、大きかったら意味無い希ガス。
んで、小さい数(210)にしたらエラー(210Bではファイルが成立しない)。
うん、当たり前の結果じゃないかな?違うかい?
41デフォルトの名無しさん:05/03/18 16:55:30
>>38
そのソース全部でなくていいからImageStoreクラス使ってる
関連性のある部分だけ提示して、どの部分でエラーが返ってるのか
ぐらいは教えてくれ・・・手間過ぎる。
イメージ取得で落ちてるのか、オブジェクト取得で落ちてるのかすら判らん。

ちなみにiアプリで使える画像サイズは色々ありすぎて一言では言えん。
N901iCなら320*320以上の画像は扱えないはずだし
画像サイズが320*320以下でもファイルサイズ制限もある。

表示してるキャンバスの画面サイズに依存する機種もあれば
メモリの空き次第でいくらでも使える機種、
もとから1500*1500を超えるようなデカイ画像を扱える機種
縦と横のサイズではなく面積で決まる機種など千差万別。
どれでも動かしたいならキャンバス画面サイズ
以上の画像を扱わないが吉。
42デフォルトの名無しさん:05/03/18 17:05:41
>>31
lengthの意味を勘違いしてないか?
lengthで指定した範囲を読むと宣言するだけで
実際に読んでるわけじゃない。
この宣言ってのが機種によって解釈が違うかもしれないが根本的には
「その範囲を読み込むのに必要なメモリを確保する」ってことだろ?

つまり大きい値をしてしてもその範囲を読んでるわけだから関係ない。
たんなるメモリの無駄遣いにしかならん。
もし小さい値を指定しても読めるならメモリを細かくやりくりしてる
かも知れないし、単純にエラー出すかもしれない。
どっちにしろ、値はわかってるなら正確に入れろってことだ。

ちなみにN503iはDoJa3.5じゃない。
個人的に3.0以降でしかlength使ってないが・・・それ以前に効果はあるのだろうか??
43デフォルトの名無しさん:05/03/18 17:58:16
>>32
わざわざソースまで用意して頂きありがとうございます。
参考にさせて頂きます。
44デフォルトの名無しさん:05/03/18 20:12:47
void check(){
Dialog dialog = new Dialog(Dialog.DIALOG_YESNO, "確認");
dialog.setBackground(4);
dialog.setText("〜〜〜
ダイアログの背景色が,どんな値を指定しても黒になってしまいます。なにがおかしいんでしょうか??
45デフォルトの名無しさん:05/03/18 20:40:32
>>44

4だと「ほぼ黒」だと思うけど。
0xffffff
だと白になります?
46デフォルトの名無しさん:05/03/18 20:43:55
>>44
色をしめすintの中身は機種依存。
きちんとGraphics.getColorOfRGB(r, g, b)しる
47デフォルトの名無しさん:05/03/18 20:47:51
>>45
出来ました!色指定について大きな勘違いをしていました,ありがとうございました
48デフォルトの名無しさん:05/03/18 20:51:05
>>46
それでも出来ました,助かりました
49デフォルトの名無しさん:05/03/18 21:38:30
>>23
> panel.setSoftKeyListener(null);
> をしてないだろう?
> それではいつまでもpanel側にソフトキーのイベント受信権を奪われたままだ。
そんな馬鹿な。
ソフトキーもカレントのフレームにイベントが飛ぶはず。
それともそんな腐った機種があるの?
50デフォルトの名無しさん:05/03/18 22:47:07
>>48が後に
「実機でなぜかフリーズして困っています」、という質問をしてくる

に100Kバイト
5128:05/03/18 23:01:38
>>41
ご丁寧にありがとうございます。
ソースは以下の通りです。
ImageStore w_imagestore = ImageStore.selectEntry();
int w_id = w_imagestore.getId();
w_in=w_imagestore.getInputStream();
w_out=Connector.openOutputStream("scratchpad:///0;pos="+spsize);
w_data=new byte[128];
while((w_length=w_in.read(w_data))!=-1){w_out.write(w_data,0,w_length);}
w_in.close();
w_out.close();
52デフォルトの名無しさん:05/03/18 23:28:46
>>50
大丈夫でした
53デフォルトの名無しさん:05/03/19 00:19:33
54デフォルトの名無しさん:05/03/19 01:07:22
90X専用なんで、大丈夫ですよ
55デフォルトの名無しさん:05/03/19 01:15:56
確認して味噌
間違いなく駄目な機種がある
56デフォルトの名無しさん:05/03/19 02:34:35
>>51
何か、少し前に、このw_をprefixに付けてるソースを見たことがあるなw
57デフォルトの名無しさん:05/03/19 08:24:55
>>55
もういいよ…放っておこう
58デフォルトの名無しさん:05/03/19 13:21:52
>>57
すみませんが、どういう意味ですか?
Graphics.getColorOfRGBで指定するのは間違っているんでしょうか?
59デフォルトの名無しさん:05/03/19 13:31:22
>>57
もういいよ…2人とも放っておこう
60デフォルトの名無しさん:05/03/19 13:51:24
エミュレータでスクラッチパッド以外のファイルを出力する方法はありませんか〜〜
61デフォルトの名無しさん:05/03/19 15:18:29
HTTPサーバーにPOSTしてファイル作ってもらえばいいんじゃない?
62デフォルトの名無しさん:05/03/19 17:18:20
通りすがりだが
>>48が全ての発端だな。

「それでも出来る」んじゃない。そうしなきゃだめなんだ。

まぁ
この件はこれで終わりな。よいこたち。
6344:05/03/19 19:00:25
>>62
すみません某サイトでその理由が書いてありました
お騒がせしました
64デフォルトの名無しさん:05/03/19 22:28:19
>>63
某サイトってどこだよ?
その理由ってなんだよ?

自分が嵌って聞きに来たんだから、何がいけなくてどうやって解決したのか、
サマリぐらいはここに書くのが礼儀ってもんだ。
65デフォルトの名無しさん:05/03/19 23:40:25
引っ張るほどじゃないし放置でいいから
↓次の質問ドゾー
66デフォルトの名無しさん:05/03/20 00:08:28
>>63
お願いだから、情報をもってくだけじゃなくて出していってくれ。
そんな細かいことまで書いてある「某サイト」のURLという情報をもってるんじゃないか…
67デフォルトの名無しさん:05/03/20 01:35:29
教えてくださいと素直に言えw
68デフォルトの名無しさん:05/03/20 01:53:52
一般的に言えば書いた方がいいだろうけど
今回のようにリファレンス読めばわかるような
常識的なことをわざわざ書かれてもねェ…。
69デフォルトの名無しさん:05/03/20 02:26:12
あれだ、
情報書いてくれというのは
「教えてください」じゃなくて
「礼儀をしれ」という意味だ

はずかしいっ!(おすぎ調)
70デフォルトの名無しさん:05/03/20 14:02:30
505以上の機種は複数のスクラッチパッドにアクセスできるんですか?
71デフォルトの名無しさん:05/03/20 16:08:10
>>70
論理的にひとつのスクラッチパッドを分割できるだけです。
ディスクをパーティションに分けるのと似ている。
72デフォルトの名無しさん:05/03/20 16:48:23
スクラッチパッドに関する質問があります。

Doja3.5で最大409600バイトのスクラッチパッドにアクセスする場合、
全部をひとつのスクラッチパッドにする事はできるのですか?

それとも例えば
ひとつのスクラッチパッドの上限は256K、とかいう風に決まっているのでしょうか

つまり400Kバイトをフルに使いたい場合
スクラッチパッドは分割して複数持たなきゃいけないのでしょうか?
73デフォルトの名無しさん:05/03/20 17:00:39
開発者ガイドのP117に書いてある。
よく読め。
74デフォルトの名無しさん:05/03/20 21:05:40
MediaSound ms = MediaManager.getSound("URI");
として音楽を取得していますが,音楽は複数ファイルあるので,msを配列にして扱いたいのですが,
MediaSound[] ms
これは明らかにおかしいですよね。どうすれば良いのでしょうか。
75デフォルトの名無しさん:05/03/20 21:22:17
勘違いしていました,MediaSoundはインスタンスが生成できるんでした
MediaSound ms[] = new MediaSound[20];
76デフォルトの名無しさん:05/03/21 00:34:06
>>75
それは配列のインスタンスを生成しているだけで、MediaSoundインスタンスを生成してるわけじゃない。

まあ、結論としては、 >>75 で配列を初期化した後に、
forループで複数回MediaManager.getSound()すればいいんだけどね。
7774:2005/03/21(月) 10:06:35
>>76
JAVA自体の理解が間違っていました。ありがとうございました。

すみませんがもう一つ質問です。こうするとConnectionException Unexpected I/O connectionになってしまいます。
ms[0] = MediaManager.getSound("resource:///01.mld");
try {
  ms[0].use();
} catch(IOException) {
コンパイル時にresフォルダに01.mldがあり、単体でうpしても正しく再生できます。何か考えられる原因はありますか?
78デフォルトの名無しさん:2005/03/21(月) 12:53:01
AudioPresenter[] music = new AudioPresenter[20];
for(i=20;i>=0;i--){
music[i]= AudioPresenter.getAudioPresenter();
MediaSound ms = MediaManager.getSound("resource:///"+i+".mld");
ms.use();
music[i].setSound(ms);
}
こうじゃないの?
MediaSoundを配列にする意味ってあるのかな
79デフォルトの名無しさん:2005/03/21(月) 17:48:35
>>78
動くならそれでもいいかもね
試してないだろw
8074:2005/03/21(月) 19:00:34
やはりms.use()で同じエラーが出てしまいました
8174:2005/03/21(月) 19:27:59
すみません解決しました
ファイル名をSystem.out.printlnするとresource:///01.mld.mldとなっていました
82デフォルトの名無しさん:2005/03/23(水) 00:20:32
初心者質問ですみません。
iアプリを作りたくて、JAVAを始めたものです。
いま使っているバージョンが1.4なのですが、
iアプリ開発キットに対応した1.3を
混在させても大丈夫でしょうか?
それとも1.4を削除して新たに入れたほうがいいのでしょうか。

83デフォルトの名無しさん:2005/03/23(水) 00:25:42
>>82
1.4でOK

または、
javac -target 1.3
84デフォルトの名無しさん:2005/03/23(水) 00:50:25
>>83
レスありがとうございます。
さっそくやってみます。
85デフォルトの名無しさん:2005/03/23(水) 10:54:15
しばらく書き込めなかったぞっと。板のURLかわっとるし・・・。

>>51
>>41でソース表示して〜と書いてあるが、
どこでエラーがでるのか?とも聞いてるだろ?
実機でのトレース情報の表示の仕方がわからないとか?

ソース抜粋してるだけで実際やってるか判らないが
ざっと見た感じまずはw_imagestoreの中身がnullかどうか調べる必要性がある。
なぜか使っていないIDを取得してる。
イメージ取り出しをしてないから画像の大きさでんでんは関係なさそうな気がする。
読み込みつつ書き込みしてる部分はtry〜catchすべき。
とか気になったがどこでエラーでるか判らないと話しにならん。

実機でのトレースはADFのAppTraceの項目をonにして
怪しいところにprintlnをつかっておくべし。
エラー出たあと、実機にてどこかでその出力した文字列見れるから探してみなさい。
e.toString()などエラーをキャッチして出力するようにすればなおよし。
86デフォルトの名無しさん:2005/03/23(水) 11:37:42
ちょっとお聞きしたいんですが、Tickerで表示できる文字列の長さって機種依存とかあります?
エミュで表示できても携帯だと切れちゃったりするんで・・・。
87デフォルトの名無しさん:2005/03/23(水) 11:43:46
Tickerってのが何を言いたいのかわからんが、
drawStringで描ける文字列の長さにはN機種で制限がある。
88デフォルトの名無しさん:2005/03/23(水) 12:06:32
すんません、Panel型なんでcom.nttdocomo.uiのTickerクラスです。
String strにだいたい40文字くらい入れてTicker.setText(str)で表示しても
途中で切れちゃうんで困ってました。
TextBoxなら大丈夫なんだけど場所食って仕方がない・・・。
89デフォルトの名無しさん:2005/03/23(水) 13:01:37
あー、そんなクラスあったんだー…。
とりあえず切れちゃったという実機をあげてみ。
90デフォルトの名無しさん:2005/03/23(水) 13:24:39
N505iです。30文字くらいから切れてる感じです。
91デフォルトの名無しさん:2005/03/23(水) 13:56:11
Nだからじゃねーかなー…。
あー。確かdrawStringの制限が、372ドットだっけ?
全角で31文字までだねぇ。
それと同じなんじゃないかな(苦笑
92デフォルトの名無しさん:2005/03/23(水) 14:01:59
あぁ、それっぽい。31文字は厳しいなぁ。
どうもありがとー。
93デフォルトの名無しさん:2005/03/23(水) 16:14:06
Labelを自力で書き換えまくるとか。できたっけ?
そんな方法しかないと思われ。

NのPanelが、drawStringを使いまわしてしかも欠点を放置してるってのが丸分かりな自称でしたね…。
Canvasで使う自作テロップでは、Stringを30文字ずつくらいで自動分割
してくれるように作ったよ。あほくさかった…。
94デフォルトの名無しさん:2005/03/23(水) 16:44:21
つFont#getLineBreak()
95デフォルトの名無しさん:2005/03/23(水) 17:37:33
とりあえず全角カタカナを半角カタカナに変換してなんとか収まりました。
初アプリなんでとりあえずPanel型から始めてみました。
Canvas型も勉強しないとなぁ。
96デフォルトの名無しさん:2005/03/23(水) 17:40:15
>>94
何を言いたいのかさっぱりわからんぞ?
97デフォルトの名無しさん:2005/03/23(水) 17:46:00
>>93
901系は、ほぼ全機種Labelの書き換えが遅い。504で問題なかったコードが901に載せた
とたんに遅くなった。
LabelをPanel上にずらっと並べてsetText()すると、1つ書き換えるごとにページ全体を
書き直してるっぽい動作をする。

なんか、仕様の統一でもあったっけ?
98デフォルトの名無しさん:2005/03/23(水) 17:56:13
eclipseを使って開発したいのですが、
ユーザーズガイドにしたがってサンプルを入力して
ビルドして実行しようとすると
com.nttdocomo.eclipse.DoJaBuildExeption: Fail to create
というエラーがでて実行できません。
なにかポイントとかあったら教えていただけないでしょうか。

環境は、
DoJa4.0
eclipse2.1.2
J2SE v1.4.2_07 SDK
です。
99デフォルトの名無しさん:2005/03/23(水) 20:01:27
J2SE SDKのbinディレクトリにパスを通してみてちょ。
100デフォルトの名無しさん:2005/03/23(水) 23:54:33
iアプリでサウンドを作曲したいのですが、必要なツールなど詳しい方、
お薦めツールなど教えてくださいm(__)m
101デフォルトの名無しさん:2005/03/23(水) 23:59:42
普通に着メロ作るのと同じだからそっち系のサイトとかスレを探したほうがいいよ
102デフォルトの名無しさん:2005/03/24(木) 03:47:11
保守しとくか
10398:2005/03/24(木) 11:54:52
>>99
パスを設定してみましたが状況は変わりませんでした。
もしかして、eclipseの中で設定する項目があるのでしょうか?
よかったら教えていただけるとありがたいです。

iαppliTool for Doja-4.0の方ではビルド、起動ともにできるのですが・・・
ユーザーズガイドにしたがってやってるだけなので、
どこかに見落としとかがあるのかと思いますが見当がつかない状態です。
見落としやすいポイント、嵌りやすいポイント等あれば教えていただけますでしょうか。
104デフォルトの名無しさん:2005/03/24(木) 12:19:23
中途半派なやつに限ってエラソーに言う。
105デフォルトの名無しさん:2005/03/24(木) 13:26:05
>>104
それが嫌ならよそで聞くんだな。
106デフォルトの名無しさん:2005/03/24(木) 14:25:50
>101さん
100です ありがとうございます。チャクメロで調べてみます。

107デフォルトの名無しさん:2005/03/24(木) 15:56:38
質問があります
配列を適当に並べ替えるにはどうすれば良いですか?
調べてみて、Java.util.ArrayListとJava.util.Randomを使って配列の要素を適当に抜いていく方法を考えたのですが、どうも携帯Java(J2ME?)では「シンボルを解決できません」になるので…
108デフォルトの名無しさん:2005/03/24(木) 16:07:05
…ランダムなんか、ネットにころがってるiアプリのコードにいくらでも載ってると思うが…
109デフォルトの名無しさん:2005/03/24(木) 16:32:07
>>107
Randomr = new Random();
int n = r.nextInt();
で好きなだけランダムにどぞー。


質問です。
F900iでアプリを動作させていたところ、唐突に画面がスローモーションになり、なかなか治らなくなってしまうという現象がおきました。
その後スローモーションな中アプリを動作させつづけ、
画像の解放と読み込みを大量に行ったところ元に戻りました。

また、強制終了キーを押してダイアログを出し、Noを選んで続行するという行為でも戻るようです。

原因が何か思い当たるかたいらっしゃいませんでしょうか?

スローになる原因としては、タイマーかなと思ったのですが
System.currentTimeMillis() で前フレームとの時間の差を調べ、100ms以上なら新しい描画へ進むとやっているだけのため、
時計が狂ったとはちょっと考えづらいです。
110107:2005/03/24(木) 16:41:39
>>108
大きい順・小さい順に並べ替えるものなら見つかるのですが…

>>109
言い忘れていました。
重複してはいけないのです。すみません。
111107:2005/03/24(木) 16:58:01
説明不足でした。
int[] hoge = {1, 2, 3, 4, 5, …}という1から500までの要素数500の配列があって、これを{102, 398, 23, 447, 163, …}というように並べ替えint[] mogeに代入したいのです。
r.nextInt() を2回使って要素を入れ替えていく方法を考えたのですが、実際に1000回それをやってみると、入れ替わらなかった要素がたくさんできてしまいました
112デフォルトの名無しさん:2005/03/24(木) 17:00:57
おいおい。そこまで聞くんかい。
そりゃiモードスレで聞く質問じゃないだろ。アルゴリズムスレにでも行って怒られてきなさい。
113デフォルトの名無しさん:2005/03/24(木) 17:21:56
>>111
> 入れ替わらなかった要素がたくさんできてしまいました
入れ替わらなかった理由は考えたのか?
114デフォルトの名無しさん:2005/03/24(木) 17:23:59
>>111
悪い手本だけしめしておいてやる。
悪いことは言わないからこの手の質問は別でやれ。

int hoge[] = new int[500];
int moge[] = new int[500];
int i,j,z;
for(i = 0;i < 500;i++)
  hoge[i] = i+1;
for(i = 0;i < 1000;i++){
  j = (java.lang.Math.abs(ran.nextInt())) % 500;
   z = hoge[j];
  hoge[j] = hoge[(i%40)];
  hoge[(i%40)] = z;}
for(i = 0;i < 500;i++)
  moge[i] = hoge[i];
115デフォルトの名無しさん:2005/03/24(木) 17:24:39
…正直これくらい自力でできないようじゃプログラミングは厳しいと思うんだけど…
116デフォルトの名無しさん:2005/03/24(木) 17:26:01
>>114
まちがった。
%40と書いてるところは%500な
117デフォルトの名無しさん:2005/03/24(木) 17:30:49
>>115
禿同
どうせ同じような質問を繰り返すに違いない
118デフォルトの名無しさん:2005/03/24(木) 17:31:19
>>109
とりあえず適当なとこにgcかな?
119デフォルトの名無しさん:2005/03/24(木) 17:36:37
…ちと厳しすぎたかな?
まぁこういうのはパズルだと思って楽しんでやることだ。慣れもあるしね。
120デフォルトの名無しさん:2005/03/24(木) 17:38:31
>>109
タイマーが遅くなるってのは確かに考えにくいな。システム時間を返すものだし。
実際他の機種あればそれらでもなるのか試して欲しいところだけど。
時間関係で狂うとすれば前フレームの時間を格納してる値が途中で変更されるくらいか。

思いつくのはメモリ関係だろうかね、やっぱ。
適度にgc()かましてみると改善されるやも知れない。
でもまぁgc()かますと処理落ちも考えねばならんが。

あと思いつくのは・・・並立して処理させてるスレッドがあるなら
その部分でやたら重いことやってるとか・・。
121109:2005/03/24(木) 17:39:11
>>118
ゲームが進んでく中で、ちょびっとの画像解放と取得は行っており、
そこでGCは行っているのです。が、直りません。

109に書いたとおり、大量の読み書き(+GC)が行われると直るようなのですが…。

gcは実機の実装の仕方が機種毎で違うとは思いますが、
一回GCかけるだけではお掃除が終わらず、2回3回かけなきゃならんということはあるのでしょうか…。
122109:2005/03/24(木) 17:42:37
>>120
D900、N900、P900ではとりあえず起こらないようです。
gcはまったくやっていないわけではないのですが、gcを行う場所を経過してもスローが直りません。

別スレッドはありませんし、processEventではキー情報を見てるくらいで軽いです。

一番あやしいのはずっと裏で鳴らしているBGMかもしれません。
なり終わったらStopし、再度最初から鳴らすことでBGMとしています。
123111:2005/03/24(木) 17:49:14
レスありがとうございます>>112
スレ違いでした、失礼しました
>>113
はい、取ってきた2つの乱数が偶然同じ時、添え字がどの乱数にも出ない時だと思います
>>114
ありがとうございます。i%50で、hoge[50]〜[499]までが入れ替わらないのが駄目なのでしょうか
>>115>>117
プログラミングを辞めろということですか?そのつもりはありません。
124デフォルトの名無しさん:2005/03/24(木) 17:59:22
これくらい自力でとかないと、コピペしかできないプログラマーになっちゃうよ。
と心配してるんだよ。
125デフォルトの名無しさん:2005/03/24(木) 18:04:39
ん〜メモリが原因ってのはあってると思うんだが…正直、gcあんまりしなくていいアプリばっか作ってるからよくわからん;
126デフォルトの名無しさん:2005/03/24(木) 18:05:27
>>121
127デフォルトの名無しさん:2005/03/24(木) 18:19:50
>>123
ごめ・・114だけど言ってる意味が判らない。
君のソースを見たわけじゃないからi%50が〜って言われてても判りません。
ちなみにi%40ってのは間違いだって>>116にて訂正してるからね。

他の連中が君にプログラムやめろと言ってるのではなく
乱数や配列の操作はプログラムの基本中の基本。いわば掛け算の九九のようなもの。
そこがわからないと質問してるのだからもうちょっと基本部分から勉強しなさい
と言いたいわけ。質問する事は悪くないがもう少し自分で考えてみれば
判る部分だって事なのよ。

アドバイスとしてはプログラムが思い通りにならない場合、出来る限り
自分の手で配列要素がどう変化するのか紙の上で書いてみなさい。
500とかでなくていいから10とか小さい単位で。
実際にどう変化してるのか自分の手でやってみる、これトレースといって基本だから。
>>123にて君は「添え字がどの乱数にも出ない時だと思います」という答えを出してる。
そこから考えを発展させれないならプログラマとしてはかなり厳しいよってこと。

全部の要素を最低でも1回は計算の対象にしたいなら計算に用いる2つの要素を
総てランダムでやるとダメ。なら片方はランダムじゃない数値を使えば・・っと発展させる。
128デフォルトの名無しさん:2005/03/24(木) 18:25:11
>>122
むむむ・・・他の機種、しかもメモリが厳しい機種で問題なしときてるか・・。
BGM部分のプログラムは予想だけど問題なさそう。
多分、コンプリートイベント受け取ったら再生しなおすだけしかしてないっしょ。
気になるならMLDファイルを変更してみたり、完全に再生とめたりしてみることかな。

処理全体は遅くなってしまうが、デバックとしてフリーメモリを計測して画面上に常に
表示してみると遅くなったタイミングとあわせてメモリが原因かわかるかも。
でも断片化率はわからないから・・・見当はずれかも知れないな・・。

言ってる通りgcの動作内容は機種によって違うらしいな。詳しくないけど。
解放と確保を細かくやってる以上断片化は避けれないだろうけど・・・。
129109:2005/03/24(木) 18:56:14
>>128
おっしゃるとおり、BGMの処理はコンプリしたら再生しなおすだけです。
今日もこれからそれについてもっと調べないと…。
何かわかるかたがいらっしゃったら、アドバイスお願いいたします。
130111:2005/03/24(木) 19:33:23
>>124
誤解してすみませんc
>>127
成る程!ほぼ入れ替えることが出来ました!
実は、PerlとPHPを初めて半年で,配列の操作も関数で簡単にやってました。Javaは3週間しかしておらず、オブジェクト指向でう〜ん?という状態で、配列のことは頭にありませんでした。
良い話を聞けました。本当にありがとうございました。
13198:2005/03/25(金) 11:06:34
>>99
再起動したらうまくいきました、パスの更新がされてなかったみたいです。orz

ありがとうございました。
132デフォルトの名無しさん:2005/03/25(金) 14:42:16
アプリを製作して公開したんですが、
SH900iのユーザーの方からダウンロードしたアプリが携帯のデータフォルダから削除できないとの報告がいっぱい来てしまいました。
削除しようとすると「削除できませんでした」とエラーが出るようです。
これはかなり致命的なバグだと思うのですが、みなさんこのような報告を受けたことありますか?

133デフォルトの名無しさん:2005/03/25(金) 15:07:23
>>132
ない。
だがSH900はシステムのバージョンアップしてないならするように言ってみれ。
ファイル名とかADF内とかに特殊な文字とかあるのかもなぁ、そんなんじゃないだろうが。
134デフォルトの名無しさん:2005/03/25(金) 15:09:17
>>132
逆に、SH900iでダウンロードできないっていう苦情が時々来る。
アプリケーションマネージャがクズクズっぽいね・・・orz
135デフォルトの名無しさん:2005/03/25(金) 15:25:10
>>132
しかし、アプリ製作者に非は無いと思うな。
その苦情はメーカーだろう。
136デフォルトの名無しさん:2005/03/25(金) 15:49:36
他の機種では動くのにSHだけ動かないとかしょっちゅうある。
ダウンロードできないって報告もかなりあった・・・
137デフォルトの名無しさん:2005/03/25(金) 18:26:46
>>132
削除できないって苦情来た事あるよ。
アプリの名前に特定の文字が含まれていると、
削除もバージョンアップもできなくなるバグがあるらしい。
SH900iで再現確認した。
138デフォルトの名無しさん:2005/03/25(金) 19:28:55
>>137
再現できたなら特定文字教えてホシイ
つか、削除できないって嫌がらせだな
139デフォルトの名無しさん:2005/03/25(金) 20:36:46
SH900iでのjamの特定文字不具合については過去ログで詳しく報告が出てる
140デフォルトの名無しさん:2005/03/26(土) 00:42:12
\(0x5C)を含むアプリ名が怪しいらしい
昔のスレで出てたのは「ゴルフスコア表」だとダウンロード出来ないという不具合
法則性が見つかりかけたけど、その後例外が見つかったんでまだ未確定だったと思う
差し支えなければアプリ名を教えてホスイ‥
141137:2005/03/26(土) 06:47:28
バグを踏んだアプリは
AppName=藪の中
だった。
どの文字が駄目なのかまでは調べてない。
142デフォルトの名無しさん:2005/03/26(土) 14:41:24
apre[i] = AudioPresenter.getAudioPresenter()でBGMとSEを再生していましたが、エミュではapre[0].play(); apre[1].play();としても両方再生されましたが、実記(N900iS)ではapre[0]がstopしてしまいました。
apre[i] = AudioPresenter.getAudioPresenter(isSoundEffect(i) ? 1 : 0) //SEはポート番号を1に,BGMは0に
でポートを分けたところ、音質が激しく劣化し、,音割れまでしてしまいました。エミュでは普通に再生されました。
APIレファレンスのAudioPresenterの項目を見ると2つまでは同時再生できるようですが、どうしてこうなってしまったのですか?
143デフォルトの名無しさん:2005/03/26(土) 15:42:24
>>142
Nでは、複数同時再生させるためにはmldデータ(というか元のMIDIデータ)が
制限事項を守っている必要がある。
詳しくはMFiToolsのNプラグインのマニュアルを読め。
144デフォルトの名無しさん:2005/03/26(土) 18:21:46
mldはコンバートすりゃいいってもんじゃないからな。
ちゃんと考えてデータを作りなさい
145142:2005/03/26(土) 22:21:38
すみませんが、MFiToolsとは何ですか?
ググりましたが、公式ツールというのは分かりましたが本体は出ませんでしたorz
146デフォルトの名無しさん:2005/03/26(土) 22:37:28
>>142
MfiToolsはこのスレに書くにはかなり意地がわるい回答だよ
ttp://smaf-yamaha.com/jp/tools/nec/tools.html
ここでATS-MA5-Nの各種ドキュメントとツールを見てみるといい
コンテンツ制作ガイドライン for Mfi/Phraseというドキュメントに書いてあるから
147デフォルトの名無しさん:2005/03/27(日) 08:10:27
>>145
コンテンツ・プロバイダやメーカーに配布されている
メロディーファイルの作成・編集ツールだったと思うが。
普通の人は入手できません。
148142=145:2005/03/27(日) 20:57:39
複数のポートを使う時、FM音源のNに限ってはPsmPlayerではうまくいかないようですね。
>>146
落としてきました。N専用ツールがあったんですね。ありがとうございます。知りませんでした。
for Mfi/Phraseというのが見つからず今探しています
とりあえず、MIDIファイルを読み込んでmldで吐いてみましたが、中の人が何か操作しているようで、曲によっては(音割れはしませんが)元のMIDIとは違うものになってしまいました。自作の単純なものではたいした差はないのですが…
>>147
そうでしたか(´・ω・`)残念です。
149デフォルトの名無しさん:2005/03/28(月) 06:14:43
http://www.itmedia.co.jp/mobile/articles/0503/23/news020.html
このムービーってどうやって再生してるんだろう?
150デフォルトの名無しさん:2005/03/28(月) 08:33:25
iモーションのストリーム再生じゃない?
151142:2005/03/28(月) 10:50:21
APIリファレンスを見ていると、com.nttdocomo.opt.ui.AudioPresenter2の中に
setAttribute(AudioPresenter2.TRACK_ASSIGNMENT , 〜〜〜)
というのがあり、,N900は対応していたので使ってみたところ、
com.nttdocomo.ui.UIException
: Unknown media sound format が出てしまいました。
音声ファイル自体は今まで使っていたもの、>>146さんに教えていただいたソフトからコンバートしたもの、両方を試してみましたが駄目でした。MIDIファイル自体を使っても同じでした。
何が原因なのですか?
152デフォルトの名無しさん:2005/03/28(月) 10:54:12
質問失礼します。

自作のiアプリで個人的なメモ帳と言うか収支表のような物を作っていて
使っているのですがスクラッチパッドにセーブしている容量は11,904byte。
約12kbあるわけですがコイツをアプリ以外の場所に格納する方法は無いでしょうか?
やりたい事は、機種交換の際いままで記録したデータをなんとかして
新しい機種へ移行させたいと言う事なんです。

今までの入力を全部メモって手打ちでやり直す方法もありますが・・・。
かなり過去に方法は書かれていませんがJPEGなどに偽装して
SDなどに記録する、もしくは呼び出すとかいう話題があったので
そういった方法のやり方、もしくはサイトなど知ってる方居ませんでしょうか?
153デフォルトの名無しさん:2005/03/28(月) 11:19:58
>>152
ネットワーク経由でどっかに書き出すのがいいんじゃないか?
バージョンアップならスクラッチパッドは消えないし。

サーバ側は、POSTで受けたデータをファイルに吐き出すスクリプトを
phpかなんかで書けばいいし。
154デフォルトの名無しさん:2005/03/28(月) 11:29:18
>>153
やっぱりそうなっちゃいますかねぇ。
情けない話、CGIやPHPなどサーバー上で動くプログラムの
自作の経験は皆無でして…少々自信が無かったわけです^^;
とりあえずはPHPを勉強すべきみたいですね。
155デフォルトの名無しさん:2005/03/28(月) 11:30:45
>>142
MIDI(SMF)で使用するチャンネルを、1〜8に制限しないとだめ。
ふつうはドラムが10番に割り当てられているので、どっか他のチャンネルを
ドラムにするなどの工夫がいる。
156142:2005/03/28(月) 13:01:51
>>155
なるほどそうでしたか…
実は、1〜18までフルに使っていました
なんとか丸め込むことにします。ありがとうございました
>>154
コピペする方法もありますよ。
157デフォルトの名無しさん:2005/03/28(月) 13:39:03
>>156
コピペ??
158デフォルトの名無しさん:2005/03/28(月) 15:00:43
コピーして貼りつけ(ペースト)
文字入力画面の、機能とか、メニューとかにあるはず
159デフォルトの名無しさん:2005/03/28(月) 15:07:14
>>158
おもしろい!
160デフォルトの名無しさん:2005/03/28(月) 16:30:14
アプリゲットでアプリ削除できん、糞ゲーって書いてた香具師がいたw 作者ガンガレ
161デフォルトの名無しさん:2005/03/28(月) 16:32:50
そうだそうだ。
削除できないのは作者のせいじゃないだろう…

作者はがんばれ
162デフォルトの名無しさん:2005/03/28(月) 18:15:17
500KBフルに使って削除できないバグ?起こせばちょっとしたウイルス気分
163デフォルトの名無しさん:2005/03/28(月) 20:45:37
>>142 >>155
ちょっと違う。
NのAudioPresenter2は、Phrase形式というMfiToolsじゃないと出力できないファイル専用
146のツールで作った物を使うにはAudioPresenter(port)じゃないとダメ
AudioPresenter2.TRACK_ASSIGNMENTというのは使ったことないけど、
適用できないなら対応しててもデータフォーマットとの組み合わせで使えないと考えるべき
164デフォルトの名無しさん:2005/03/29(火) 15:54:05
質問させてください。
out = Connector.openDataOutputStream("scratchpad:///0;pos=" + clrPos);
で、スクラッチパッドの領域を初期化しようとしているのですが、
エミュレーターで動かすとうまくいくのに、実機にiアプリをDLして動かすと、
『ソフトに継続動作できない障害が発生しました』とエラーが出て強制終了します。
ADF設定でAppTraceをonにすると、

message = Uncaught exception happened
throwable = com.nttdocomo.ui.UIException
throwableMessage =
curClass = com/nttdocomo/ui/MediaDataImpl
curMethod = use

のメッセージが表示されます。
何をどうしたらいいのか分からないのですが、
どういう対処法を行ったらいいか教えてください。
165デフォルトの名無しさん:2005/03/29(火) 15:57:35
とりあえずエラーメッセージをもう一度間違えずうつしなおしてくれ。
166デフォルトの名無しさん:2005/03/29(火) 15:59:42
スクラッチパッド領域の初期化で、
何故MediaDataクラスや、useメソッドが出てくるんだ?

まったく別なところでエラーが出てる余寒。
167164:2005/03/29(火) 16:23:07
説明不足で申し訳ないです。
>>165
 出てくるエラーメッセージは上記のもので間違いありません。
>>166
 このスクラッチパッドの領域初期化を行う前に、やってる処理として
 
1.iアプリからネットワークに画像を要求
2.サーバで画像生成
3.画像名を携帯に送信
4.画像格納用のスクラッチパッドの領域初期化
5.画像名を先にスクラッチパッドに格納する
6.受信した画像をネットワークから取得してスクラッチパッドに格納
7.スクラッチパッドに格納した画像を取り出して画面に表示する

この1−6の動きをさせようとしているのですが、4のところで上記の現象が起きます。
ちなみに4のを飛ばしても5で同じエラーが出ます。
168デフォルトの名無しさん:2005/03/29(火) 17:03:19
MediaImageを使ってる?MediaDataだと非対応機種がある
あと画像のURIか間違っているか
169デフォルトの名無しさん:2005/03/29(火) 17:11:53
なんでMediaData"Impl"なんだろう
170デフォルトの名無しさん:2005/03/29(火) 17:21:39
>>167
MediaDataImpl ってのがなんなのか分からない。絶対エラーメッセージうつしまちがえてる。

そしてこれは>>166も言っているように、スクラッチパッド初期化が原因のエラーではない。
君は絶対どこかで不正に use メソッドを呼んでいるはずだ。それが原因。
171164:2005/03/29(火) 17:30:18
>>168
MediaImageを使用しています。
画像取得先についても間違いはないです。
>>169
curClass = com/nttdocomo/ui/MediaDataImpl
私もなんでいきなりこれが出てくるのかが分からないので、
どこをどうしていいかもわかりません。(><)


>>167で書いているように、4の処理を飛ばして5の処理をでも同じエラーメッセージです。
5で行っている処理は以下です。
in = Connector.openDataInputStream("scratchpad:///0;pos=" + getPos);

ちなみにエミュレーターiαppli Development Kit for DoJa 3.5で
当方の実機はP900iです。
172デフォルトの名無しさん:2005/03/29(火) 17:43:13
>>170
DoJaAPIの中(端末ごとの実装部分)で起こってるんでしょ。

とりあえずさー、println入れまくって、例外が発生してる箇所を
絞り込んでくれ>>164
173デフォルトの名無しさん:2005/03/29(火) 17:58:06
単純に、closeせずに新たにopenしようとしてるだけじゃねーの
174デフォルトの名無しさん:2005/03/29(火) 18:04:42
そのバグったアプリを見せて欲しいね。
175デフォルトの名無しさん:2005/03/29(火) 19:00:33
内部の実装にPimplイディオムを使ってるんだろう>impl
176デフォルトの名無しさん:2005/03/29(火) 20:07:31 ID:
...Implはフレームワーク内で使っているクラスです。
コード書く人が内部の詳細を知る必要はありません。

で、そこでエラーが出てるっていうんだけど、>>173が指摘しているように
オブジェクトの内部状態がおかしい希ガス。
スクラッチパッドをcloseし忘れていないか確認した?
177デフォルトの名無しさん:2005/03/30(水) 00:07:46
多分closeしてないんだろう。

ソースにはclose()と書いてるけどそこに届く前に例外発生して、処理は続行。
その後の処理も例外発生しまくってるけどcatchが空なので何となく先には進めてしまう。
んで、最終的に画像の展開のところまで処理は辿り付いてるけど肝心のデータ内容は空、なんてオチだな。
178164:2005/03/30(水) 00:29:33
>>172-177
 ご教授ありがとうございます。
 今、そのあたりを中心にデバッグしてます。
179デフォルトの名無しさん:2005/03/30(水) 01:21:40
〜ImplはエミュでstackTraceしたときに出てきたような…

4で例外がthrowされてるってどうやって調べたんだ?
エクリプス使えばソースコード見ながらトレースできるのかな? よく知らんけど
180デフォルトの名無しさん:2005/03/30(水) 12:46:05
質問させてください
画面が除々に暗くなるエフェクトを作りたいのですが、過去に3Dで黒いテクスチャを重ねていくという書き込みがあったのを思い出して、Textureのインスタンスを生成したのですが、そこからどうすればよいか分かりません。ヒントをいただけませんか。
181デフォルトの名無しさん:2005/03/30(水) 13:10:35
いや、そこで止まるなよ。
公式に3Dについてすごく分かりやすく説明したPDFが置いてある。
それコピペで多分ことが済むはず。
182デフォルトの名無しさん:2005/03/30(水) 13:12:16
>>180
Graphics3D
PrimitiveArray
あたりのドキュメントと、MascotCapsuleのマニュアルを読むといいと思うよ。
183デフォルトの名無しさん:2005/03/30(水) 13:45:54
>>180
テクスチャでなくていいでしょ、黒のプリミティブで。
というか実際前スレで私も同じ質問して色々やってみたものの、
3Dは機種の速度差が酷く期待した速度は出ない奴もDシリーズなど特に。
早い機種では処理落ちすら感じないほど早いのだが。機種差激しいよ。

ちなみに黒のプリミティブを多数重ねるのではなく
減算処理でプリミティブの色を黒>白へ変化させることで画面効果は同じように出来る。
そして結局バグか仕様なのか判らなかったけど機種によっては画面端が
ポリゴンが表示されず1ドットだけ処理の対象外になってしまうこともあった。
184デフォルトの名無しさん:2005/03/30(水) 15:09:51
>>183
Dは、低レベルAPI使ってあげなよ…
185デフォルトの名無しさん:2005/03/30(水) 17:13:08
>>184
低レベルの方が早いのは判るけど・・・そんなに変わるかな?
でもまぁ実質ブラックアウト関係は現状の機種では
差が出すぎてるって事を言いたかったんだけどね。
186デフォルトの名無しさん:2005/03/30(水) 17:28:25
iアプリで外部jarを使いたいときは
どこに配置するのが正しいのでしょうか?

dojaのlibフォルダに配置してみましたが見つからないと
でてしまいます
187デフォルトの名無しさん:2005/03/30(水) 18:12:46
そもそも外部jarつかったアプリって実機で動くのか?
188デフォルトの名無しさん:2005/03/30(水) 20:41:32
186はiアプリ以外で外部jarを使ったことがあっての発言なのか?
それがビルド(コンパイル)時のエラーなら、パスを通す意味を、
実行時ならimportの意味を分かってないと思われ。
長くなるので説明はしないけど、使いたいclassは.javaでsrcに入れとけ。
189186:2005/03/30(水) 20:45:01
>>188
一応あるんですけどね、Dojaはクラスパス書かずに
動いてるので一般的なJavaプログラムと違うのかと思いまして。
基本的にはJavaでsrcに入れるのが一般的なんすかね
190188:2005/03/30(水) 21:37:15
>>189
>Dojaはクラスパス書かずに
んなことないだろ。ツールがパス通しててるから気にしなくていいだけだろ。
コンパイラはJ2SEのjava.exeなはずだから、コンパイル時の作業は同じはず。

普通のも携帯も別にsrcじゃなくていい。srcなのは分かりやすいから。あとツールの都合。
あと実行時もやってみりゃ分かると思うけど、
PC向けで外部Jarのクラスimportしたアプリを、外部Jar入ってないPCで実行してみ?
それで動いたら「携帯でも出来るっ」て言ってあげるよ。
191180:2005/03/30(水) 21:40:42
色々調べてみましたが、公式のサンプルソースがみつかりませんでした。
ちょっと混乱してきたのでとりあえずラスターオペレーションで誤魔化すことにします。
ご教授ありがとうございました。
192デフォルトの名無しさん:2005/03/30(水) 21:57:53
本日DoJa-3.0をインストールしてみたのですが、
javaファイルを作ってビルドボタンをおすと、
 javac: ターゲットリリース1.1がデフォルトのソースリリース1.5と競合しています。
 javacの実行に失敗しました。
と出て、ビルドができません。
どうしたらビルドができるようになるのでしょうか。
SDKのバージョンは 1.5.0 です。
193デフォルトの名無しさん:2005/03/30(水) 23:07:43
>189
src に入れるっつーか、
普通にメインのソースと一緒にコンパイルしれ、ってこと。

外部jarを端末に送らんと使えんやろ。
SDKのlibにjar入れても端末にダウンロードするjarには入らん。

>192
ぐぐりやがれ。
194192:2005/03/31(木) 00:15:50
>>193
ここに質問する前に一応検索はしたのですが、それでもわからなかったのです。
195デフォルトの名無しさん:2005/03/31(木) 01:05:54
昔のスレにあったが、1.5じゃ動かない
>Jave2 SDK, Standard EditionVersion 1.3.1以外の動作確認はしておりません。
ってあるから1.3.1にしとくのが安心だが

196 名前:デフォルトの名無しさん[sage] 投稿日:05/01/09 17:17:35
>>192
1.3 -> 1.4 -> 1.5 でそれぞれ言語仕様が変更になってる。
1.4のときはjavacのデフォルトでは新しい仕様が無効になってるから
問題ないが1.5では有効になっている。が、この状態では-target 1.1
を使って古い仕様のclassファイルを生成できない。だから怒られる。

とりあえず環境変数PATHつかって1.3のjavacが使えるように設定だね。

197 名前:192[sage] 投稿日:05/01/09 17:49:15
環境変数 JDK_PATH に、 JDK1.3.1 をインストールしたパスを設定したらいけました!

みなさんアドバイスありがとうございました〜。

196デフォルトの名無しさん:2005/03/31(木) 12:11:12
>>191
ラスター使うってことはGraphics2かDoJa4.0以降辺りか。
Graphics2なら機種依存多いから気をつけなよ。
どっちにしろ質問時にどの機種を対象とした開発か言っておいたほうが良かったね。

>>186
外部Jarを使う事はできない。
携帯のJAVAは一般のJAVAとは当然違う。
開発ガイドにも書いてあるが最低限のモノしかつんでいない。

普通に考えてライブラリだけのJARを端末に送ることは出来ないし
出来たとしてもそれにアクセスする手段はない。
JARからJARを呼び出して一部利用することは原則として出来なく、
起動の引数を渡して現アプリを終了して新たなアプリを起動することしか出来ない。

公式にある開発ガイドの最初の辺りを一読することをお勧めする。
197デフォルトの名無しさん:2005/03/31(木) 14:56:34
チラシ(ry
突然「最新版をインスコしてください」とか出てきて勝手にJAVA5がインスコされてしまったorz
198186:2005/03/31(木) 18:09:53
>>196
ありがと〜
199192:2005/03/31(木) 21:01:16
>>195
レスどうもありがとうございました。

昨日自分でいろいろ試してみたのですが、
 設定→sun.tools.javac.Mainを使用する
をオンにしてビルドすると、
 注: sun.tools.javac.Mainは推奨されません。
とでるもののビルドは成功しました。
「推奨されません」とあると、危険なのではないかと思ってしまうのですが、
大丈夫なのでしょうか?
200デフォルトの名無しさん:2005/03/31(木) 21:42:50
>>199
http://www.itmedia.co.jp/enterprise/articles/0407/15/news027.html
とりあえずココの通りに入れ直せば?
そうすれば何も悩むことはない
201デフォルトの名無しさん:2005/03/31(木) 22:54:37
スクラッチパッドに書き込むにおいて
今までにデータを書き込んだスクラッチパッドの最後に続けて、
新たにデータを書き込むにはどうしたらよいでしょうか?
全書き込みは時間かかるので・・・
202デフォルトの名無しさん:2005/03/31(木) 23:03:19
自分で管理
203デフォルトの名無しさん:2005/03/31(木) 23:09:58
>>202
と、言いますと?
204デフォルトの名無しさん:2005/03/31(木) 23:13:28
最後を知る方法はないので自分で管理
途中から書くことは出来るから全部書き込む必要はない
205デフォルトの名無しさん:2005/03/31(木) 23:33:50
>>204
その方法はいかに?
206デフォルトの名無しさん:2005/03/31(木) 23:43:16
どっかでスクラッチパッド書き込みのサンプルでも探してこい。部下に言われたらぶん殴りものの質問だ。
207デフォルトの名無しさん:皇紀2665/04/01(金) 00:29:12
>>206
つまりはスクラッチパッドをセクタ的に分けて管理しろってことですか?
208デフォルトの名無しさん:皇紀2665/04/01(金) 00:44:39
そんなに立派なもんじゃない。
スクラッチパッド開くときに pos パラメータ使えってこと。

自分で管理
209デフォルトの名無しさん:皇紀2665/04/01(金) 00:55:12
>>208
pos=定数*n
のnで個々のデータを管理するってことですよね?
これはデータの上限バイト数が決まってしまって避けたかったのですが・・・
やむをえないですね。
210デフォルトの名無しさん:皇紀2665/04/01(金) 01:03:11
>209
それを先に言え。
っつーか、わかってんなら最初からブロックなりセクタで
おとなしく管理してろ。
211デフォルトの名無しさん:皇紀2665/04/01(金) 01:26:49
pos=定数*n
にしなきゃいいじゃん。

可変個&可変長くらい簡単に管理できるだろ
212デフォルトの名無しさん:皇紀2665/04/01(金) 01:52:05
もしかして書いたり消したりしまくりたいのか?
その場合はちょっと頑張らないとダメだな
213デフォルトの名無しさん:皇紀2665/04/01(金) 11:54:05
何故可変長管理すらできんのだ。
そんなことじゃメモリーマッピングとかできんぞ!
214デフォルトの名無しさん:皇紀2665/04/01(金) 13:55:08
>>213
出来ないんじゃなくて、めんどくさいからなにやら
いい方法ないか?とかぬかしてると思われ。
215デフォルトの名無しさん:皇紀2665/04/01(金) 16:10:50
スクラッチパッドの後から1バイトずつ読み込んで
データの最後の位置調べればいい。
ま、遅くて使い物にならんと思うが。
216デフォルトの名無しさん:皇紀2665/04/01(金) 17:26:09
バイナリデータの最後が0x00だったらどうするんだヽ(`Д´)ノ
217デフォルトの名無しさん:皇紀2665/04/01(金) 17:35:46
最初の4バイトに最後の位置保存じゃだめなのか?
218デフォルトの名無しさん:int 2ch =05/04/01(金) 20:55:11
それだと、複数のデータを保存して、それぞれ大きさが変化する場合に対応できないから、
素直にセクタ管理した方が良いと思うけどな。
219デフォルトの名無しさん:int 2ch =05/04/02(土) 00:08:10
もう全部jarにぶちこめ。そんでもっと根本的なことに時間を掛けろ。
220デフォルトの名無しさん:int 2ch =05/04/02(土) 11:04:02
まあ、最近、APIがないと何もできない人が多いし。
例えばiモード関連の書籍しか見てないと、アルゴリズムという概念の存在を知らんかもしれん。
221デフォルトの名無しさん:2005/04/02(土) 17:30:05
>>220 禿同

漏れが今陥ってる罠。

アルゴリズムを勉強しようとJavaのアルゴリズム本を読む
クラス構造体の定義を前提に書かれてるからiモードには適用できない。

概念自体を勉強しようとアルゴリズム本を読む
漏れはCを知らないのでそのまま使えない。

やっぱ素直にCを勉強してからiモードに帰ってくるしかないのかな?
222デフォルトの名無しさん:2005/04/02(土) 17:42:29
ん? アルゴリズムは言わば処理手順の説明だから、それ自体は言語に依存しないぞ。
その処理手順をどう表現するかって段階になってCで書くかJavaで書くかという話になる。

と書いてから気付いたが、その解説本がアルゴリズム(処理手順)の説明にCを使って
書いちゃってる、ってことか…
223デフォルトの名無しさん:2005/04/02(土) 18:52:48
初歩的な質問かもしれませんが
ある処理中にボタンとかの入力を無効化する方法ってありませんか?
処理中にいろんなボタンを押して
処理直後にそのボタンの出力が一気に出てしまうため困っています。
誰かご教授お願いします。
224デフォルトの名無しさん:2005/04/02(土) 18:54:56
処理中って boolean でも作って
処理中なら true 、処理中でなければ false になるようにして、
keyEvent のそれぞれの処理でそれを if で参照してスルーするのはだめか?
225デフォルトの名無しさん:2005/04/02(土) 18:57:45
>221
そんなにまじめな「アルゴリズム」がないと
解決できない問題にぶつかっているのか?

サイズの問題にぶつかってないうちなら
まずクラスを使ってるものを適用してもいいとおもうんだが。
226デフォルトの名無しさん:2005/04/02(土) 19:03:22
>>221
概念自体を勉強するんなら、PC用にJava2SEで書いて学べばいいんでない?
そこで学べたらiモード用に移行させればよかろう
227デフォルトの名無しさん:2005/04/02(土) 19:26:33
>>222
そうやって本当にうまくいくかわからなかったのですが、
やってみます。
228227:2005/04/02(土) 19:34:09
>>222
できませんでした・・・orz
なんかためて一気に って感じで
229227:2005/04/02(土) 19:34:34
ageすいません
230デフォルトの名無しさん:2005/04/02(土) 21:04:08
iモードのプログラムのサイズ制限は100KBであってますか?
この辺詳しい資料はどこから入手できるのでしょうか?
231デフォルトの名無しさん:2005/04/02(土) 21:07:57
>>230
最大容量はシリーズごとに違います。
資料はぜんぶDoCoMoが用意してるし、ググれば出てくる。
232デフォルトの名無しさん:2005/04/02(土) 21:30:25
>>228
処理が終わった後も少しの間だけ処理中って事にしておくとか
233デフォルトの名無しさん:2005/04/03(日) 00:51:37
自作のクラスをAPI化したい場合、みなさんはどうしてますか?
つまりソースを見られたくないけど配布する場合なんですが。

abstract classにしてdoja_classes.zipあたりに
放り込みたいと思い、doja_classes.zipを解凍して
comフォルダあたりの中に入れて、無圧縮zipで再びdoja_classes.zipにすれば
再びアプリは動くけど、自作クラスを利用すると
不正なクラスとなって墜ちてしまいます・・。

何か良い方法がございましたらご教授ください。
234デフォルトの名無しさん:2005/04/03(日) 00:54:54
何をアホなことやってるんだ?
コンパイル時の使用するclassの指定で、自作のクラス突っ込めばいいだろ。

まさかコマンドラインでのコンパイルも知らない奴が、自分のソースを見られたくないだなんてこと言わないよね?
235デフォルトの名無しさん:2005/04/03(日) 01:13:11
>>223
この手の話題って定期的に出る気がするな。
processEventではgetKeypadState()の戻り値等を保存して 、
メインループではその変数を参照するようにすれば良いだけでしょ。

キーの押し下げエッジを検出したい場合は、

data |= getKeypadState();

で貯めておいて、メインループの最初で、

edge = (old_data ^ data) & data;
old_data = data;
data = 0;

とでもしておけば良い。
236デフォルトの名無しさん:2005/04/03(日) 01:38:02
>234
イライラさせてすいません。
dojaツール上でビルドの設定やらでは実現可でしょうか??
コマンドライン以外では方法はありませんでしょうか?
237デフォルトの名無しさん:2005/04/03(日) 02:08:26
Doja-4.0で開発する場合使用できるjarの制限が100k
scratchpadが400KBまでですが、SDカードやヒープ領域にアクセスし
データを永続化しておくことは可能なのでしょうか?
238デフォルトの名無しさん:2005/04/03(日) 02:28:54
>>235
processEventとgetKeypadState()が同期していないのを逆手に取るって事か?

>>237
画像か音なら〜Storeクラスで可能
それ以外は無理
239デフォルトの名無しさん:2005/04/03(日) 02:31:19
>233
SDKに入ってるクラスは端末に入ってねえっつの。
アプリのjarに一緒に入れなきゃ使えねえ。

言うほど俺も理解足りねえんだが、
DoJa のキットそのままじゃだめだろうなあ。

--------<ちらしの裏>--------

「自作のクラス」なんて使えるだけ容量に余裕がある人間はいいよなー。
IApplication と Canvas で一杯だよ・・・。

あとそういうクローズドなクラスファイルは
Eclipseで使いづらいから嫌いだ。

--------</ちらしの裏>--------

>237
メモリーカードは使えない。
ヒープ領域ってのはどういう意味だか分からない。
サーバーにでも送って保存しとけ。
240デフォルトの名無しさん:2005/04/03(日) 02:36:36
>あとそういうクローズドなクラスファイルは
>Eclipseで使いづらいから嫌いだ。
べつに問題なく使えるけど。
241239:2005/04/03(日) 03:12:07
>240
すまん。俺も偉いこと言えない人間でな・・・。
242239:2005/04/03(日) 03:16:45
って勘違いしてたらしい。吊ってくるわ・・・。
243デフォルトの名無しさん:2005/04/03(日) 03:48:26
画像か音なら可能ということは、偽装化すれば問題なく
認識できるということですよね?
244デフォルトの名無しさん:2005/04/03(日) 05:40:09
>>243
可能だと思うけど、扱える画像サイズの上限が機種毎にばらばらだし、
偽装の条件も違う可能性があるし、
かなり扱いづらいだろうね。
245デフォルトの名無しさん:2005/04/03(日) 10:14:14
>>236
わかった。真面目に答える。
いわゆるエミュ&コンパイラーでは無理。
コマンドラインからやるしかない。batファイルでも一緒に配れ。
246デフォルトの名無しさん:2005/04/03(日) 12:31:09
>245
わかりました。
ありがとうございます。
247223:2005/04/03(日) 13:13:19
>>235
なるほど。
どのタイミングでgetKeypadState()を入れるのか等手順を教えていただければ
幸いなのですが・・
もしくはサンプルコードとかあったらありがたい。
248デフォルトの名無しさん:2005/04/03(日) 13:23:11
あのな。そろそろスレ違いってことに気づこうや。
>>224 でできないなんてありえないんだよ。
249デフォルトの名無しさん:2005/04/03(日) 14:21:00
まあ、脳ミソ使わずにコピペできるコードが出てくるまで食い下がるつもりだろうな。
そもそもそんなもの存在しないのに。
250デフォルトの名無しさん:2005/04/03(日) 16:25:07
>>247
そんなのAPIリファレンスに書いてあるだろ。
251デフォルトの名無しさん:2005/04/04(月) 11:00:32
ソース出せっていうなら自分のソース出せっての。
それを修正したほうが早い。

大体キー処理なんて使うアプリによって内容違いすぎて
サンプルと言われてもどのタイプなのかすらわからん。
押された瞬間のみ検知?長押しも使用?離された瞬間は?
1フレーム内で数回押された場合は?とか使うアプリによって
使い分けるだろ?容量が違う。


今時503なんて開発してる奴いないか・・・あの時代の
アプリ作ってる奴はバイト単位で容量削減してたのにな。
252デフォルトの名無しさん:2005/04/04(月) 15:26:06
processEventと数時間睨めっこしてきた方が良いと思うよ
253デフォルトの名無しさん:2005/04/04(月) 16:43:44
drawStringで、エミュや機種によってY軸方向の位置がすこし違うみたいなのですが、どれでも同じ位置に表示させるには、drawStringの第三引数にFontのDescent分たせば良いのですか?
254デフォルトの名無しさん:2005/04/04(月) 17:43:47
>>253
Ascentを足す方が感覚的にもわかりやすいかと。俗にいう上揃え。
255デフォルトの名無しさん:2005/04/04(月) 20:51:10
その方法使わせていただきます!ありがとうございました
256デフォルトの名無しさん:2005/04/06(水) 10:13:34
ちょっと脅しすぎたかな?
自分が初心者という自覚があり、初心者の質問だと思うなら
・なるべく情報を出す
・実機でのバグなら、実機名くらい書く
を守ればいいんだが。
257デフォルトの名無しさん:2005/04/06(水) 20:12:10
n504isとF2102vでは普通に起動するのに、
n900では起動しないのはなぜでしょう?

格別変な事はしてないと思うのですが・・・
258デフォルトの名無しさん:2005/04/06(水) 20:34:59
(゚,_ゝ゚)
259256:2005/04/06(水) 21:45:45
>>257
orz
260デフォルトの名無しさん:2005/04/06(水) 21:55:42
わざとやってるとしか思えんorz
261デフォルトの名無しさん:2005/04/07(木) 10:46:44
盛り上がって参りました〜〜〜!!って感じかw

>>259
落ち込むな!
約束通り実機名は書いているぞ!!
もういっこは書いてないがなw
262デフォルトの名無しさん:2005/04/07(木) 12:03:15
最近DoJa3系をいじるようになったのですが、iアプリ連携に
ついて質問があります。2つ(以上)のiアプリでデータの
連携をさせたいのですが、

1)共通のスクラッチパッドを読み書きできますか?
2)連携させたいアプリAとBがあるとして、AからBに
  BからAに引数を渡して起動させられますか?その場合
  引数の最大数(個数、サイズ)はどのくらいまでOKですか?
3)Aは携帯にDL済みでBがまだの場合、AがBを起動
  させようとした場合自動的にBをDLさせることは
  できますか?
4)iAppliToolでプログラムを組む時、AとBはそれぞれ
  別のプロジェクトとして製作する必要がありますか?
  それとも単一のプロジェクトにまとめる必用があり
  ますか?

概念的なことばっかですいませんが、よろしくお願いします。
263デフォルトの名無しさん:2005/04/07(木) 12:56:58
>>262
1. 不可
2. 可(最大16組、名前値あわせて255バイト)
3. やったことないからわかんね、けどイケるかも
4. 別プロジェクト

っていうかDoCoMoの資料やAPIマニュアル嫁
264デフォルトの名無しさん:2005/04/07(木) 14:33:37
3は不可。
ただし「まだ落としてないよエラー」はとれるので、ブラウザを起動させてあげればいいんじゃないかな?
265デフォルトの名無しさん:2005/04/07(木) 15:56:42
Eclipse(バージョン: 3.0.1)とDoja-4.0でiアプリを作っていたのですが、
Eclipse上では正常に動作するのに、サーバーにアップして携帯電話で起動させようとすると、
「ソフトに継続動作できない障害が発生しました」
と言うエラーが起きて異常終了してしまいます。
ADF/トラステッド動作設定のUseNetworkに「http」
spsizeは「130000」(取り込む画像サイズは120KBです)
ADFのURLも設定しました。

プログラムの接続する部分は
HttpConnection hc = (HttpConnection)
Connector.open(getSourceURL() + "sp/test.gif",Connector.READ,true);
(画像はjamファイルが置いてある所に「sp」と言うフォルダを作ってそこにいれています)

後はどこを直せばいいのか見当がつかなくなりました。
どなたかヒントをお願いします……
266デフォルトの名無しさん:2005/04/07(木) 15:58:43
書き忘れました。
使用した携帯は「P901i」中の容量も充分余裕があります。
267デフォルトの名無しさん:2005/04/07(木) 16:07:42
>>265>>266
残念だが、その情報だけでは何とも・・・

とりあえず、AppTrace = on にして、何をしたときに何の例外で落ちて
いるのかをはっきりさせてくれ。
画像のダウンロード部分で落ちているのは間違いない?

あと、画像のサイズ(ファイルサイズじゃなくて表示サイズの縦横)は?
P901だと、たぶん320x320を超える大きさのImageは表示できない。
268デフォルトの名無しさん:2005/04/07(木) 16:07:59
>>265
で、Connectorをopenする時に落ちるのは確定?そこを書いてるって事は。
269デフォルトの名無しさん:2005/04/07(木) 16:28:05
>>265
一般的にはまりやすい注意点としては、
宣言だけして初期化してないString型等のオブジェクトにアクセスすると、
エミュでは動くけど実機で落ちるプログラムになるけどね。
その辺は確認した?
270デフォルトの名無しさん:2005/04/07(木) 16:31:27
>>267さん、ありがとうございます。
AppTrace = on にして見た所
「message=Uncaught exception happened throwable=java.lang.NullPointerException」
と出てきました。

あと、画像サイズは566×1084です。でも、一度に全部を表示させる分けでは無く、各部分を
g.drawImage(image,0,0,240,0,240,240);と言ったように用途に応じて使うようにしているのですが、
(一番広く使う時で240×240)
元の画像サイズ自体が大きいと弾かれるのでしょうか?

>>268さん、ありがとうございます。
スクラッチパッドに画像が書き込めていない→画像が正しく収得できていない。
からココかなと素人考えで見当をつけてみただけです。あんまり長文を貼り付けるのも気が引けたので……

一応、HttpConnection hc = (HttpConnection)
以降はこうなっています。

hc.setRequestMethod(HttpConnection.GET);hc.connect();
int imgLength = (int)hc.getLength();InputStream is2 = hc.openInputStream();
byte[] byteData = new byte[imgLength];
is2.read(byteData);is2.close();hc.close();
OutputStream os = Connector.openOutputStream("scratchpad:///0;pos=1");
os.write(byteData);os.close();
271デフォルトの名無しさん:2005/04/07(木) 16:34:49
>>270
Pは320x320が上限だったような気がするぞ。
272デフォルトの名無しさん:2005/04/07(木) 16:42:26
>>270
P901iの最大画像サイズは320*320
さらに言えば画像のファイルサイズも100KBが限界。
画面サイズ以上というよりキャンバスサイズより
大きな画像は機種依存に引っかかりやすいので使わないが吉。

余談だが4.0で
HTTP受信データ150KBが最大の制限。
だが、なんのアプリかわからないがもし同じQVGAの機種、
つまりは505シリーズの3.0でも動作させたい場合は
HTTP受信データ20KBが最大の制限。分割しないとアクセスできないことも覚えておこう。
273267:2005/04/07(木) 16:45:29
>>270
あとは、それがどこで起こっているのかを突き止めてくれw

ちなみに、元の画像サイズが大きいとダメ。
320x320までです。

そして、一応。
ガッ
274デフォルトの名無しさん:2005/04/07(木) 16:50:20
皆様の言うように、320サイズの画像をアップしてみた所、無事に落とせました。
画像サイズが原因だったようです。
プログラムのバグだと信じていて、画像サイズなんて気にもしていなかったので

皆様のアドバイスが無ければズット悩んでいたと思います。
本当に、ありがとうございました!
ちょっと今泣きそうです。

……今からまた画像サイズを分割しないと行けないのか……○| ̄|_

ちょっと今泣きそうです。
275デフォルトの名無しさん:2005/04/07(木) 16:58:06
>>274
320*320も問題だが
100kb超えてるのが今回の原因だべw
そこ勘違いしないようになw
276デフォルトの名無しさん:2005/04/07(木) 17:17:07
>>275
そんな制限は聞いたことがないんだが・・・<100KB
メールで送れるサイズの上限とごっちゃにしてないか?
277デフォルトの名無しさん:2005/04/07(木) 17:19:45
>>274
読み込めない画像が来たらアプリが落ちる、ってのは立派な
バグだと思うぞ。せめて落ちないようにしとかないと。
278デフォルトの名無しさん:2005/04/07(木) 18:01:06
>>276
ごっちゃにしていない。
320*320というのを一瞬で調べられる連中なら
同じく知っているはずだ。
320*320の情報と同じ場所にある情報だからな。
279デフォルトの名無しさん:2005/04/07(木) 18:28:16
>>278
ホントだ!orz
すまんすまん。
280デフォルトの名無しさん:2005/04/07(木) 21:05:36
>>270でもいいけどメモリ不足対策に256バイトずつ読みながら書く方法も
ってこっちのほうがシュールか・・・
281262:2005/04/07(木) 22:16:59
262です。263さん264さん回答ありがとうございました。
早速今日エミュ上で連携に挑戦してみたんですが、どうしても
別アプリを立ち上げることができず困ってます。すいませんが、
アドバイス願えませんでしょうか。特に、ADF の URL って所
で何を指定すればいいのかが分かってません。プロジェクトを
ビルドして出来るのは jam と jar だし、jam の URL を指定
して置いてもうまく動きません。

import com.nttdocomo.ui.IApplication;
public class jantitle extends IApplication {
private final String[] pstr = new String[3];// パラメータ引数用
public void start() {
pstr[0] = "http://localhost/program2.jam" ;
pstr[1] = "arg1" ;
pstr[2] = "value1" ;
launch(LAUNCH_IAPPLI,pstr) ;
}
}
これを実行すると、
java.lang.SecurityException: Illegal i-application url
で止まってしまいます。なかなかネット上にも解説資料のない
分野で困ってます。先人のお知恵を拝借させてください。
282262:2005/04/07(木) 22:18:25
あ、ちなみにローカル環境で Apache 動かしてあり、
jam ファイルも jar ファイルもそこに置いてあります。
283262:2005/04/07(木) 22:32:08
262です。自己解決しました。
ダウンロードアプリケーションの設定に必要事項を記入したら
無事連携できました。お騒がせしました。orz
284デフォルトの名無しさん:2005/04/09(土) 00:20:31
質問があります。

F901iCでスクラッチパッドからgifを読み込もうとすると
何十回かに1回くらいの割合で数十秒くらいロード処理が帰ってこない事があります。

例えば
画像1から画像10を読み込み→画像1から画像10を破棄、というのをたくさん繰り返していると

とくに規則性の無いタイミングで突然処理が止まり、20秒くらい経過すると何事も無かったかのように復帰します。
(その時、画像はちゃんと読めています。)

似たような現象にあった方はいますでしょうか?
285デフォルトの名無しさん:2005/04/09(土) 00:38:38
gc頻繁にしてるか?
286デフォルトの名無しさん:2005/04/09(土) 02:34:03
メモリが増えたから最近の機種はそんなに時間がかかるのか
解決法は>>285
287デフォルトの名無しさん:2005/04/09(土) 02:55:10
サウンドの同期について質問です

エミュレータでサウンド同期処理を試しているのですが
AudioPresenterクラスのpause()とrestart()を繰り返すと
同期イベントが飛んでこないときがあるようです。
実機(N505i)で試したところ再現しないので
エミュレータ固有の問題かなとも思うのですが
他機種でどう動くのか心配です。

この件で何か情報持ってる方、いませんでしょうか。

288287:2005/04/10(日) 13:57:29
完全に流れを止めてしまいましたorz

サウンド同期なんてあまり使わないから情報少ないのかな。
誰でも試せるようにサンプルをUPしておきます。

http://senbei.kt.fc2.com/i/syncSound.html

「ドレミー」と繰り返し再生するアプリで
[1]キーを押すと曲が停止、[2]キーで再開するようになっています。

エミュ上では[1][2][1][2]...と、なるべく速く10〜20回繰り返すとズレます。
実機(N505iのみで確認)では再現しません。
他の機種ではいかがでしょうか。

対応機種は505i以降です。
#AudioPresenter.pauseとrestartはDoJa3.0以降で基本API

興味のある方、暇な方、ソースも晒してあるのでどうぞ。
289デフォルトの名無しさん:2005/04/10(日) 15:03:19
流れが止まったんじゃなくて、仕事として作成している人は土日までこのスレ見てないだけだと思われ。
290デフォルトの名無しさん:2005/04/10(日) 17:46:57
まーもともとエミュのサウンド周りはmidi丸投げだし、動きは妖しいよな。
291デフォルトの名無しさん:2005/04/11(月) 00:59:15
>>287
SH901iで試したけど全く問題なかったよ。

ちなみに、>>290と同じく俺もEMUのサウンド周りは一切信頼してない。

実機で落ちるバグを発見して、再生イベントが重なったりするのが原因だと解ったから、イベント発生を監視してbusywaitしたりbusyのままタイムアウトした場合命令を破棄させたり、そんな処理を組み込んだことがある。

結果、実機では全く落ちなくなるかわりにEMUでフリーズするようになった。
292デフォルトの名無しさん:2005/04/11(月) 10:33:09
すいません、初歩的な事かも知れませんが、
Doja-4.0で作ったアプリは900iでは動作させられないのでしょうか?
293デフォルトの名無しさん:2005/04/11(月) 10:53:55
上位のエミュでつくっても、その上位用のAPIなどを使っていなければ問題ないよ。
294デフォルトの名無しさん:2005/04/11(月) 11:20:29
>>293さん、ありがとうございます。
上位APIは使ってないです
(もしかしたらとDoja-3.5をインストールして動作させてみましたが、問題なく動きました)
何故か先方が900iで動かないと……
そして先方には901iが無く、コチラには900iがないと言う最悪の環境下……
泣きそうです( ´Д⊂ヽ
295デフォルトの名無しさん:2005/04/11(月) 11:43:21
>>294
仕事でやるんなら実機を用意するのが当たり前
296デフォルトの名無しさん:2005/04/11(月) 12:17:04
>>294
SpriteSetとか使ってる?
あと、900iとか901iとかじゃなくて、メーカ名も書いてくれれば
何かわかるかもしれん。
297デフォルトの名無しさん:2005/04/11(月) 12:26:22
>>295さん、仰る通りです……○| ̄|_
買い換えなきゃよかった……
>>296さん、
SpriteSetは一つも使っていません。携帯の方は私の方はP901iです。
先方は「P900i」です。
298287:2005/04/11(月) 12:59:25
>>290
>>291

レス、ありがとうございます!!!
SH901iで大丈夫ですか。
やっぱりエミュの問題なんでしょうかね。
#確かにエミュの音周りはインチキ臭いところが多い。

もともと音関係は機種依存が強いから、仕方ないのかな。

他の機種で試された方も、報告して頂けると嬉しいです。
299デフォルトの名無しさん:2005/04/11(月) 13:46:54
>>297
まずどのように動作しないのか聞け。
ダウンロードが出来ないのならADFの中に余計なもの設定してる可能性がある。
ダウンロード出来るなら特定の機種のみで落ちるのか、どの状況で落ちるのか聞け。
P900iで動きませんと言う情報だけではこれくらいしかアドバイスできん。

PCの話だがディスプレイの電源が切れてて画面が出ない!とか抜かす先方(実話)も
居るぐらいだからネットワーク設定を切っていないかとかもあわせて聞いてみろw
300デフォルトの名無しさん:2005/04/11(月) 13:57:58
先方に機種変更をさせる
301デフォルトの名無しさん:2005/04/11(月) 14:22:30
お客って「動かない」とか「フリーズ」って言葉好きだよね。

「どう」動かないのか。
「どの場面で」フリーズなのかを教えてくれなきゃさっぱりわかりません。
302デフォルトの名無しさん:2005/04/11(月) 14:27:47
( ゚д゚)ノ ハイ!先輩方に質問デス!
以下のプログラムでスクラッチパッドから画像を呼び出そうとしているのですが、
D900iだけがエラーが出ます。その他の機種(900・901シリーズ)では問題なく表示できます。
表示しようとしている画像はjpg形式でサイズは5k〜20k

MediaImage mi= null;
mi = MediaManager.getImage("scratchpad:///0;pos="+getPos);
System.gc();
try
{
mi.use();
rtn = mi.getImage();
}
catch(UIException ue)
{
System.out.println("ue err_status = "+ ue.getStatus());
System.out.println("ue err_messa = "+ ue.getMessage());
System.out.println("ue err_string = "+ ue.toString());
}

ここで返されるエラーは以下です。

ue err_status = 4
ue err_messa = Unkown media image format
ue err_string = com.nttdocomo.ui.UIException: Unkown media image format

D900だけって事は機種依存による物ですかね?
D900の描画能力は悪いって言うのは聞くのですが・・・。
303デフォルトの名無しさん:2005/04/11(月) 14:43:10
P900iを持っている知り合いに頼んで落としてもらったらちゃんと起動してるようです。
本気で分けが分りません。

>>299さん。
プログラムそのものは起動するらしいのですが、
最初の起動画面でフリーズするらしいです。

>>300さん
本当に。そろそろ先方の環境がおかしいのではないのかと段々不安に……
304デフォルトの名無しさん:2005/04/11(月) 15:51:52
>>303
P900iってファームアップデートされてなかったっけ?
305デフォルトの名無しさん:2005/04/11(月) 16:14:46
>>302
エラーメッセージの言うとおり。
しらねー画像フォーマット。だってことだ。

D900だけ別の画像をDLしていたりしないか?
D900だけJAMのスクラッチパッドサイズ指定が小さかったりしないか?

プログラム自体はあってる。
getPosの値などがD900のときだけ違うってことはないか?

とにかく些細なミスだ。
「こんな間違いはありえないよなー」と思ってるところこそ間違いになっている可能性がある。
306デフォルトの名無しさん:2005/04/11(月) 16:16:02
>>303
DLしたアプリは同じものか?
「客がUPして、それが壊れてて動作がおかしい」なんて話はしょっちゅうだ。
307デフォルトの名無しさん:2005/04/11(月) 19:06:38
P900iで動かないと嘆いていたモノです。

今、先方から「動いた」との連絡が来ました。
しかも本当にそれだけ。

データがおかしかったのか、先方の携帯がおかしかったのか一切釈明なし。

ちなみにデータは別に変えたわけではありません。
動いたのはいいが、理由を教えてくれ……

俺の一日はなんだったんだ……○| ̄|_
もういやだ( ´Д⊂ヽ
308デフォルトの名無しさん:2005/04/11(月) 19:16:23
FTPでUPするとき上書きしてなかった。

そんな理由だろう。
309デフォルトの名無しさん:2005/04/11(月) 22:45:37
プログラムの途中で100!や5000C1000などの演算をしたいのですが
桁が大きくなりすぎて困っています。
対数を使えば解決できるんですがiアプリで対数演算は可能なんでしょうか?
テイラー級数ではうまくいきませんでした
310デフォルトの名無しさん:2005/04/11(月) 22:56:08
標準ではサポートしてないので
テイラー展開でがんばれ
311デフォルトの名無しさん:2005/04/12(火) 11:41:34
失礼致します。仕事では無いのですが、
自分のサイトでiアプリのゲームを初めて公開した者です。
900以降のシリーズ対象で、大抵の機種ではまともに動作するようなのですが、
F900iCで起動させた方から
ゲームを進めて行っても画面が切り替わらない。との報告を受けました。
(メール画面など、他の画面を立ち上げると切り替わるらしいです)
どうやらF900iC環境下でのみ発生する不具合のようなのですが、画面の再描写が上手く行われていないようです。
原因・対処法などご存知の方がおられましたらご教授願います。
(SH901i、P901i、P901iV、P900i、SH900i、N900iは正常に動作しているようです)
312デフォルトの名無しさん:2005/04/12(火) 12:14:32
repaint()使ってるとか?
使うなら開発ガイドのrepaint()の説明を良く読んだ方が良いよ
代わりにpaint(g)とかやった方が楽だし確実だと思うが
313デフォルトの名無しさん:2005/04/12(火) 12:16:47
>>311
その画面の切り替えって言ってる部分では何やってるわけ?
一定のタイミングで毎回起こるなら、通常描画を怪しむよりそこで何やってるのかが重要かと。

ん・ぱか工房にはF900は
「g.lock()した後、g.unlock()する前に、Dialogオブジェクトのshow()を呼ぶとフリーズする 」
ってのがあるけどフリーズじゃなさそうだしなぁ・・・。

切り替えってくらいだから処理が重いんだろうかなぁ・・・。
描画命令はどうやって呼び出してる?
repaint();で呼び出してるのらpaint(getGraphics());に変えてみるとか。
314デフォルトの名無しさん:2005/04/12(火) 13:17:14
311です。
買った本にpaint()メソッドは画像ファイルを読み込む前に描画処理が呼ばれる時があると書いてあったので
paint()メソッドは空のメソッドを書いてあるだけで描画はCanvasクラスの「getgraphics」でおこなっています。
Canvasクラスの中でメソッドを幾つか分けて、必要に応じてそのメソッドを呼び出しています。

もしかして私、根本的な部分で勘違いをしているのでしょうか?
315デフォルトの名無しさん:2005/04/12(火) 13:55:22
>>314
勘違いってわけじゃない。参考書の類はそっちが多いね。
でも画像を読み込む前に描画されるってのは起動の一番初めに
GIF画像などを使わなければ良いだけだとは思うけど。
白い画面でクリアしてるだけいい。読み終わってから描画に使えば^^

詳しく調べてるわけじゃないけどCanvasのpaintメソッドにはこう書かれてる。
-----------------------------------------------------------------------------
引数で渡されたグラフィックスオブジェクトは、アプリケーションプログラマが
Graphics.dispose メソッドで破棄してはなりません。 paint メソッドの呼出し元が、
機種依存の処理をしたあとで dispose メソッドを呼び出して破棄します。
-----------------------------------------------------------------------------
この機種依存ってのが怖くてね。その方法を使ってないです。
getgraphicsでやってるってことは手動で破棄してるわけでしょ・・恐らく。
あと明示的にrepaintとpaintを使い分けれるってのもあるし、
便利だからこうしてるってだけかなw
316デフォルトの名無しさん:2005/04/12(火) 13:58:25
やり方は間違ってないと思う

なのでワカランw
317デフォルトの名無しさん:2005/04/12(火) 15:36:32
>>315さん。
ハイ。手動で破棄するようにしています。
私もCanvasのpaintメソッド読んでみました。
やっぱり機種依存の問題なのでしょうか。
F900iCだけじゃなく、F900iTでも同様の現象が起きていると報告がありますし。
F900i用にpaintメソッドで作り直そうと思います。

>>316さん
間違ってないと言って頂けただけでも嬉しいです。
何せ本を片手に独学だけで作った初めてのアプリなので。
318デフォルトの名無しさん:2005/04/12(火) 15:53:28
>>317
getGraphicsで描画するのは間違ってる
描画スレッドが一度getGraphicsしただけで
それを使いまわしてpaint()呼ぶという実装になっているなら
その実装では描画されないのは当たり前だろ

その本が言ってるのは、描画に必要なオブジェクトを別のメソッドで初期化するようにしている場合に、
paint()がそれ以前に呼び出される可能性もあるからちょっと気をつけろよ、ということ
319デフォルトの名無しさん:2005/04/12(火) 17:05:01
>>318
317じゃないけど最初の4行は意味わからんです。
ラスト2行はその通りだとは思うのだが。

テンプレにあるサイトん・ぱか工房のサンプルみたいに
実装してるって事でしょ317は。
ttp://www.saturn.dti.ne.jp/~npaka/sorami/4/index.html
の最初のソースみたいに。
まぁこれは破棄しないでずっと使いまわしてるパターンだけど。
320318:2005/04/12(火) 19:04:14
>>319
314を読む限りではgetGraphicsをオーバーライドしているように読めねぇか?

そうじゃなかったとしても

> 必要に応じてそのメソッドを呼び出しています。

この「必要に応じて」の部分についての仮定が誤っているんだろう。

ん・ぱかのやつは「一定間隔で」描画しているから問題ないわけだ。
321デフォルトの名無しさん:2005/04/12(火) 20:06:59
317です。
画像の描写の仕方は
>>319さんが貼ってくれたリンク先のようにしています。
(と言うかこの人の書いた本を片手に作ったので)
モチロン、適度なタイミングで破棄命令は入れていますが。

>>320さん
作ってたのはドンジャラで、牌を捨てたり、新しい牌を積もったりする時に再描写するので
「必要に応じて」と書きました。

318さん、319さん、320さん、
誤解を招く意味が伝わりづらい文章を書いてしまって申し訳ございません。
322デフォルトの名無しさん:2005/04/13(水) 02:33:54
ずっと使うんだから破棄する必要は無いんじゃないの?
素直に真似すれば良いと思う
323デフォルトの名無しさん:2005/04/13(水) 10:17:02
俺もそう思う。
単一しか使用しないのなら最初に宣言してそれを使いまわすのが妥当かと…
324デフォルトの名無しさん:2005/04/13(水) 18:21:31
http://k-tai.impress.co.jp/cda/article/news_toppage/23453.html
変な癖とかなくなればいいが・・・
325324:2005/04/13(水) 18:23:10
ごめん
直リンしてもうた・・・
326デフォルトの名無しさん:2005/04/13(水) 22:50:10
前から話は出てたけど、901iで肩透かし喰らったからなぁ…。
902iに一応期待しておくか。
327デフォルトの名無しさん:2005/04/14(木) 01:56:50
J-SH07〜V603SHまでの一貫した互換性、
並みの成果を期待する。
328デフォルトの名無しさん:2005/04/14(木) 15:05:47
文字の太字表示をしたく、以下のコードを記述しました。
DoJa4.0では意図した通りに表示されましたが、
テストに使ったSH505iとF506iではどちらも文字サイズ以外変更されませんでした。
機種依存で太字やイタリックが使えないことがあるのは分かっていますが
本当に機種依存の為に表示されなかったのか、コードに間違いがあるのか分からない状況です。
以下のコードで内容に間違いがある、といことはありますでしょうか?

Font f = Font.getFont(Font.FACE_SYSTEM | Font.SIZE_SMALL | Font.STYLE_BOLD);
g.setFont(f);
g.drawString("ABC", x + 5, y + 60 + f.getAscent());
329デフォルトの名無しさん:2005/04/14(木) 15:13:14
先日、SH900i使ってる香具師から「ソフトに誤りがあります」
っていわれてダウンロードできないという報告があったので、
過去ログとかを参考にしつつ、ちょっと調べてみたんで報国。

下記の内容のJAMを oh.manco.jp という鯖に置いたらダウンロードできるけど、
同様のJAMを manco.jp という鯖に置くと「ソフトに誤りがあります」でNG。

JAMの内容はtelnetで直に吐かせて同一なのを確認した。
目に見える違いといえばドメイン名ぐらいしかなくて、
信じれない結果に目を疑った。
330デフォルトの名無しさん:2005/04/14(木) 15:14:04
Content-type: application/x-jam

AppClass = h
PackageURL = ochinchin.jar
AppSize = 29977
AppName = パンティ☆穿替
AppVer = 1.172
AppParam = 0
SPsize = 132132
UseBrowser = launch
UseNetwork = http
AppTrace = on
LaunchByMail = any
LastModified = Fri, 01 Apr 2005 18:06:08
LaunchByBrowser = any
--------
名前とかは晒せないので変更したけどコード的には似たような文字
アプリ名に0x5cは含まれていない
SH901, SH506では問題は発生しないそうだ
331デフォルトの名無しさん:2005/04/14(木) 15:22:54
>>329
HTTPサーバの種類やバージョンや設定が違ったりしないか?
332デフォルトの名無しさん:2005/04/14(木) 15:39:15
>>331
アーキテクチャもシステムも同じもの
(じゃないとテストにならないからね)

httpdの設定などもCVSで同期がとれているのを確認してる。
JAMの内容もtelnetで直に吐かせて同一なのを確認した。
333331:2005/04/14(木) 16:18:48
つまりアレか?SH900iは、ドメイン名部分に「.」が2つ以上ないとダメ、っていうこと?
334デフォルトの名無しさん:2005/04/14(木) 16:19:08
>>328
間違っていない。
どっちの機種も対応してない。
335デフォルトの名無しさん:2005/04/14(木) 16:38:52
>>334
ありがとうございます。
テンプレの機種依存情報や、自分で調べた限りでは、
フォントに関する情報があまり無くどうしたものかと思っていました。
336デフォルトの名無しさん:2005/04/14(木) 16:44:16
公式サイトの、機種依存命令対応一覧表を見よ。

ん?900以上ってまだ一般には配られてないんだっけ?
337331:2005/04/14(木) 17:02:23
ちょっと気になったので333について試してみたけど、そんなことはなかった。
somename.netとwww.somename.netで同じサーバ(Apache2)に繋いで、
同じパスのアプリをSH900iでDLして実行してみたけどどちらも問題なし。

なおAppNameには非ASCII文字を含んでない。
338デフォルトの名無しさん:2005/04/14(木) 17:14:52
SHのバグ報告見てて、P503iの四月病を思い出したw
339デフォルトの名無しさん:2005/04/14(木) 17:20:18
自作で太字にすれば何とかなるのでは?
drawStringを2回呼んで2回目はx+1にする。
これで対応してない機種でも太字になるはず。
340デフォルトの名無しさん:2005/04/14(木) 17:34:18
>>338 懐かしいな(笑
341デフォルトの名無しさん:2005/04/14(木) 19:30:06
>336
公式サイトとは
ttp://www.nttdocomo.co.jp/p_s/imode/make/index.html
こちらのことでしょうか?
そうであれば一応探してみたのですが、太字の機種依存に言及している資料は見つけられませんでした。
どこか見落としているのでしょうか・・・

>339
綺麗に太字に見えますね。
ひとまず教えて頂いた方法で対処しておこうと思います。
ありがとうございました。
342デフォルトの名無しさん:2005/04/14(木) 21:09:50
>>341
iアプリ

iアプリ技術資料のダウンロード

iアプリコンテンツ開発ガイド for DoJa-3.5各機種オプションAPI・拡張API実装状況

だよん。
PDFの中を、BOLD で検索してみ
343デフォルトの名無しさん:2005/04/15(金) 18:17:02
iアプリ初心者です。
ソースを手書きで打ち込むのは流石にメンドイので、IDEを探しているんですが、何かいいのありません?
本に書いてあったforteがsunのページから見つからないし…。

ドコモのサイトに書いてあったSun ONE Studio 4も見つからない…。

できれば無料か高くても1万以下の開発ツールがほしいんですが、何かいいのありますか?
344デフォルトの名無しさん:2005/04/15(金) 18:41:40
(´・ω・)つ[VC]
345デフォルトの名無しさん:2005/04/15(金) 20:33:55
Forte は NetBeans, Sun ONE Studio は Sun Java Studio と
現在は呼ばれている。

Java の IDE で現在最もメジャーなのは Eclipse。
346デフォルトの名無しさん:2005/04/15(金) 22:49:16
>>ソースを手書きで打ち込むのは流石にメンドイので、
じゃぁどうやってコード書くのよ。
347デフォルトの名無しさん:2005/04/16(土) 00:13:19
デフォルトの開発環境だってボタン一つでビルドしてくれるんだから、
それでもいいんじゃないかねえ。

IDE に何を期待してるんだろう。
348デフォルトの名無しさん:2005/04/16(土) 00:20:28
携帯Javaって、少しちゃんとしたもの作ろうとすると
IDEなんてホトンド意味がなくなっちゃう気がするんだけど
そこんところどうなんだろう?
349デフォルトの名無しさん:2005/04/16(土) 10:02:23
デバッグには便利
350デフォルトの名無しさん:2005/04/16(土) 11:31:59
>349
System.out.println でほとんど片づくから、
純正SDKでもEclipse でも変わらない。
まあ、デバッガが必要な程厳しいアプリ作ったことがないせいだが。
351デフォルトの名無しさん:2005/04/16(土) 13:05:15
antが一番便利。
一度仕掛けを作っておけば、504i,505i,900i,901i,700iの全部のバイナリ
一度に作れるし。


352デフォルトの名無しさん:2005/04/16(土) 13:20:21
>>351
普通バイナリは共通にしとくものだと思ってた…
353デフォルトの名無しさん:2005/04/16(土) 15:41:33
容量が違うのにどう共通にしろと
354デフォルトの名無しさん:2005/04/16(土) 16:14:33
うちはプロファイル毎に使える機能有効にしたりしてるから
バイナリ共通は無理だなー。
ソース中の定数で切り替えてるから、ant 絡めてそれができれば
確かにいいが……。
355デフォルトの名無しさん:2005/04/16(土) 16:20:40
{504i}, {505i,700i}, {900i,901i} の3つのグループに分けて
同じグループのものは共通にしている。
たまに、サイズの問題もあって、同じコードで動かしきれないものがあって、
それは別になる。
いちいち手でやると面倒だし間違えるから。

ant build_all で全部できるようにしている。
356デフォルトの名無しさん:2005/04/16(土) 17:43:43
エミュ+jdbでデバッグできることを知ってる人はどのくらいいるのかな?
357デフォルトの名無しさん:2005/04/16(土) 18:02:09
詳細きぼんぬ
358デフォルトの名無しさん:2005/04/16(土) 18:58:21
オフィシャルのドキュメントのどっかになかったっけ?
使ってないけど。
359356:2005/04/16(土) 19:47:25
カレントがbinディレクトリだったらこんな感じ

doja_g.exe -debugger -debugport 9999 -u http://your.domain/ -i YourApp.jam
jdb -sourcepath ../src -connect com.sun.jdi.SocketAttach:hostname=localhost,port=9999

doja_gの-uと-iは適宜書き換えて
ポイントはdoja_gの-debugportとjdbの-connectの指定の仕方ね
localhostに対してリモートデバッグしてるのよ
あと当然-gでコンパイルしないとし意味ナイから
360デフォルトの名無しさん:2005/04/16(土) 22:16:27
Canvasの切り替えについての質問です。
あるCanvasをsetCurrentして、processEventで別のCanvasに切り替えて、さらにそのCanvasのprocessEventでもとのCanvasをsetCurrentするとキー操作を全く受け付けなくなってしまいました。
proceesEventもgetKeypadStateも全く反応しません。お手上げです、考えられる原因は何かありませんか?
361デフォルトの名無しさん:2005/04/16(土) 22:23:49
書き忘れました
エミュレータでは全く固まり、N900iSではprocessEventのみ動作しなくなりました
362デフォルトの名無しさん:2005/04/16(土) 23:23:39
KEYDOWNで切り替えてないか?
KEYUPで切り替えるようにしてみ
363デフォルトの名無しさん:2005/04/17(日) 00:02:04
切り替えはどちらのCanvasもKEY_SOFT1を使っています。
KEY_UP等も色々試してみましたが、残念ながらいづれも結果は同じでした
364デフォルトの名無しさん:2005/04/17(日) 01:03:54
おそらく >>362 が言いたいのは
KEY_PRESSED_EVENT, KEY_RELEASED_EVENT
のことだと思われ
365360:2005/04/17(日) 13:26:09
失礼しました

どちらも試してみましたが、同じ結果でした
366デフォルトの名無しさん:2005/04/17(日) 14:07:55
コード晒して。もしくは一番単純なコードを書いてテストして。

2つのCanvasをprocessEventで切り替えるなんていうのは、
良くある実装でそれが問題になったなんていう話は聞かないのよ。
つまりDoJaやエミュや実機に原因があるんじゃなくて
360の書いたそのほかのコードが原因になっている可能性が非常に高い。
367デフォルトの名無しさん:2005/04/17(日) 14:16:58
意図しないクラスのメソッドがイベントリスナだったとか、
原因はそのへんでわ?
368360:2005/04/17(日) 14:39:08
あまりの汚さに腰を抜かすかと思いますが
ttp://www3.pf-x.net/~seal/s/source.txt
こちらに一部をアップしました。
簡単なソースでは問題なく動きます。run()の永久ループあたりが非常に怪しいのですが。。

イベントリスナーは実装していないので、関係ないかと思います
369デフォルトの名無しさん:2005/04/17(日) 15:54:57
>>386
ちょい眺めてみたけど

スレッドの開始は run() ではなくて start()

ですぞ。
ほかに分かったことがあったらまたカキコしませう。
370369:2005/04/17(日) 16:09:23
StatusCvs#processEvent(...) が返却されず、無限ループから脱出できないのが
原因みたでつ。

StatusCvs#processEvent(...) の中で mapCvs.execute() しているけど、
mapCvs.execute() ではさらに run() を呼び出している。
run() の中は while ループで、この終了条件は doGraphics が false になった
とき。

doGraphics を false にセットしてくれるのは、MapCvs#processEvent(...)だけど
StatusCvs#processEvent(...) は返却されないので、
MapCvs#processEvent(...) は永遠に呼ばれない。

よって「キーを受付けない」という現象が起きる。



・・・当ってた?
371360:2005/04/17(日) 16:37:39
ありがとうございます!
こんなに詳しく教えて頂いて、嬉しい限りです!
ループを1回に限定してみたところ、見事processEventが動作しましたw
processEventが処理中だとsetCurrentしてもほかのクラスのprocessEventは呼ばれないのですね
本当にありがとうございました!
372デフォルトの名無しさん:2005/04/17(日) 17:08:23
俺も
>>98
と同じエラー出てEclipse使えない
助けて下さいm(__)m
373360:2005/04/17(日) 17:58:25
すみませんが、もう一つ教えてください
Canvasを切り替えるとき、一瞬画面がFrameのデフォルトの背景色になり、チラチラしてしまいます。
これを解決する良い方法はありませんか?
374デフォルトの名無しさん:2005/04/17(日) 18:46:31
>>373
そういう時は大抵オマエが何か描いてるんだよ
良〜く描画のコードを見直してみろ
一番単純なところまで削るか
どうしても人に聞きたきゃ晒せ
375360:2005/04/17(日) 19:12:14
何度も申し訳ありません
ttp://www3.pf-x.net/~seal/s/source.txt
特にC2からC1に切り替わる時、一瞬白くなってしまいます。
これは回避できないのでしょうか?
376デフォルトの名無しさん:2005/04/17(日) 21:13:48
>>375
さっきと同じ問題だよ
sleep()のせいでC1.processEvent()を抜けないでしょ
processEvent()ではC2をsetCurrentしてタイマーを起動し
そのタイマーがexpireしたところでC1に戻すような実装に変えてみ
377360:2005/04/18(月) 00:23:56
実は、それはわざとやっています。processEvent内の処理がおわる前にキーを離すとどうなるのかと思いまして。
Canvasは正しく切り替わるので、一瞬白くなる問題とは関係ないように思います。ありがとうございました。
378デフォルトの名無しさん:2005/04/18(月) 03:08:13
>>374
ヾ('A`)シ モチツケ、熱くなり過ぎだ
確かに373の説明じゃ不十分だが漏れは何となくわかった。

>>373
コンストラクタ内でsetBackground。これで解決するはずだ。
そもそもゲームアプリじゃsetCurrentなんて初回にしかしないからな。
殆どの香具師が気にした事ないんだろ。('A`)ノ ガンガレ。
379341:2005/04/18(月) 14:07:38
>>342
遅くなりましたが、教えて頂きありがとうございます。
しかしこれを見るとほとんどで実装されていないんですね(汗
評価待ちですが、339の方法でいこうと思っています。
380デフォルトの名無しさん:2005/04/18(月) 15:33:44
>>379
うむ。実装されてないんじゃ。
>339の方法だが、何度も文字を書く分だけ重くなるのは注意な。

文字の描画は絵の描画なんぞより重い場合も多々。
381360:2005/04/18(月) 16:35:16
>>378
説明力不足ですみませんorz
普通はCanvasの切り替えはしないのですね。ソースがややこしくなるので分割したかったのですが…極力やめるようにして背景色指定もするようにします。
色々ありがとうございました
382デフォルトの名無しさん:2005/04/19(火) 13:14:50
こんなので悩んでるの俺だけ?それとも既出?
過去ログとかその他いろいろ探してみたんだけどみつからず。

・「〜」が表示できません。全部「?」になってしまいます。
(例)
String ngstr = "〜123〜";
Dialog d = new Dialog(Dialog.BUTTON_OK, ngstr);
d.setText(ngstr);
d.show();
System.out.print(ngstr);← これでも "?123?"になる。

PCでwriteUTF作成したファイルを readUTFで読み出してもやはり同じでした。

以下のようにShiftJISのバイト列を変換すれば表示できるんだけど・・・
byte buf[] = {-127,0x60,0x31,0x32,0x33,-127,0x60, 0x0a};
ByteArrayInputStream is = new ByteArrayInputStream(buf);
InputStreamReader isr= new InputStreamReader(is);
BufferedReader bsr = new BufferedReader(isr);
...
String str = bsr.readLine();
System.out.print(str);
383デフォルトの名無しさん:2005/04/19(火) 13:28:14
ソースの文字コードは何にしてる?
とりあえず\uff5eで代用することも考えてみ

「〜」は通常のUNICODEだと0x30XXあたりなんだけど、MSのは0xff5eなんだよね
DoJaは後者じゃなきゃダメなんじゃなかったっけ?
384デフォルトの名無しさん:2005/04/19(火) 13:42:20
383さん、どうもです。
文字コードは Eclipseのデフォルトのまま。
ソースのテキストファイルはShiftJISだけど、そういうことじゃないよね?
結局Dojaで「〜」を表す値が違うってことなんですかね。

PC側のJavaアプリで writeUTFしたファイルを表示したいだけなんだけど、
PC側の出力で「〜」をみつけたらその前になにかに置き換える必要があるということなのかな・・。
385382:2005/04/19(火) 14:16:57
383さんの情報で解決しました Thanks!

結局PC側ファイル出力で FF5E を 301Cに置き換えるようにしてうまくいきました。

Windows&Eclipse上で開発しているときは String str = "〜";じゃだめで、
String str = "\u301c";って書かないと駄目なんですね。
386デフォルトの名無しさん:2005/04/19(火) 14:57:06
たしかjavacに渡す引数でコントロールされてるんだと思う。
普通に日本語のjdkをインスコした場合はデフォルトが
cWindows31jだかになってるんじゃなかったかなぁ。
387デフォルトの名無しさん:2005/04/19(火) 16:59:03
>>382
もう解決したみたいだけど、漏れもPerlでUTF8で文字列を
処理してたときに似たような現象に遭遇しました。

Unicodeの変換表が実装依存らしくて、互換性のないのが原因だった。
詳しくは↓のページ
http://www.debian.or.jp/~kubota/unicode-symbols-map2.html

>たとえば、Shift_JIS における 0x81 0x60 (JIS X 0208 の 0x2141) は、
>Macintosh や GNU libc を用いると U+301C (WAVE DASH, 〜) に変換されますが、
>CP932 における同じ文字 (つまり、0x81 0x60 (JIS X 0208 の 0x2141)) は、
>U+FF5E (FULLWIDTH TILDE, 〜) に変換されます。
388382:2005/04/20(水) 17:13:22
「〜」のほかに「−」マイナス記号もひっかかりますね。
ほかの文字も対応しておいたけど使用頻度が低いので影響はなさそう。
JDKでのUnicodeも Windows と若干違うことは知ってたけど これとDoJaは同じだと思ってたけど、
微妙に違うととは盲点だった。
使ってるJ2SEは1.4.2.06だけど、古い 1.1.xとかともUnicodeのマッピングって違うんだね。
389デフォルトの名無しさん:2005/04/20(水) 18:29:08
double型の値をスクラッチパッドに保存して、また読み込む、という
ことをやりたいのですがうまくいきません。
@double値を1000倍して3桁精度を確保しながらlong型にキャスト
Along値をシフトしながらスクラッチパッドに書き込む
Blong値にシフトしながらスクラッチパッドから読み込む
Cdouble方にキャストして1000分の1して元の値を読み込む
ってことをやっているのですが
どういうわけは元の値に戻りません。
スクラッチパッドへの入出力はただしく行われていて
32.767まではちゃんと元の値に戻せるのですが
32.768以上だと負数になってしまいます。
何が悪いのでしょうか?

ソース
http://49uper.com:8080/html/img-s/54308.zip

390デフォルトの名無しさん:2005/04/20(水) 18:43:53
1. 数KBしかないんだからなにもZIP圧縮しなくても・・・
2. iアプリでdouble型は使えない
391デフォルトの名無しさん:2005/04/20(水) 18:57:17
>>390
Doja4.0からは使える
392デフォルトの名無しさん:2005/04/20(水) 19:04:11
知らんかった

>>389
ウソ情報スマソ
393デフォルトの名無しさん:2005/04/20(水) 19:22:58
>>390
ソマソDoja4.0です
394デフォルトの名無しさん:2005/04/20(水) 19:25:00
めんどくさいから文字列のまま格納して読み込めば?
395デフォルトの名無しさん:2005/04/20(水) 19:29:00
>>394
やっぱりそれしかないのかなぁ....
javaは符号ビットがCと違う動きするのかな?でも<<だしなぁ...
引き続き情報募集します

あ、ソースでシフトしてるところに入ってるキャストは
いろいろ試してる最中でつけたものなの消してください

396デフォルトの名無しさん:2005/04/20(水) 19:47:33
後は小数点の上と下で分けてintで格納するってのは?
397デフォルトの名無しさん:2005/04/20(水) 19:50:10
>>389
まずlongの読み書きは大丈夫なの?さらっとソース見た感じ何か複雑だけど・・。
CLDC1.1は触ったことねぇけど、キャスト時int扱いとかされてたりして・・
java.lang.Double.doubleToLongBits(double value) とか使ってみた?


398デフォルトの名無しさん:2005/04/20(水) 20:52:31
シフトしながら書き込む。なんてことせずに、素直にwriteLongでいいのでは・・
399デフォルトの名無しさん:2005/04/20(水) 21:16:01
あれ、DojaってwriteLong使えるんでしたっけ?
writeDouble使えないから使えないと思い込んでた
明日まずはLongで試しますアリガd>>398
400デフォルトの名無しさん:2005/04/20(水) 22:52:35
>>399
DoJa-4.0なんだよね?
だったらCLDC1.1だから、DataOutputStreamにwriteDoubleあるよ。
ひょっとしてCLDC1.0のAPIリファレンス見てるんじゃない?
だったらとりあえず
http://jcp.org/aboutJava/communityprocess/final/jsr139/index.html
からCLDC1.1のspecificationをダウンロードしよう。1.0と違って日本語は無いので悪しからず。
401デフォルトの名無しさん:2005/04/20(水) 23:10:10
サポートしている変数の、書き込み読み込みようメソッドが無いなんてことあるかいw
402デフォルトの名無しさん:2005/04/21(木) 09:55:28
すみません。
現在のiアプリと最新iアプリのバージョンチェックはどのような実装がベターなのでしょうか?
思いついたのは

1)バージョンを書いたファイルをサーバー上に置いて
それを取得し、変数に格納しているバージョンと比較して
違ったら「ダウンロードしなおしてください」等のダイアログを表示して終了

2)ADFのAppVerを使う?(この方法が見つかりません)

メジャーなやり方などがありましたら教えて頂けると助かります。
403デフォルトの名無しさん:2005/04/21(木) 10:05:55
AppParamに書くのが一般的じゃね?
AppVerを取得できれば、それが一番良かったんだけどねー。

今のAppParamにかかれているVersionと、起動毎にアクセスして受け取るVersionが不一致ならDLを促すとかでいいんでね。
404デフォルトの名無しさん:2005/04/21(木) 11:05:53
けど、現在端末で動作しているアプリも更新させないといけないんだよね?
405デフォルトの名無しさん:2005/04/21(木) 15:45:29
>>403
ありがとうございます。AppParamが一般的なんですね。
参考になりました。

>>404
動作しているアプリでのアップデートはちょっとやり方がわからないので
とりあえずダウンロードを促すだけということにしたいと思います。
406デフォルトの名無しさん:2005/04/21(木) 16:22:30
>>405
505移行なら、アプリの中からUPDATEダイアログを呼び出せるぞい。
407デフォルトの名無しさん:2005/04/21(木) 17:23:14
現在端末にあるアプリがそうなってないとどうしようもないけどね。
408402:2005/04/21(木) 19:26:51
>>406
またまた貴重な情報ありがとうございます。
505以上のものは対応するよう挑戦してみます。
409デフォルトの名無しさん:2005/04/22(金) 19:15:37
初回起動時にスクラッチパッドに画像が保存されてなければサーバから画像をダウンロードして
スクラッチパッドに保存するプログラムを作りたいんですけど、下のコードではうまくいきません

通信はできてるようなので、恐らくスクラッチパッドへ書き込むところがおかしいと思うのですがわかりません
もしわかる方がいたら教えてください

http://butsudan.or.tp/~ttb/uploader/up/file037.java
410デフォルトの名無しさん:2005/04/22(金) 22:26:42
最初にスクラッチパッドの読み書きをするプログラムを書いてみたらどうだろう?
411デフォルトの名無しさん:2005/04/22(金) 23:56:14
>>409 ADFでSPSize指定したか?
412デフォルトの名無しさん:2005/04/23(土) 00:47:04
>>410
前に簡単なメモ帳のようなものを作りましたけど、そのときはちゃんと動きました
ただ画像をスクラッチパッドに保存するコードを書くのは今回が初めてです
>>411
ちゃんとしました 277バイトの画像なので、余裕をもって300と設定してみましたが
413デフォルトの名無しさん:2005/04/23(土) 04:23:15
catchの中はからっぽだし。
"scratchpad:///0; pos="なんていう書き方してるし。
だいたい
for(int i = 0; i < IMAGE_SIZE; i++){
   // データを読み出す
   buf[i] = is.read();
}
って書いてる事自体が俺には理解不能。
その辺直したら動いたよ。
きちんと勉強し直してからの方がいいのでは?
414デフォルトの名無しさん:2005/04/23(土) 08:43:49 BE:45317928-#
ヘッダに整数値で情報置いてあるならともかく、gifだしな…。
サンプルはいくらでも転がってるんだし、まずコピペでやってみろとしか。
415デフォルトの名無しさん:2005/04/24(日) 11:34:54
某サイトのは
scratchpad:///0;[半角スペース]pos=〜
になってるけど、スペース入れると例外が起こるからね。
いろんなサイト(といってもそう多くないが)のサンプルを見ることをお薦めする。ガンガレ
416デフォルトの名無しさん:2005/04/24(日) 20:22:50
DoJaに初めから入っているテトリスのソースを見ていたのですが、
Scoreクラスでハイスコアをスクラッチパッドに書き込むとき、
  OutputStream out =
    Connector.openDataOutputStream("scratchpad:///0");

    out.write((hi_score >>> 24) & 0xff);
    out.write((hi_score >>> 16) & 0xff);
    out.write((hi_score >>> 8) & 0xff);
    out.write(hi_score & 0xff);
となっているのですが、 なぜわざわざ& 0xffを追加するのでしょうか?
0xffを二進数で表すと11111111だから、
& 0xffを入れても入れなくても結果は同じなのではないかと思うのですが。
417416:2005/04/24(日) 20:25:55
あげ忘れました。
>>416の回答をお願いします。
418デフォルトの名無しさん:2005/04/24(日) 20:37:50
>>416
不必要なビットをねかすため
419デフォルトの名無しさん:2005/04/24(日) 22:27:26
OutputStream#write(int b)
The 24 high-order bits of b are ignored.
とあるが、上位24ビットは無視される仕様じゃないのか?
420デフォルトの名無しさん:2005/04/24(日) 22:36:33
>>419
正直、そういうのを信用しないほうがいいよ。
仕様をぶっちぎってる実機なんていくらでもあるし。
421デフォルトの名無しさん:2005/04/24(日) 22:36:44
サンプルのコードをそんなに気にするな。
422416:2005/04/24(日) 22:49:02
>>421
気にするなといわれると余計に気になってしまうタチなので。

そもそも一般に & 0xffをつけるのとつけないのでなにが変わるのですか?
423422:2005/04/24(日) 22:50:59
またあげ忘れた(^^;
424デフォルトの名無しさん:2005/04/24(日) 23:02:41
writeの実装にゴミ(9ビット以上)を渡さない、ということが保証できるだけだろ
まぁゴミがあったから問題になったという話は聞いたこと無いけどなぁ
425422:2005/04/24(日) 23:35:44
>>424
& 0xffをつけることによって9ビット以上がどう変わるのでしょうか?
426デフォルトの名無しさん:2005/04/24(日) 23:55:14
気になってしまう性質なら、自分で調べろ。
ビット演算も知らずにプログラム組む気なのか。
427デフォルトの名無しさん:2005/04/24(日) 23:55:27
これ以上はiアプリ関係ない
Javaの質問スレ行け
428422:2005/04/25(月) 00:18:12
結局よくわからないままですが、
まあなんだか知らんが&0xffをつけないと9ビット以上が邪魔になる
ということで理解したことにしたいと思います。

どうもありがとうございました。
429デフォルトの名無しさん:2005/04/25(月) 00:58:44
わざわざビット演算子を使う必要もなかったり
430デフォルトの名無しさん:2005/04/25(月) 03:01:55
>>422
もう寝たかもしれんが

&0xff をつけることによって 9ビット以上が 「寝る」。

つまり0になる。

つまり、 out.write関数に渡す前の時点で 完全な 8bit データとなる事が保証される。
431デフォルトの名無しさん:2005/04/25(月) 03:15:42
素直にDataOutputStream#writeInt(int)使えと言いたいw
432デフォルトの名無しさん:2005/04/25(月) 11:01:22
>>431
もともとは503用のサンプルだからな。
余計なクラスを使って容量を増やすわけにはいかない。
あのサンプルでそこまで切り詰める必要はないがw
433デフォルトの名無しさん:2005/04/25(月) 11:41:40
>>422
理解できずに納得できるんなら、質問なんかするな!

もともとこの手のビット演算は、
iモード関係なく、プログラムの基本じゃないのか?
このぐらいのことが理解できないんだったら、
この先苦労するぞ・・・
434デフォルトの名無しさん:2005/04/25(月) 14:03:02
>>433
そう熱くなりなさんな。>>428はビット演算わからないわけじゃなさそうだし。

>>428
お前さんの言う通りわざわざビット演算で消す必要はない。
実装されてるクラスが完全に動作すれば上位ビットは無視される。
で、なんで使ってるか?って疑問だがあくまで予想を答えると
安全性の向上が目的だろうね。

もともと503用だったソースなので実機もエミュも未完成の
状態でのサンプル開発かもしれない。今後(その当時)クラスに
手が加わる、もしくは実機によって動作が異なる可能性もある。
そんな時無駄に手間をかけないで済むようにするため。
容量もさほど食わない。念のためって奴でしょう。
435デフォルトの名無しさん:2005/04/25(月) 14:16:21
あとはプログラマーの習慣とかもあるなw
結構ソースには癖がでるもんだ。

俺は昔ミスった経験から演算子順をわざと確定させるため
()を無駄につける事がおおいぜw確認の意味も込めてね。
436デフォルトの名無しさん:2005/04/25(月) 15:18:48
てか、サンプルのテトリスってバグだらけだよな。
437デフォルトの名無しさん:2005/04/25(月) 16:27:36
そもそも版権フリーではないテトリスを、サンプルにしていいのだろうかw
438デフォルトの名無しさん:2005/04/25(月) 17:47:12
最近のはCarRaceだぞ?
439デフォルトの名無しさん:2005/04/25(月) 18:16:49
>>438
いや・・・問題にってか質問にあったのはテトリスのソースだからなw
レースは関係ないべ今の話では
440428:2005/04/25(月) 19:08:34
ビット演算の知識は一応あるつもりだったのですが、
何か勘違いをしてるのかもと思っていたので>>425の質問をしたのですが、
言葉が足りなかったようです。誤解させてすみませんでした。

で、>>428と書きはしましたが、どうしても気になっていたので
今日学校で先生に聞いてきて、ようやく理解することができました。
&0xffをつけるのは9ビット以降を全て0にするためだったのですね。

上で回答してくれた皆様、どうもありがとうございました。
441デフォルトの名無しさん:2005/04/25(月) 19:31:43
(´・ω・`) ナンカチカレタ
442デフォルトの名無しさん:2005/04/25(月) 20:02:19
まあ、なかったことにして華麗に次の話題へ行きましょう。
443デフォルトの名無しさん:2005/04/25(月) 23:18:52
じゃあ話題を変えて
フルブラウザアプリ『 サイトスニーカー 』
http://k-tai.ascii24.com/k-tai/news/2005/04/25/655587-000.html
http://hobby7.2ch.net/test/read.cgi/appli/1114429604/

布留川大先生がお作りになられました
444デフォルトの名無しさん:2005/04/26(火) 02:40:06
RPG等で使うBGスクロールの処理を作ったんですが、N901iCではスムーズに
動くんですけどF900iCで動作させてみたら、とても耐えられる速度じゃあり
ませんでした。。。

BG1チップ16X16のサイズとして、試しに以下のソースのような感じで
表示してみたところ、N901iCでは問題なくスムーズに動作。
F900iCだと超激重でした。

・1画面分表示(240X240)
for( i=0; i<15; i++ ){
for( j=0; j<15; j++ ){
g.drawImage( img, j<<4, i<<4 );
}
}

皆さんRPG等の背景の描画には何を使っていますか?
ちなみにSpriteにしても重かったです_| ̄|〇
ImageMapはまだ試してないんだけど、これ使えば早くなりますかね・・

初カキコなので説明不足な部分があったらすいませんorz
445デフォルトの名無しさん:2005/04/26(火) 05:34:22
Part何番かは忘れたけど、ここの過去スレに詳しくソース書いてある。
さかのぼって探してみるが良し。
446444:2005/04/26(火) 06:21:10
>>445
どうもです。
過去ログは見ましたが欲してる情報が見つかりませんでしたorz
スクロールの計算処理云々の問題じゃなく、drawImageが重い。。
これはもう900携帯の描画性能の限界でしょうか・・
あらかじめImageにマップを描き込んでっていう方法も、生成するマップ
のサイズがでかくてだめですし。。
ImageMapを使ったら若干早くはなりましたけどやはり重くて。。
FFとかF900iCでプレイした方いましたら処理速度どんなもんだったか
教えて頂けると助かりますorz
447デフォルトの名無しさん:2005/04/26(火) 08:47:46
448デフォルトの名無しさん:2005/04/26(火) 10:05:28
>>447
通りすがりの開発者だが読んでみた。
iアプリは10フレーム出てれば良い方だと思ってたんだが、一般の認識は違うのか?!
449デフォルトの名無しさん:2005/04/26(火) 10:11:16
450444:2005/04/26(火) 10:38:05
>>447
ありがとうございます!
読んでたらちと試したい事が思いつきました。
感謝!!
451デフォルトの名無しさん:2005/04/26(火) 10:51:25
>>448
俺は 505i以前→10固定 900i以降→10〜15可変 って感じだな。
452デフォルトの名無しさん:2005/04/26(火) 11:15:29
>>444
出来るようなら結果教えてね。
453444:2005/04/27(水) 03:01:35
>>452
おかげさまで何とか動きました。
やってる事は結局差分描画なんですけどね。
454デフォルトの名無しさん:2005/04/27(水) 16:46:26
画像の45度回転とかはどういう風に実現されてますか?
sin,cosテーブル作ってgetPixelとsetPixelを使ってピクセル単位での移動しか無理でしょうか。。
455デフォルトの名無しさん:2005/04/27(水) 16:59:30
drawImage でアフィン変換かけられるじゃん。
456デフォルトの名無しさん:2005/04/27(水) 17:54:15
>>454
DoJaのバージョンによる
4.0以降は基本APIで可能
それ以下なら3Dで表現するか、
自力で回転させてやるか・・だがどれも重い。

あとあらかじめ回転した画像を用意するか、
起動時にその画像から回転した画像を
作成して保持してから使うかだな。
この方法だとアプリのメモリにさえ容量があれば
速度も出るが・・・メモリが問題だな。
457デフォルトの名無しさん:2005/04/27(水) 20:51:31
>>455
>>456
ありがとうございました。
あらかじめ回転した画像を用意して対応したいと思います。
458デフォルトの名無しさん:2005/04/28(木) 01:57:46
構想 8ヶ月
プログラム 3ヶ月

やっと完成したああああああああああああああああ
この板が無かったら絶対100%挫折してた。・゚・(ノД`)・゚・。
皆さんありがとう<(_ _)>
459デフォルトの名無しさん:2005/04/28(木) 09:08:05
正直、趣味でやってるとプログラム組むより
絵を用意する方がしんどい。
460デフォルトの名無しさん:2005/04/28(木) 09:59:29
>>448
当たり前だが、機種と作り方次第。
滑らかさ最優先で組めば、条件次第では50とか33で回せる。

50出るようにしても、TFT液晶だとリフレッシュレートが追いつかないw
461デフォルトの名無しさん:2005/04/28(木) 11:35:04
DoJa2.xに対応するアプリを作成しています。
画面切り替えで動作しない機種があり、悩んでいます。

現在の処理は、通常はCanvasクラスにて画面描画をし、
文字入力時のみPanelクラスにDisplay.setCurrentで切り替えています。
入力終了にTEXT_CHANGEDイベントを受けてCanvasに戻しています。

テストにはN2051・N2701・N2102V・F2102Vの4機種を使っています。
N系では問題なく動作しているのですが、F2102VのみPanel切り替え直後から
TEXT_CHANGEDイベントが連続で発生し続けアプリが動かなくなってしまいます。
(TEXT_CHANGEDイベントの処理でリソースを全て使っている?)

どなたか解決方法をご存知ないでしょうか?
462デフォルトの名無しさん:2005/04/28(木) 12:08:33
「TEXT_CHANGEDイベントを受けてCanvasに戻して」いるあたりのコードをさらせ
463461:2005/04/28(木) 12:47:03
昨日からずっと悩んでいたのですが、なんとか自力で修正することが出来ました。

原因は、N系では文字入力確定後にしかイベントが発生しないのに対し、
F2102Vでは文字入力開始時にもイベントが発生していました。
N系では1回、F2102Vでは2回イベントが発生していたことでスタックがおかしくなっていました。
464デフォルトの名無しさん:2005/05/04(水) 12:16:00
N900iでのみ通信エラーが発生して
SPSize=409600にすると回避できるやつがありますが
過去ログを読むとN900iとP900iで発生するように書かれています。
この現象について同系機種であるN900iS、P900iVでも発生するのでしょうか。
何か情報を持ってる方いましたらヨロシクです
465デフォルトの名無しさん:2005/05/04(水) 12:33:31
おそらく発生する。
原因はgcがダミーメソッドになっていることであり、それを同系機種への移行ごときで作り直すとは思えない。
466デフォルトの名無しさん:2005/05/04(水) 12:51:50
>>465
速攻レスありがとうございます!!
発生する可能性が高そうですね...
ちなみに、gcがダミーメソッドというのは
「うっかりgcをダミーのまま出荷しちゃいました」
ってことなのでしょうか??
467デフォルトの名無しさん:2005/05/04(水) 13:01:47
ポイントスプライトを表示したいのですが、テクスチャが歪んでしまいます。
UVの指定がおかしいのでしょうか?テクスチャの歪まない方法を教えていただきたいです。
環境 DoJa-4.0 Emulator ver.1.03

RenderSprite(Texture texture, int x, int y, int width, int height, int srcX, int srcY)
{
  PrimitiveArray pa = new PrimitiveArray(Graphics3D.PRIMITIVE_POINT_SPRITES, Graphics3D.NORMAL_NONE | Graphics3D.COLOR_NONE | Graphics3D.POINT_SPRITE_PER_COMMAND, 1);
  int[] pointSpriteArray = pa.getPointSpriteArray();
  pointSpriteArray[0] = width;
  pointSpriteArray[1] = height;
  pointSpriteArray[2] = 0;
  pointSpriteArray[3] = srcX;
  pointSpriteArray[4] = srcY;
  pointSpriteArray[5] = srcX + width;
  pointSpriteArray[6] = srcY + height;
  pointSpriteArray[7] = Graphics3D.POINT_SPRITE_FLAG_PIXEL_SIZE | Graphics3D.POINT_SPRITE_FLAG_NO_PERSPECTIVE;
  int[] vertexArray = pa.getVertexArray();
  vertexArray[0] = x;
  vertexArray[1] = y;
  vertexArray[2] = 0;
  g3d.setPrimitiveTextureArray(texture);
  g3d.setPrimitiveTexture(0);
  g3d.renderPrimitives(pa, 0);
  g3d.flush()
}
468デフォルトの名無しさん:2005/05/04(水) 13:19:04
いやいやいやw
そんなわけあるかい。

最初からやる気がなかったようにも見えるし、時間がなかったのかもしれない。
だがうっかりってことはないだろw
469464:2005/05/04(水) 13:40:26
>>468
本当にそんなわけないのかなあ。
っていうか本当にダミーなんですかね?

gcメソッドのテストって
なんか確認もおろそかになりそうな希ガス。
テスト担当者「gc()をコール...、エラー発生しないので合格!」
ダミーであることなぞ知る由もなかったり。
なんて、あるわけないし、あってはならないことですよね。
とは言っても、漏れの部下ならやりかねないなぁw


470デフォルトの名無しさん:2005/05/04(水) 14:23:42
901iSがそろそろ出るわけだが、今回は
DoJaのVerUPはないの?
471デフォルトの名無しさん:2005/05/04(水) 14:53:26
もうVerUPしなくていいよ。
それより標準APIの速度をもっと上昇させてくれ。
アファイン返還なんて遅すぎて使えない
472デフォルトの名無しさん:2005/05/04(水) 15:06:53
gc()はダミーメソッドじゃないよ。
ちゃんとメモリの解放はしてくれる。
ただ並べ替え(コンパクション)まではしないから巣が出来っぱなしになっちゃうだけだよ。
473467:2005/05/04(水) 15:30:23
妥協的自己解決です。ポイントスプライトではなくて三角形ポリゴンx2でやってみました。
int[] vertexArray = primitiveArray.getVertexArray();
int[] texCoordArray = primitiveArray.getTextureCoordArray();
int vi = 0; int ti = 0;
// 右下
vertexArray[vi++] = x + width; vertexArray[vi++] = y - 1; vertexArray[vi++] = 0;
texCoordArray[ti++] = srcX + width; texCoordArray[ti++] = srcY;
vertexArray[vi++] = x + width; vertexArray[vi++] = y + height; vertexArray[vi++] = 0;
texCoordArray[ti++] = srcX + width; texCoordArray[ti++] = srcY + height;
vertexArray[vi++] = x; vertexArray[vi++] = y + height - 1; vertexArray[vi++] = 0;
texCoordArray[ti++] = srcX; texCoordArray[ti++] = srcY + height;
// 左上
vertexArray[vi++] = x; vertexArray[vi++] = y; vertexArray[vi++] = 0;
texCoordArray[ti++] = srcX + 1; texCoordArray[ti++] = srcY + 1;
vertexArray[vi++] = x + width; vertexArray[vi++] = y; vertexArray[vi++] = 0;
texCoordArray[ti++] = srcX + 1 + width; texCoordArray[ti++] = srcY + 1;
vertexArray[vi++] = x; vertexArray[vi++] = y + height; vertexArray[vi++] = 0;
texCoordArray[ti++] = srcX + 1; texCoordArray[ti++] = srcY + 1 + height;
こんな感じ。とりあえず歪まないが………何故四角形ポリゴンやポイントスプライトはこう描いてくれないのか謎です……
474デフォルトの名無しさん:2005/05/04(水) 20:00:39
>>467
srcXとsrcYの役割がわからんけど、こうじゃないといかんのじゃないか?
  pointSpriteArray[3] = srcX;
  pointSpriteArray[4] = srcY;
  pointSpriteArray[5] = width - srcX;
  pointSpriteArray[6] = height - srcY;

実際はポイントスプライトを使ったことないが
475デフォルトの名無しさん:2005/05/04(水) 20:50:58
test
476デフォルトの名無しさん:2005/05/05(木) 22:01:17
>>473
その形に分割すれば歪まなくなるのか‥
描画アルゴリズムが変わったらアウト臭いけどw

あと、テクスチャの縦横サイズを2^nにすると歪まなくなった気がする
477デフォルトの名無しさん:2005/05/06(金) 18:55:44
>>472
並べ替えしないようなら、
ゴミ集めとは言えない罠
478デフォルトの名無しさん:2005/05/06(金) 21:13:14
何処の国の定義だろう?
479デフォルトの名無しさん:2005/05/07(土) 00:36:41
gcがまったく無意味ならNやPはもうぬるぽ
480デフォルトの名無しさん:2005/05/07(土) 11:09:46
>>479
それでもDQやFFが動いているわけだから、
ようは作り方なんだろうね。
481デフォルトの名無しさん:2005/05/07(土) 15:07:17
>>480
DQやFFってSPをフルサイズにしてるわけではないのかい?
482デフォルトの名無しさん:2005/05/07(土) 15:42:23
>>477
ガベコレとコンパクションは別物だ。
コピーGCとかだと両方いっぺんに行われるけど。
483デフォルトの名無しさん:2005/05/07(土) 18:21:19
ぬるぽ
484デフォルトの名無しさん:2005/05/07(土) 18:55:12
すいません、質問させてください。
doja3.5で開発したアプリが
エミュレーター上では安定して動いているのですが、
N900iVでは処理ががたおちしています。
友人のSo506iSでは安定して動いているのですが…。

自力で考えてみたところ、バッファの拡大描画が悪さをしているようで、
バッファの拡大描画を止めてみたところ、安定して動くようになりました。

N900iVの方が性能は高いんじゃないのかな〜?なんて思っているのですが、
Fomaシリーズは拡大描画が苦手などあるんでしょうか?
485484:2005/05/07(土) 18:56:55
×N900iV ○P900iV

素で間違えた…、吊ってきますorz
486デフォルトの名無しさん:2005/05/07(土) 20:05:26
FOMAからはSHが(大抵の処理で)最速。
PはNレベルまで急落。(というか、中身がほぼ一緒)
Dは相変わらずアホ。
Fは505以降はF504のすばらしさが見る影も無くなった
487484:2005/05/07(土) 21:36:30
おお、ありがとうございます(`・ω・´)ゝ
自分、当時はiアプリ製作に全然興味なかったもんで、
あまり考えずにP900iVを買ってしまっていた…。

なんだかんだ言ってiアプリ作るの結構楽しいんで、
SHに買い替えようかな…?

弾幕系シューティング完成したんですが、
自分ドット絵ヘタレでして…orz
なかなか公開出来ない俺orz
488デフォルトの名無しさん:2005/05/07(土) 22:20:48
そうそう。SH901は急速にヘタれたので、性能を求めるなら900にしるw
489デフォルトの名無しさん:2005/05/08(日) 01:46:20
どの機種でも動かしたいならわざと性能の低い機種を選ぶのも手
490デフォルトの名無しさん:2005/05/08(日) 01:48:16
>>484
拡大なんかしたらそら遅いわ。

ちなみに、2D描画だけならSHよりもN/Pの方が速いよ。
491デフォルトの名無しさん:2005/05/08(日) 07:33:25
>>486
900iシリーズの場合はそんな感じだが
901iシリーズではSHは3D描画以外ではN、Pに大部分で負けている。

>>488
一応ベンチでは多少結果が良くなっているが
他機種の向上に比べると微々たるもので画面も小さいこともあるしな。
もうすぐ発表のある901iSを待つのもいいと思うが。
492デフォルトの名無しさん:2005/05/08(日) 12:36:24
結論


    全部うんこwwwwwww
493デフォルトの名無しさん:2005/05/08(日) 14:34:30
少なくともN901はうんこ
494デフォルトの名無しさん:2005/05/08(日) 16:35:38
NTTドキュソの考えたDoja仕様自体がうんこ
495デフォルトの名無しさん:2005/05/08(日) 16:57:01
BREWよりはるかにマシと主張してみる。
496デフォルトの名無しさん:2005/05/08(日) 17:57:44
まあな
497デフォルトの名無しさん:2005/05/08(日) 21:01:29
BREWってそんなに酷いの?勝手サイトで配布できないとは聞いたけど環境自体がクソ?
498デフォルトの名無しさん:2005/05/08(日) 21:13:16
気にしなきゃいけないことが多いの
CでWin16のアプリを書いたことがあれば難しくない
でも一度Javaに慣れた体にはキツイのよね
499デフォルトの名無しさん:2005/05/08(日) 22:03:12
上見て
暮らすな下見て暮らせ
でもjavaしかできないなんてプログラマじゃないですぅぅぅ
500デフォルトの名無しさん:2005/05/08(日) 22:38:07
>>497
ここで書くのもなんだが、本当にクソ。

1)APIが屑
わざと開発しにくいように設計したとしか思えない。
内部で勝手にリソースを確保するくせに、解放はプログラマがやんなきゃいけない
インタフェースとかあって殺してやりたくなる。

2)ドキュメントが屑
めちゃめちゃ数が多い上に整理されてないので、結局全部読まないといかん。
しかも、BREW自体のバージョンが上がったときにAPIリファレンスが更新されて
いない所があったりして、結局ヘッダファイルまで読まないと作れない。

3)実行環境が屑
どうにかこうにか完成させてみると、一部の実機では不具合が出るので、
回避するためのコードを書かされる羽目に。

4)検証が屑
わけわからんルールがいっぱいあって、それぞれ別のドキュメントに書かれている。
しかも提出してから結果が出るまで数ヶ月待ち。

#なのに大手だけ優遇。市ね。
501デフォルトの名無しさん:2005/05/08(日) 23:24:26
>>1)APIが屑
高校生が夏休みの宿題で作ったそうだが、本当に思えるところが凄い。
それにヘッダファイルもwindowsのハンガリアン記法で書かれていて見苦しい。
なんでそんな馬鹿な書き方するのか?

それ以外にも数限りなく屑なところがあって、コードが読めなくなる。
サンプルコードを読んでみるとわかる、汚くて読めない。

そういえば昔は変ったハードウェア向けはこんな感じだった。
10年ばかり退化した感じだ、これがqualcommの最新の技術というのは....
502デフォルトの名無しさん:2005/05/08(日) 23:32:47
BREWが「最新技術」とかいってもてはやされているのは笑えるよね。
Windowsもあれだがそれでも100倍まし。
503デフォルトの名無しさん:2005/05/08(日) 23:33:18
システムに数秒制御が戻らないだけで電源が落ちる。
ゲームのCPU思考とかで簡単にブチッ!
504デフォルトの名無しさん:2005/05/09(月) 01:57:32
勝手ソフト配布できないってだけで
BREWは糞だなぁと思う。
505デフォルトの名無しさん:2005/05/09(月) 02:00:40
>>503
それは仕方ないわな。
あくまでも電話であって、本業をおろそかにできないから。
というか、BREWのカーネルのテクノロジーがノンプリエンプティブ(似非マルチタスク)で
テクノロジー的にWin3.1を大幅に下回るのが問題だw
かつての8bit OS OS/9でさえ、タイムシェアリング(プリエンプティブ)くらいサポートしていた。

506デフォルトの名無しさん:2005/05/09(月) 02:01:36
http://YahooBB219048000061.bbtec.net/
おkwwwっうぇ
うはっwwwおkwwwうはっwww
うぇwwwうはっwwwwwwwww
wwwwwww
うぇwww

っおkwwwwwwwwwwww
507デフォルトの名無しさん:2005/05/09(月) 20:34:07
iアプリ作ってみたいのですが、JAVAをいちから勉強してから作ったほうがいいんでしょうか。
それとも、初プログラムがiアプリでも問題無いですか?
508デフォルトの名無しさん:2005/05/09(月) 21:34:21
CとかBASICとかやったことある?
あるならいきなりでも問題ないんじゃね。
509デフォルトの名無しさん:2005/05/09(月) 22:08:42
うちはiアプリから入ったけど全然問題なしだった。
510デフォルトの名無しさん:2005/05/09(月) 23:04:31
>>508
BASICは昔、F-BASICでゲーム作ったことがあるくらいです。
Cは、すこーーーーしかじった程度。
プログラムはこんな感じでかかれてて…ってのが分かる程度です。
>>509さんみたいな意見もあるみたいなんで、ちょっくらやってみたいと思います。
最終的には、ネット対戦可能なカードゲーム作ってみたいです。
511デフォルトの名無しさん:2005/05/09(月) 23:56:42
いきなり目標高いな。
PHPとか作れないといかんから…。まぁJAVAが組めるようになれば、大抵の言語組めるよ。
512デフォルトの名無しさん:2005/05/10(火) 01:38:08
>>497
BREWに比べるとDojaのエミュがマトモに見えるぐらい糞
513デフォルトの名無しさん:2005/05/10(火) 08:53:12
BREWエミュ、アプリが落ちるときにエミュごと落ちるもんなぁ。ありえない。
514デフォルトの名無しさん:2005/05/10(火) 11:52:25
>>510
志が高いのは素晴らしいが、悪いこと言わないからネット対戦部分は
かな〜〜っり厄介だからそれ以外から手をつけましょう^^
ネット対戦は通常のPCと違ってずっとオンライン状態ではない携帯では
かなり面倒な部分。パケ代もパケホー代でないと死ぬかもw

iアプリで一番厄介なのは機種依存!プログラムを理解してても
この部分で引っかかる事はかなりあるので、まず簡単な物から作って
自分の組み方で動くかどうか周辺の仲間なりに頼んで動かしてみる事お勧め。
ぶっちゃけプログラムが正しくても正常に動かないことが多数w
あと機種ごとの性能がまちまちと言うよりも落差が激しいのでそこも注意。
まぁ頑張れ!!
515デフォルトの名無しさん:2005/05/10(火) 16:37:04
そんなに難しくない
パケホなんか当たり前
それより鯖の性能
516デフォルトの名無しさん:2005/05/10(火) 16:46:55
鯖の性能テラワロスwwwwwwwwwwwwwwwwwwwwwww
517デフォルトの名無しさん:2005/05/10(火) 17:42:30
鯖の性能って…。一体なんの冗談だ
518510:2005/05/10(火) 17:54:42
>>511
最初は簡単なのから行きます。
文字表示とか、入力結果を計算して、表示するとか…
>>514
自分でもそう思います。ネットワークはまずは切って、それから構築していこうと思っています。

本屋でjava本読んできました。
jvmっていうものの上で動くんですね。
機種依存についても読みました。
j2meというものになりそうなので大変そう。
とりゃえずがむばります。
519デフォルトの名無しさん:2005/05/10(火) 19:41:51
>>516-517
〇〇〇〇〇ンとか〇〇〇Cとかがいい例じゃないか。
専用鯖でさえ数日間落ちるんだから。

あ、そういやここ〇ー〇の社員見てるだろ。早くバグ取り・更新してね^^
520デフォルトの名無しさん:2005/05/10(火) 19:51:07
>>519
一体510はどこのネットゲーム会社の役員なんだよw
521デフォルトの名無しさん:2005/05/10(火) 22:22:05
所謂「携帯ネットゲーム」って、どれぐらいユーザーいるんだろうね。
大体は稼働初日に鯖が保たなくて落ちてる気がするが。
522デフォルトの名無しさん:2005/05/11(水) 01:53:04
>>518
iアプリ作りたいならこの辺りがおすすめの入門書かと。
http://www.amazon.co.jp/exec/obidos/ASIN/4839917361/249-4581777-4854725
http://www.amazon.co.jp/exec/obidos/ASIN/4872804961/ref=pd_sim_dp_3/249-4581777-4854725

ドコモ配布のiアプリ技術資料をしっかり読むのが一番だけどね。
523デフォルトの名無しさん:2005/05/11(水) 02:36:57
FOMAならばこれも参考になる
http://www.amazon.co.jp/exec/obidos/ASIN/4756145035/
524デフォルトの名無しさん:2005/05/11(水) 11:12:59
スレ違いかもしれないがJavaHz [ジャバヘルツ]ってドコへ消えたのかな・・。
久々に行ってみたらへんなページが表示されるだけで何もなかったぞい。
たま〜に行くと便利だったのになぁ。
525デフォルトの名無しさん:2005/05/11(水) 11:20:57
>>524
俺もそれは気になってた。
去年の12月頭以降なんの音沙汰もない。
526デフォルトの名無しさん:2005/05/12(木) 11:30:10
>>525
ん〜〜やっぱ消滅したのかなぁ・・・。
ってかそんな前から消息不明だったのか・・。
メーリングリストも死んだのかな?
527525:2005/05/12(木) 14:04:57
>>526
そのメーリングリストからのメールが12/4以降来てないんだよね。
528デフォルトの名無しさん:2005/05/12(木) 15:33:15
質問失礼します。

900i 901i 700iシリーズのiアプリ上で使用できるフォーマット形式は、拡張子で言うと
gif bmp png jpg 3gp mld
となり、これが"全て"だと思っているのですが、他にありますでしょうか?

生まれてすいません。
よろしくお願いします。

529デフォルトの名無しさん:2005/05/12(木) 16:05:39
>>528
質問は理解できるがそんなの知ってどうするのか疑問。

とりあえずそれが総てではありません。
3D関係のデータd4dとかその他もろもろがあります。
一応jarもあるかな。調べりゃまだまだ出てくるんじゃないかな。
530デフォルトの名無しさん:2005/05/12(木) 16:49:01
釣りにしかみえないが…

ヒント:png mid
531デフォルトの名無しさん:2005/05/12(木) 16:55:00
png?
532デフォルトの名無しさん:2005/05/12(木) 16:57:14
っていうか、拡張子なんてなんでも読めるんじゃねーの?
拡張子で中身判断してるわけじゃないでしょ。

っていうかPNGってなんだよ。読めねーよ。
533デフォルトの名無しさん:2005/05/12(木) 17:04:31
有料着メロダウンロードサイトを作ったとき調べたけど
携帯はmld の拡張子を見てたな。

しかも、機種によって見る場所が違うもんだから
ヘッダーのContent-dispositionと、cgiの名前(PATH_INFOだけど)と
パラメタの最後と、全部に.mld つけたっけなw
534528:2005/05/12(木) 17:06:59
>>529
返答ありがとうございます。
人に説明するって難しいですね。。。


どう言えば伝わるのだろうか。。。
iアプリを制作する者がメモリを使用せず(また突付かれそうですが)、
そのまま利用できるファイルフォーマット形式が知りたいのです。
(cgi等のネット関係以外で)
例:
 m=MediaManager.getImage("resource:///ore.gif"); ←そのまま
 m=MediaManager.getImage("resource:///unko.3gp"); ←そのまま
 m=MediaManager.getSound("resource:///ko.mld"); ←そのまま

d4dがそれ(どれ?)に抵触しないのであれば、そういうのを知りたいのです。


生まれてすいません。
よろしくお願いします。
535533:2005/05/12(木) 17:13:08
まあmldはMIMETYPEを、text/plain にしろという
むちゃくちゃな仕様だったからそのせいもあるんだろうけど>拡張子を見てる

text/plainにすれば、ウェブサーバ側の変更無しに
ファイルが置けるからって理由なんだろうけどな・・・
536デフォルトの名無しさん:2005/05/12(木) 17:16:04
mldって拡張子見てたのか。
ん?それっておかしくね?
スクラッチパッド内のmldもきちんと読めるぜ?
537528:2005/05/12(木) 17:20:51
失礼しました。
BMP と PNG は無理なんですね。
なにせ、初心者なもので、、、
538デフォルトの名無しさん:2005/05/12(木) 17:31:14
BMPはマスコットカプセルのテクスチャとして読めるべ。

とりあえず、目的を言ってくれ。
もっとも容量を削減できる画像フォーマットを探してる。とか。
539デフォルトの名無しさん:2005/05/12(木) 17:36:02
読み込みのメソッドが用意されてるファイルフォーマットは? ってことかね
540528:2005/05/12(木) 17:49:53
>>538
返答ありがとうございます。
あー、そうなんですね < BMP
勉強になります。
っていうか、これは openInputStream では!?
そっか、質問の定義ではそうなるなぁ。。。

目的はキャリアが対応しているファイルフォーマットを単に把握しておきたいだけです。
541デフォルトの名無しさん:2005/05/12(木) 17:50:44
なら画像はGIF、JPG
音はMLDと覚えておけばよろしい。

それ以外は使わん。
542528:2005/05/12(木) 17:51:47
>>539
そうそれ!
私には解説力が足らないなぁ。。。

生まれてすいません。
よろしくお願いします。

っていうか、 gif jpg 3gp mld これ以外無いですよね!?
543528:2005/05/12(木) 17:54:46
>>541
なるほど。
ありがとうございます。
544デフォルトの名無しさん:2005/05/12(木) 18:40:54
MediaManager.getImage() 〜 use()の流れで取得した画像って
不要になった際、きっちりとunuse()〜dispose()しないと後々ヒドいめにあうということを聞いたのですが、
これって本当でしょうか。

サンプルとか見ると、Imageオブジェクトはdispose()してるけど、MediaImageまでやってるのはあまり見なくて
545デフォルトの名無しさん:2005/05/12(木) 19:16:45
ま、開いたもんは閉じとけ。
546デフォルトの名無しさん:2005/05/12(木) 19:23:15
すみません。
質問なのですが。iアプリで電源ボタン(切ボタンの方)
の制御みたいなものは行えないのでしょうか?

iアプリを電源切ボタンで押されて、終了ダイアログから終了されたくないのですが…
APIは見てみたのですが… 仕様なんでしょうか?

何かいいアイデアはないでしょうか?
547デフォルトの名無しさん:2005/05/12(木) 20:16:42
>546
無理じゃないかねえ。
つか、そうでないとフリーズしたアプリ止める手段なくなるじゃん。
548547:2005/05/12(木) 20:17:06
フリーズしたら勝手にOSが止めるかもしれんけどなー。
549デフォルトの名無しさん:2005/05/12(木) 20:31:43
電源ボタンで切られたら二度と起動できないようにしてやれw
550デフォルトの名無しさん:2005/05/12(木) 21:18:40
ない。
そもそもそんなアーキテクチャは誉められたものではない

プレステでもなんでもゲーム側でリセットボタン無効とかされたらぶち切れるだろ?w
551デフォルトの名無しさん:2005/05/12(木) 22:09:40
>>546
普通に考えておかしな質問してるって気が付かないかい?
電源ボタンで終えられない作りができるとすると…
一度起動したが最後、バッテリーが切れるか抜くかしないと
止められないアプリ、なんてのが作れちゃ困るでしょ。
552デフォルトの名無しさん:2005/05/12(木) 22:26:53
>>545
ありがとう。そうします。
Image取得後、すぐ捨てちゃっても大丈夫なのかな…ちょっと実験
553デフォルトの名無しさん:2005/05/12(木) 22:27:15
>>549がナイスアイデア。
554デフォルトの名無しさん:2005/05/12(木) 23:15:30
電源終了でどんな不具合があるのか知らんし、何とも…。

スクラッチパッドに○○中フラグとか書き込んでおけば、
次に起動した時に「お前○○中に切っただろ。ぺなるちーな。」ってできるか?
555デフォルトの名無しさん:2005/05/12(木) 23:28:42
>>554
そうすると電池が切れた時もペナルティか。
556デフォルトの名無しさん:2005/05/13(金) 00:05:25
電池切れは流石に本人の責任としてくれよw
557デフォルトの名無しさん:2005/05/13(金) 01:32:49
でもN900とかはちゃんと終了しないとスクラッチパッドに書いてくれない…
558デフォルトの名無しさん:2005/05/13(金) 03:33:21
バッテリーを抜いてもなぜか止まらないアプリ……。(((( ;゚Д゚)))ガクガクブルブル
559デフォルトの名無しさん:2005/05/13(金) 03:34:34
>>554
そこでセーフモードで起動するというギャグですよ。
560デフォルトの名無しさん:2005/05/13(金) 08:42:32
そこでドラクエのセーブデータが失われたBGMですよ。
561デフォルトの名無しさん:2005/05/13(金) 10:12:46
>>557
電池抜くと、スクラッチパッドに「書き込んだはずのデータ」が無効化されるんだっけ?
電源キー押しで終了ダイアログからやった場合は大丈夫だよな?
562デフォルトの名無しさん:2005/05/13(金) 10:23:03
今N900で電池抜き試してみたわ。

スクラッチパッドへの書き込み無効化された…。
>>554こういう方法でランキングの不正をはじいていたアプリが全滅だ…。
何か解決方法ない?

・サーバーでフラグ管理
・ゲームを始めたらTerminateして一旦強制的に保存(ユーザーめんどくさいだろ!)
・不正はじきはもうできない

どれだろう…。
563デフォルトの名無しさん:2005/05/13(金) 11:00:29
・N900i非対応

まぁユーザーに再起動促すぐらいなら良いんじゃないか?
商用だと上の方から五月蝿く言われそうだが、不正されるよりマシだわな。
564デフォルトの名無しさん:2005/05/13(金) 11:15:19
スクラッチパッドに書きこんだ後、終了しないでも
フラッシュする、というかちゃんと書き込む機能ないの?
565デフォルトの名無しさん:2005/05/13(金) 11:22:35
>>564
一番知りたいのはそれなんだが、聞いたことないな…。
566デフォルトの名無しさん:2005/05/13(金) 11:23:17
>>563
1コマンド選ぶたびにリアルタイムセーブをするタイプのゲームはどうすんだw
567デフォルトの名無しさん:2005/05/13(金) 11:33:38
>>552
みんなスルーしてるが・・・Image取得後すぐ閉じるとだめ。
その取得したイメージを使用しなくなった時に両方消すべし。
ただ機種によってはイメージを破棄したときにメディアイメージも消える機種ありなそうな。
tryでエラー取得しないと機種によっては落ちる。

>>564
ない。
568デフォルトの名無しさん:2005/05/13(金) 11:39:16
>>567
N504が、Image破棄したときにMediaImageも消えるよ。
おかげでN504だけMediaImageの解放時にエラーになるんだよな。
569デフォルトの名無しさん:2005/05/13(金) 16:52:59
さすが組み込み屋! ゲーム屋が心底困る設計を平然とやってのける。
そこにシビれる! あこがれるゥ!

スクラッチパッドをすぐ更新しないのがヤヴァイって、
ゲーム開発経験がある人間が一人でもいれば、すぐ気づきそうなもんだがなあ。
570デフォルトの名無しさん:2005/05/13(金) 17:33:10
ゲーム機じゃなくて電話だから
フラッシュに書き込み寿命があるのを知らない一般人がアプリを作ったら…
571デフォルトの名無しさん:2005/05/13(金) 17:38:45
一般人が長めにiアプリ使ってても、
そのアプリがしょっちゅう書き込みしてても
寿命は本体のが短かそうだなあ
572デフォルトの名無しさん:2005/05/13(金) 17:43:49
フラッシュの書き込み限界よりさきに、世代が2〜3回変わって買い換えしてると思うぞ…。
573デフォルトの名無しさん:2005/05/13(金) 20:55:06
といいつつ
俺が使用してる携帯はもう5年以上機種変してないわけだが
574デフォルトの名無しさん:2005/05/13(金) 23:52:43
各機種の拡張API対応表みたいなのを載せているサイトってありませんか?
575デフォルトの名無しさん:2005/05/14(土) 01:59:18
どこも公式にあります
576デフォルトの名無しさん:2005/05/14(土) 02:50:30
どういうわけか、どこも茸のヌイグルミがほしい。
577デフォルトの名無しさん:2005/05/14(土) 10:57:59
組み込みソフトのバグで、フラッシュガンガン書き換えて
あっという間に限界に達して壊れるという事例があったのをご存知か?
578デフォルトの名無しさん:2005/05/14(土) 12:24:57
>>577
な、なんだってー!?
詳しく詳細希望
579デフォルトの名無しさん:2005/05/14(土) 14:38:16
>>575
DoCoMo公式を確認したのですが、それらしきものが見つかりませんでした。
拡張APIリファレンス、開発ガイド等を見ても
各機種の対応、非対応の記述はありませんでした。
申し訳ありませんが、URLを教えて頂けませんでしょうか?
580デフォルトの名無しさん:2005/05/14(土) 15:31:41
>>579
対応表は開発者(コンテンツプロバイダ)向けの資料で見たことあるけど。
普通には入手できませんぞ。
581デフォルトの名無しさん:2005/05/14(土) 15:45:42
>>579
>>2のページの↓これ。4.0用はあきらめろ。
アプリコンテンツ開発ガイド for DoJa-3.5各機種オプションAPI・拡張API実装状況
582デフォルトの名無しさん:2005/05/14(土) 17:48:06
>>580-581
ありがとうございました。
4.0用はまだなかったんですね。
583デフォルトの名無しさん:2005/05/14(土) 21:26:22
gif画像を分割してImageに割り当てた場合に透明色を指定する方法はありませんか?
584デフォルトの名無しさん:2005/05/14(土) 21:27:02
>>577
知らんわ。そういう問題に対処することと、
ストレージの動作を根本的に変えてしまうことはイコールではない。
585デフォルトの名無しさん:2005/05/14(土) 21:42:49
>>583
ない
586デフォルトの名無しさん:2005/05/14(土) 21:59:47
無名なクラス
com.nttdocomo.opt.ui.j3d#TransparentImage
587デフォルトの名無しさん:2005/05/14(土) 22:27:13
おまえのバグを俺様に(ry
588デフォルトの名無しさん:2005/05/15(日) 00:25:31
ウルウル目線でお願いしてくるおねーちゃん
589510:2005/05/15(日) 19:30:40
「てか、携帯のiアプリやらで、マジックできたらいいのになー。
パケット定額だし、画面も最近のは広いし。
カードデータはSDカードに保存してさ。
赤外線で、トレードできたりとか…
よさげやない? 」
をコンセプトに思案してたのですが。。
iアプリの容量、オーバーしますかねこれ。
マジックというのは、トレーディングカードゲームの一種です。
ルールは結構複雑なのですが。。。

著作権とかあるので、汎用カードゲームプレイヤーみたいにしてカードデータをSDで差し替えるとか考えてたのですが
甘いですかねやっぱり。
590デフォルトの名無しさん:2005/05/15(日) 19:46:39
>>586
TransparentImageは実装している機種が少なすぎるので使えないんですけど・・・
591デフォルトの名無しさん:2005/05/15(日) 21:14:12
>>589
DoJaはSDにアクセスできない。
592デフォルトの名無しさん:2005/05/15(日) 21:30:27
>>589
ルールコンフィグデータとカード画像データを保持して、
カードデッキのデータはウェブ上に保存とか…。

バグ取りと不正対策でいっぱいいっぱいになりそうだから、
いきなりそんなでかいプロジェクトやったら死ねる。
593デフォルトの名無しさん:2005/05/15(日) 22:09:37
drawStringってなんでこんなに遅いんですかね?
594デフォルトの名無しさん:2005/05/15(日) 22:12:43
>>591
なんてこった。。。
頓挫だなぁ。。orz

>>592
っぽいっすね。。
潔く諦めます。
595デフォルトの名無しさん:2005/05/15(日) 22:27:10
ぬるぽってむかつくね。強制終了したのはお前のせいだ、みたいな。
596デフォルトの名無しさん:2005/05/15(日) 22:41:29
>>595
ガッ
597デフォルトの名無しさん:2005/05/15(日) 23:17:43
実際ほとんどの場合はお前のせいなんだが・・
598デフォルトの名無しさん:2005/05/16(月) 09:42:45
>>593
そりゃお前、アウトラインデータを参照しながら1ドットずつ色うってくれてんだぞ。
Image転送なんかよりよっぽど遅いわい。
599デフォルトの名無しさん:2005/05/16(月) 11:00:59
なんでJavaの起動速度がこんなに機種によって違うんですか?
600デフォルトの名無しさん:2005/05/16(月) 11:17:11
>>599
CPUの性能が違うから。
もしかしたら初期化のプロセスが違うのかもしれないが。
601デフォルトの名無しさん:2005/05/16(月) 12:14:48
Dojaについて質問なのですが、Imageの分だけMediaImage変数を定義しないといけないのでしょうか?
例えば、Image im = new Image[2];と宣言してMediaImage mと宣言し
mにリソース情報を格納し、im[0] = m.getImage();とした後に
また再度mにリソース情報を読み込んでim[1] = m.getImage();として良いのでしょうか?
一応動くのですが、このように使いまわしていいか不安になったので教えて頂けませんでしょうか。
602デフォルトの名無しさん:2005/05/16(月) 13:50:14
>>601
Image分だけMediaImage変数を定義はしなくても正常に動作する。

ただしアプリ内で大量に画像を扱う場合、
同時に使える量に限界があるので既に読み込んだ
Imageを破棄して新たなImageを読んで対処する場合がある。
この場合MediaImageを各Image分確保してない場合上手に
破棄できない場合がある。

画像の入れ替えを前提にしてる場合はその入れ替えの
可能性のあるImageにはMediaImageを保持しておく
事をお勧めしておく。読み込んで一切破棄しないなら
MadiaImageは定義しなくても良いと思われる。
603デフォルトの名無しさん:2005/05/16(月) 13:55:00
>>600
志村ー!メル欄!メル欄!
604600:2005/05/16(月) 13:58:50
>>603
メル欄は気付いてたが、釣りか?これ。
くだらない質問だとは思ってたが。
無視して答えたまで。
605デフォルトの名無しさん:2005/05/16(月) 14:08:04
>>601
MediaImageの実体が、どこかへ消えてしまってるぞ。
a = new String("うは");
a = new String("おけ");
とやったら"うは"のほうは補足できなくなってしまう。
Stringの場合は解放されるのが保証されているからいいが、MediaImageについてはその辺りブラックボックス。
ゴミとして残りつづける可能性を否定できないぞ!
606デフォルトの名無しさん:2005/05/16(月) 15:34:50
>>602さん
>>605さん
ご丁寧なレスポンス、ありがとうございます。
GC頼りにしてたんですが、やっぱり怖い部分はあるみたいですね…。
容量のこととか気にしてましたが保守性のほうが大事なのでやはりMediaImageを
Image分だけ取得して安心感を買いたいと思います。ありがとうございました!
607デフォルトの名無しさん:2005/05/16(月) 17:40:39
まぁ実際サンプルでもきちんとMediaImageを解放するように作られてるはず。
しかもどうせMediaImageなんてポインタなのだから、Image分だけ持ってい手も各4バイトしかメモリーを消費せん。
ガンガンつくれ!
608デフォルトの名無しさん:2005/05/16(月) 18:31:30
スクラッチパッドについてよく分かりません。
どこに説明が書かれているのですか?
609デフォルトの名無しさん:2005/05/16(月) 18:57:29
スクラッチパッドについての何がよく分からないのかよく分かりません。
どこに説明が書かれているのですか?
610デフォルトの名無しさん:2005/05/16(月) 20:15:50
611608:2005/05/16(月) 20:21:46
すいません。
データを保存(・読み込み)する仕方が分からず、
検索したところスクラッチパッドを使うというのは分かったのですが、
スクラッチパッドの使い方が分からなくて質問しました。
スクラッチパッドの使い方というのはどこに書かれているのですか?
612デフォルトの名無しさん:2005/05/16(月) 20:22:31
APIリファレンス読め。まずはそれからだ。
613デフォルトの名無しさん:2005/05/16(月) 21:44:17
リファレンスを読んで駄目なら、サンプルソースを読めばいいじゃない。
614デフォルトの名無しさん:2005/05/16(月) 21:45:33
DoJaそのものの説明pdfにサンプルがあるよ。APIリファレンスとは別の。
615デフォルトの名無しさん:2005/05/16(月) 22:51:02
テンプラがあるんだからちゃんと見なさい。
>>2 に置いてあるから。
616608:2005/05/16(月) 22:59:22
>>610 >>612-615
ありがとうございます。
まず、iアプリコンテンツ開発ガイド for Doja-4.0を参考にしてみます。
617デフォルトの名無しさん:2005/05/17(火) 05:34:13
livedoorのねとらじのiアプリがあるのですが、
http://blog.livedoor.jp/ladio_guide/archives/19960440.html
結構長い(数分)のネットラジオをストリーミングで聴けました。

最初はiモーションをhttpでストリーミングしてると思ったのですが、
httpレスポンスのサイズの上限が150KBとなると、
長い放送をするには、繰り返しリクエストしてうまくつなげないと
正しく再生できないような気がするのですが、
どなたかどのようにすればうまく長い音声ファイルを
切れることなく再生できるかご存知ないでしょうか?
618デフォルトの名無しさん:2005/05/17(火) 09:37:33
150KB落とす。それを再生している間に次を落とす。
619デフォルトの名無しさん:2005/05/17(火) 17:25:50
>>617
ありがとうございます。
実機などで試していないんで何ともいえないのですが、
MediaListenerで再生終了イベントを拾って、
次の150KB分のデータを再生、ってやろうとすると、
その間のギャップができないですかね。
やっぱり実機で試すしかないかなぁ・・・。
620デフォルトの名無しさん:2005/05/17(火) 20:42:00
アプリで3gpファイルを再生させたいんですが
Canvasに描画するにはどうすればいいのでしょうか?
VisualPresenterでPanelにaddするとネイティブの
再生バーみたいなのでるのでイメージ部分だけを
表示したいのですが・・・。
621デフォルトの名無しさん:2005/05/17(火) 22:15:17
動画に描画は、自前で実装するしかない。無理だと思うけど。
622608:2005/05/18(水) 18:07:38
いろいろ参考にして書いてみました。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/412.txt

何がしたいかというと、スクラッチパッドに書き込むときはws()の引数に配列を指定して保存します。
読み込むときはstrという配列にスクラッチパッドの中身を入れるようにします。

試しにrs()で読み込んで、str[i]が空ならリストボックスに"から"という項目を作るようにしました。
そして実行したところ、"から"という項目は作られなかったのですが、項目をみても、何も書かれていませんでした。
str[i]の中身がいったい何なのか理解できません。
スクラッチパッドには、まだ何も書き込んでいないのでもちろん空です。(SPsizeは5000です。)

何が原因で、"から"という項目が作られなかったのか教えて下さい。
623デフォルトの名無しさん:2005/05/18(水) 18:34:06
原因?

if(str[i]==""||str[i]==null)

このif文が真にならなかったから

以上!
624デフォルトの名無しさん:2005/05/18(水) 19:35:15
>>622
if( str[i] == null || str[i].equals("") )
625608:2005/05/18(水) 21:00:58
>>624
ありがとうございます。
思っていたように出来ました。
626デフォルトの名無しさん:2005/05/18(水) 21:41:48
放電アプリを作成中です。
内容は下記の通りです。
 ・サウンド鳴動
 ・バイブレータ
 ・バックライト
 ・赤外線(リモコン)
 ・画面チカチカ
までやったのですが、TV電話かけっぱなしに勝てません。何を追加したらよいでしょうか?
今んとこ150分位ですが、90分までいきたいんです・・・
627デフォルトの名無しさん:2005/05/18(水) 23:10:56
通信するとか
628デフォルトの名無しさん:2005/05/18(水) 23:25:18
なんに使うのか果てしなく謎だが、とてもおもしろい試みだなw
629デフォルトの名無しさん:2005/05/18(水) 23:51:42
消費電力と本体の発熱には密接な関係がある。
ずっとパケ通してると本体熱くならない?
消費電力でいうと無線通信が最強。
630デフォルトの名無しさん:2005/05/19(木) 00:04:28
iモーション再生は?
画面チカチカ&サウンド鳴動とたいして変わらない可能性もあるが
631デフォルトの名無しさん:2005/05/19(木) 00:19:10
マルチスレッドで延々と通信はデフォだろ
632デフォルトの名無しさん:2005/05/19(木) 00:46:05
パケホ入ってないと死にそうだな
633デフォルトの名無しさん:2005/05/19(木) 00:56:54
携帯電話に使われているリチウムイオン電池って
メモリー効果がほとんどないらしいから、
わざわざ放電させる必要はないのだよ。
634デフォルトの名無しさん:2005/05/19(木) 09:22:26
しかしだんだん使える時間が短くなっている・・・
635626:2005/05/19(木) 09:38:32
626です。レスありがとうございます。

お金がかかるので通信はしたくないと考えております。
ずーっとDLが一番簡単だと思うのですが。

ちなみに機能は
放電→計測→電源断→次回起動時に計測結果みたいな感じです。
メモリー効果は期待していませんが、30分位まで、作りこめばいろいろと用途があるかなと思います。

636デフォルトの名無しさん:2005/05/19(木) 12:15:31
>いろいろと用途がある
くわしく
637デフォルトの名無しさん:2005/05/19(木) 13:20:47
エロい事に使う気だな・・・!
638デフォルトの名無しさん:2005/05/19(木) 13:57:07
HttpConnectionを使って、getSourceURL()ディレクトリ内の
ファイルにアクセスするアプリを動かそうとしています。
(ここのサンプルです→http://2php.jp/iapp/HttpConnection.html
しかし、「con.connect()」の部分で下のエラーが発生します。

com.nttdocomo.io.ConnectoinException: Illegal header
どのあたりにミスの可能性があるでしょうか。
ご面倒ですが、アドバイスをお願いします。
639デフォルトの名無しさん:2005/05/19(木) 14:07:06
ImageEncoderでJPEG以外に使えるフォーマットってあるの?
640デフォルトの名無しさん:2005/05/19(木) 14:47:27
>>638
このページ、サンプルがいっぱい載っていてどのサンプルか「?」
なんだけど。
「Illegal header」って言われているんだから、GETとPOSTを
セットし忘れているとか、そんなあたりでわ?
641デフォルトの名無しさん:2005/05/19(木) 16:37:18
>>640
ありがとうございます。 >>638 です。
一番下の「HttpConnectionのコードサンプル」というものです。
GETはセットしています。
con.setRequestMethod(HttpConnection.GET);
642デフォルトの名無しさん:2005/05/19(木) 17:03:25
そこだけ書いて何をしたいんだ。
643デフォルトの名無しさん:2005/05/19(木) 17:56:23
てきとーに一番したのプログラムを実行してみたけど
何だか
 con.setRequestProperty("Content-Type","text/plain");
を削除するといいみたい…
なぜだ?
644デフォルトの名無しさん:2005/05/19(木) 23:07:29
>>634
メモリー効果とは、関係ないっす。
寿命というか、使用による劣化どすな。
645デフォルトの名無しさん:2005/05/20(金) 00:36:40
>>643
GETにボディなんてないのに、Content-Typeがあるなんておかしいからじゃないの?
646デフォルトの名無しさん:2005/05/20(金) 00:41:08
>>636
予想
相方と自分が同時に大にイきたくなって先を越される。
携帯をちょっと拝見して、アプリを落とし起動。
「早くでねえとお前の携帯の電池あぼーんな!」

     (゚∀゚)
647デフォルトの名無しさん:2005/05/20(金) 02:05:14
たしかにGET要求にBODYがあるのはヘンだけど、
送らなきゃいいだけって気もするし、
HTTPの仕様だとどうなんでしょうね。
648ゆー:2005/05/20(金) 07:59:49
はじめまして、ゆーと申します。

ぜんぜん、話題を変えてすみません。

現在iアプリを作成していますが、なんせ初心者なもので、手こずっています。

GIF画像をresourceから読み込む書式は、よく見るのですが
 MediaManager.getImage("resource:///img/***.gif");
TXTファイルからテキストデータを読み出す書式ってあるのでしょうか?

何とぞ、お力を御貸し下さい。
よろしくお願いします。
649ゆー:2005/05/20(金) 08:00:47
はじめまして、ゆーと申します。

ぜんぜん、話題を変えてすみません。

現在iアプリを作成していますが、なんせ初心者なもので、手こずっています。

GIF画像をresourceから読み込む書式は、よく見るのですが
 MediaManager.getImage("resource:///img/***.gif");
TXTファイルからテキストデータを読み出す書式ってあるのでしょうか?

何とぞ、お力を御貸し下さい。
よろしくお願いします。
650デフォルトの名無しさん:2005/05/20(金) 08:34:39
同じ。
651デフォルトの名無しさん:2005/05/20(金) 09:13:15
偽装GIFでググれ。txt直接は無理。
652デフォルトの名無しさん:2005/05/20(金) 10:07:39
というか、リソースに含めるならソースに含めてしまえばいいじゃない。
String STRTXT = "ここにテキストの内容";
653デフォルトの名無しさん:2005/05/20(金) 10:14:02
Connectorにresource:スキーム要求することってできなかったっけ?
654デフォルトの名無しさん:2005/05/20(金) 11:17:16
透過Gifが使えるのにスプライト機能があるのが意味わからん。
655デフォルトの名無しさん:2005/05/20(金) 11:30:26
スプライトはそれだけじゃないからな
656デフォルトの名無しさん:2005/05/20(金) 13:25:46
>>649
TXTファイルというのが何を意味してるか謎だけど、

単に文字列データをハードコーディングしたくないなら、
スクラッチパッドにに入れといて
使うときにbyte配列に取り出してString作ればいいんじゃないか?
657デフォルトの名無しさん:2005/05/20(金) 13:30:04
俺もSprite使ったことないな。
接触判定可視設定以外に利点ある?
658デフォルトの名無しさん:2005/05/20(金) 15:35:01
>>649

byte[] data = null;
String name = "ファイル名";
try{
DataInputStream dis = Connector.openDataInputStream("resource:///"+name);

data = new byte[dis.available()];
dis.read(data);
dis.close();
}
catch(Throwable t){
}


で読めたような。
659デフォルトの名無しさん:2005/05/20(金) 16:23:06
え!?
660デフォルトの名無しさん:2005/05/20(金) 16:34:12
>>657
drawSpriteSetでまとめて書くと速い機種がある
661デフォルトの名無しさん:2005/05/20(金) 17:43:13
質問です。
http://www.geocities.jp/java_iappli/java94.htm
ここのichat.javaってサンプル内に「wo_buffer.write("read");」って
部分があります。(このサンプル内ではreadという文字に意味はないですが、)
wo_buffer.write("name=foo&addr=bar")のように、「&」を入れると
「wo_connect.connect();」の部分で「com.nttdocomo.id.ConnectionException」
エラーが発生します。
なぜ&は使えないのでしょうか?
662デフォルトの名無しさん:2005/05/20(金) 21:01:50
ShortTimerがマルチタスクボタンを押されると止まってしまいます。
これを回避する方法はありませんか?
663デフォルトの名無しさん:2005/05/20(金) 21:22:29
ない。
664デフォルトの名無しさん:2005/05/20(金) 21:22:50
復帰を検出して再スタート…って検出できなかったっけ?
Vodaならできるんだけどなぁ
665デフォルトの名無しさん:2005/05/20(金) 22:06:13
そもそも
マルチタスクボタン押下=一時停止中になぜshorttimerが必要なのかと
666デフォルトの名無しさん:2005/05/20(金) 22:22:26
>>665
一時停止中ではなくマルチタスクから再開した際に
ShortTimerが止まったままになるのでこれを回避したいんです。
667デフォルトの名無しさん:2005/05/20(金) 22:25:42
おいおい。タイマーはRESUMEイベントの時に再開するのがお約束だろ。
668デフォルトの名無しさん:2005/05/20(金) 23:23:25
>>667
そうだったんですか、ありがとうございました。
669デフォルトの名無しさん:2005/05/21(土) 10:20:07
ドラクエ2が・・・
670デフォルトの名無しさん:2005/05/21(土) 10:36:25
DQもFFもやったことがない
671デフォルトの名無しさん:2005/05/21(土) 20:07:29
DQとDQNの違いが分からない
672デフォルトの名無しさん:2005/05/21(土) 23:41:43
>>671
「ドラクエ」と「ドラクエ・ネオ」?
673デフォルトの名無しさん:2005/05/22(日) 05:13:08
神の皆様にお伺いしたいです。
当方、Doja3.0プロファイル向けにアクションゲームなアプリを書いているのですが、
例によって実機とエミュとで挙動が異なる現象が出てしまいました。
手元のSH505iでは、getKeyPadState()でのボタン入力は同時に2つまでしか
受け付けて貰えないも同然の様子。
キーイン、リリースのイベント内で自前で入力情報を回収する様にしても
やはり同じ挙動。

過去ログ(Part4)等を見る限りでは機種依存の動作みたいですし、
ある程度はゲームのデザイン側で対応することも考えてはいるのですが、
実際には斜め入力+弾発射みたいなことも受け付けるゲームもあるみたいで、
ソフト的に解決できる場合もありそうなものなのですが、どうやったものやら。

どなたか同じ様な経験された方、解決されている方、おられませんか?
674デフォルトの名無しさん:2005/05/22(日) 09:42:01
>>673
携帯の方が同時に2つのキーまでしか受け付けてくれなかったような。
どうしてもやりたいなら、1379あたりを斜めキーにするとか。
675デフォルトの名無しさん:2005/05/22(日) 20:14:59
オプションに「オートで弾発射」を追加する
676673:2005/05/22(日) 21:02:22
>>674-675
レスありがとうございます。

>オプションに「オートで弾発射」を追加する

正直なところ、これをデフォルトの動作にするくらいしか対応策を思いつけなかったのですが、
他の商用のシューティングゲームを見ていると、斜め入力中でも追加で「ボム」系の操作ができたり、
やはり3ボタン同時入力を受け付けているとしか思えないものがいるみたいで、悩んでいます。

UPPERLEFT や LOWERLEFT の様な斜め入力を1ボタンとして扱える機種はほとんどないみたいですし、
getKeyPadState() は3ボタン以上を扱えない、となると
processEvent() の中で受け取る Display.KEY_PRESSED_EVENT や Display.KEY_RELEASED_EVENT で
なにかしなければならないのだろうか、と考えたのですが、3つめのボタンが押された時点で、
それまでに入力されていた2つのボタンのいずれかに対して Display.KEY_RELEASED_EVENT が
飛んできてしまうため、具体的に何をしたものやら…という感じです。
677デフォルトの名無しさん:2005/05/22(日) 21:15:21
そもそも十字キー部分で、斜め入力を基本とするのはいかがなものだろう?
上下左右キーがそれぞれ独立して離れているため、同時押しできない機種も多いぞ。
678デフォルトの名無しさん:2005/05/22(日) 21:32:32
>>676
2キーまでしか携帯で取得できないと思っていた。

>他の商用のシューティングゲームを見ていると、斜め入力中でも追加で「ボム」系の操作ができたり、
やはり3ボタン同時入力を受け付けているとしか思えないものがいるみたいで、悩んでいます。

是非、具体的なゲーム名と3キーを受け付ける機種を教えてください。
679676:2005/05/22(日) 21:54:46
>上下左右キーがそれぞれ独立して離れているため、同時押しできない機種も多いぞ。

そうなんですよね…
とはいえ、ゲームなのでこればっかりは。
テストで使っているのは SH505i なのですが、こちらは逆に同時押ししやすい機種なので、
テンキー部分より、上下左右キーで操作する人も多いんじゃないかなという考えです。
テンキーの1,3,7,9には斜め入力相当の機能を割り振っているので、一応こちらで
逃げることも可能ではあるのですが。


>>678
>是非、具体的なゲーム名と3キーを受け付ける機種を教えてください。

いま手元にアプリと実機が無いので確認できないのですが、ケイブ社のシューティングゲーム類で
エスプレイド、首領プチ等が可能だった様に記憶しています。
エスプレイドはショットこそオートですが、特殊攻撃が別ボタンに割り当てられています。
また、移動に十字ボタンの斜め入力(これで2ボタン使っているはず)を使用している最中に
特殊攻撃のボタン(* か # 、もしくは 0 ボタン?すいません、記憶が定かじゃないです)を
入力しても、移動の妨げにならなかった様な…。

あまりに自然だったので、自分で作る側に回るまで、3ボタン入力不可ということに
気がつく事すらできませんでした。
680デフォルトの名無しさん:2005/05/22(日) 22:11:40
>>679
キーの同時押しを取るのは無理なので、違う方法を考える。
例えば2のキーを押された後2のキーを離す前に4を押されたら1として扱うとか。

Display.KEY_PRESSED_EVENT と Display.KEY_RELEASED_EVENT の組み合わせ
で工夫する。
681デフォルトの名無しさん:2005/05/22(日) 22:44:25
そしてresumeイベントで混乱する。
ダイアログとか出してとめればいいけどね。
682デフォルトの名無しさん:2005/05/22(日) 23:01:24
その程度もできないか、出来なきゃやめとけ。
683デフォルトの名無しさん:2005/05/22(日) 23:03:25
>>682
そいうことはやり方を提示出来る人間が言うもんだ
という定番の煽り
684デフォルトの名無しさん:2005/05/22(日) 23:08:12
少なくともうちのクライアントは、数字キーでOK出してくれるよ。
だってSOがあるじゃなーいw
685ゆー:2005/05/23(月) 08:02:38
ゆーです。
650〜658
レスありがとうございます。
メインソ−スを修正せずにデータテキストだけ
修正して、別々のアプリを作成したいなっと思っていましたので。
(できればスクラッチパッドを使わずに)
とりあえずみなさんの意見を参考にトライしてます。
ありがとうございました。
686デフォルトの名無しさん:2005/05/23(月) 19:56:50
音声のみの3gpファイルをゲームのオープニング音などに
使用したいのですが再生することはできないのでしょうか?
687デフォルトの名無しさん:2005/05/23(月) 23:34:08
VisualPresenterクラスを使えば3gpを再生出来ますよ。
688デフォルトの名無しさん:2005/05/24(火) 10:13:46
それだとネイティブのプレイヤーが立ち上がりませんか?
3gp音声再生中に画像を描画したいのですが。
689デフォルトの名無しさん:2005/05/24(火) 10:34:50
ゲームアプリで3gp使うこと事態考えがおかしくないか?
3gpは容量が大きくなってしまうし、仮にサーバーから取得するにしても読み込みに時間がかかり実用的でない!
690デフォルトの名無しさん:2005/05/24(火) 10:45:28
>>689
686じゃないが一般的な考え方ではそれが当然。
でもこれが商用アプリだと話は違う。
ドコモの特設ページに載せてもらう規準は
大容量・新機能を使っているの二つ。
内容はどうだって良いに等しいから無駄に容量を使ってるアプリが結構ある。
691デフォルトの名無しさん:2005/05/24(火) 13:19:00
どうせならyouの3gpにvideoもputしてopeningmovieにしちゃいなよ
692デフォルトの名無しさん:2005/05/24(火) 13:34:37
どうせなら3Dサウンド使うとか
693デフォルトの名無しさん:2005/05/24(火) 14:31:18
こんばんは。
教えていただきたいことがあるので、質問させていただきます。

自分はDoCoMoのFOMA「SH901iC」を使っています。
最近友達も一緒に同じ機種に変えました。
友達の着歌を聴かせてもらうと…
なにやら聴いた事のある曲ですが、DJのようにオリジナルアレンジされた感じの曲でした。
「それいいね〜。どこで取ったの?何かのRemix?」
「いや、自分で作ったんだよ〜。音楽CDあれば、自分の好きなようにイジれるよ。後はUPして携帯で落とすだけ。」

これはすごい。これは是非やってみたい。
と、思いその友人にやり方を聞いたのですが…
いじわる?なのか。そうゆう性格?なのか。
もったいぶって全然教えてくれなくて…。

ですので、どなたかその自分で曲をアレンジ作成できるやり方を知っている方いましたら、どうか教えていただけませんでしょうか?
よろしくお願いします。

694デフォルトの名無しさん:2005/05/24(火) 14:34:25
板違い
DTM
http://pc8.2ch.net/dtm/
かなあ・・・
695693:2005/05/24(火) 16:10:52
板違いでしたか!
ご指摘ありがとうございます。
申し訳ありませんでした。
696デフォルトの名無しさん:2005/05/24(火) 16:11:17
そりゃ、WAVあれば好きにイジれるだろうなぁ。
ソフトとテクがあるって前提だけど。タダじゃないけどな。

だからDTM板池。
697デフォルトの名無しさん:2005/05/24(火) 22:30:14
DoJa4.0の開発ツールをダウンロードして、初めてiアプリを作ってみました。
なかなかに楽しかったですが、質問をさせてください。

今eclipseのプラグインを用いて開発を行っているのですが、
エミュレータの解像度が実機と大きく違っていて困っています。
私の実機は132x144なのですが、エミュレータだと240x240になっていて、
エミュレータも実機と同じか近いところまで持っていければと思っています。

DoJa4.0付属のエミュレータの解像度を変えることは出来るのでしょうか?
ご存知の方、変え方を教えてください。よろしくお願いします。
698デフォルトの名無しさん:2005/05/24(火) 23:11:41
>>697
DoJaの\lib\skinのdevice1,2のフォルダないのskin.confを開いてlcd_widh,lcd_heightの部分を修正すれば出来ますよ。
699デフォルトの名無しさん:2005/05/24(火) 23:16:39
>>698
なるほど、ここに設定があったのですね。
エミュレータの縦横幅が変わったことを確認しました。ありがとうございました。
700デフォルトの名無しさん:2005/05/24(火) 23:23:50
132x144ってP504iか何かだから、
DoJa-4.0とは大分違うんじゃない?
2.0の範囲で使えば問題ないんだろうけど。
701デフォルトの名無しさん:2005/05/25(水) 02:15:03
とはいえ、eclipseプラグインが使えるのってDoja3.5のSDK以降じゃなかったっけ。
非対応のクラスや命令を使わない様、注意するしかないね。

俺的には解像度の指定もそうだが、倍率の指定を出来るようにして欲しい。
240x240をWXGAなんかに映した日には、小さすぎて実機の方が見やすいくらいだ。
702デフォルトの名無しさん:2005/05/25(水) 09:20:36
>>700
俺の携帯はP504iですが、APIに気をつけて扱えば特に問題ないですよ。
手元には2.0のAPIをダウンロードしたので、実際にはほとんど気をつける場面はなかったです。
開発環境が用意されているのは大きいですね。
703デフォルトの名無しさん:2005/05/25(水) 10:22:27
対応が面倒だから505以前のユーザーは全員
900以降のFOMAに買い換えてくれorz
704デフォルトの名無しさん:2005/05/25(水) 10:49:53
>>703
それはわかるがwwwwww
うちなんて503も対応させられ・・・orz
705デフォルトの名無しさん:2005/05/25(水) 11:01:58
そしてD900iに買い換える罠
706デフォルトの名無しさん:2005/05/25(水) 11:14:47
いや、全員FOMAに移動してくれ。
んでDとPとNとFは避けてくれ。

半透明使えろよお前ら…。
Dは使えない。
PとNはrectだけ。
FはImageだけ(何故rectが使えないのだ?仕方ないから単色矩形Image作ってるよ!)
707デフォルトの名無しさん:2005/05/25(水) 11:16:49
結局どれとどれがいいのよw
708デフォルトの名無しさん:2005/05/25(水) 11:53:47
>>706
つまり皆SH90*にしろ、と?
個人で使ってる携帯はSHだけど
拡大回転系にクセがあった気がするなぁ
709デフォルトの名無しさん:2005/05/25(水) 11:57:55
要はDoja氏ね
710デフォルトの名無しさん:2005/05/25(水) 11:59:36
P504iの、Java以外の機能美にやられてしまったのですよ…。
液晶が壊れたときにわざわざ修理に出すくらいの愛着ぶりです。

でも今回作ってわかったけれど、容量30k以下などの制限は厳しいです
711デフォルトの名無しさん:2005/05/25(水) 12:16:14
PCから保存したhtmlを携帯に画像としてminiSD経由で保存して
iアプリで開けば通信料かからないよね。
こんなのできないかな。
712デフォルトの名無しさん:2005/05/25(水) 12:42:24
>>711
DoJaからminiSDにアクセスするのは難しいね。やるなら偽装GIFかな。
あと内蔵ブラウザにそのHTMLを渡すことはできないから、自前でHTMLレンダラ作らないといけない。

まぁSHならPDFにしてドキュメントブラウザで開くという手も有るね。
713デフォルトの名無しさん:2005/05/25(水) 13:11:18
アプリックスと提携して仕様を共通化する話無かったか?
今更やったってもう遅いと思うけどな。
714デフォルトの名無しさん:2005/05/25(水) 13:38:30
そう言えば、503とかのエミュレーター出していた会社・・・i-jadegだっけ?
もう、エミュレーター作らないのかな?結構、便利だった記憶があるんだけど
715デフォルトの名無しさん:2005/05/25(水) 13:40:16
>>706
90xで半透明に使えるのは実質矩形のみなのか…。
FとSHは矩形Image、NとPはfillRectって感じ?

今作ってる奴の仕様変えないと…orz
716デフォルトの名無しさん:2005/05/25(水) 15:05:15
全メーカー同一チップ使ってくれよ。
あと余計なカスタマイズもナシね。
717デフォルトの名無しさん:2005/05/25(水) 15:48:28
>>716
無理ムリ。

携帯Javaみると、Wintelの互換性がすばらしく
感じてしまうw
718デフォルトの名無しさん:2005/05/25(水) 17:08:06
最悪半透明はまあ勘弁してやるとしても、
いい加減グラフィックレンダラ統一して欲しいのは確か。
上限はともかく下限はそろえろ!
あと、もう少しでいいからCPU性能は上げて欲しいかな…
505時代から実質変わってない様なもんだから、相対的に
新機種の方が性能落ちてる場合すらあるし。
719デフォルトの名無しさん:2005/05/25(水) 17:15:53
アプリ作るほうのことは考えてないからな
720デフォルトの名無しさん:2005/05/25(水) 17:19:15
>>715
SHは矩形もImageもいけるぞ。
SHさいこー。でもSH901iの遅さは最悪ー(なんで900より遅くなってんだ)

Dの場合は自前でgetPixelsとsetPixelsするしかない。
721デフォルトの名無しさん:2005/05/25(水) 17:21:01
これ以上性能上げると電池が・・・

ってとこなんじゃないのかな
ポリマーリチウムで容量アップ!
722デフォルトの名無しさん:2005/05/25(水) 17:55:01
電池か…。今の状態でも充電しながらやるとホッカイロだしな。
723デフォルトの名無しさん:2005/05/25(水) 20:33:13
まぁ確かにP504の機能美は神だったからな
724デフォルトの名無しさん:2005/05/25(水) 21:14:14
Aクラスでスクラッチパッドに書き込んだ値がBクラスからは読み取ることが出来ませんでした。
これはスクラッチパッドはクラスごとに別々に管理しているということなんでしょうか?
725デフォルトの名無しさん:2005/05/25(水) 21:17:08
単にちゃんとcloseしてないまま開いたとか、マルチスレッドで
変なアクセスの仕方してるとか、その類じゃないのかなあ。

例外飛んでないか、ちゃんと捕まえてみた?

Exception.#oString()、Exception#getMessage()で
IO関係の例外が飛んでいるのが発見できたなら、多分それ。
726デフォルトの名無しさん:2005/05/25(水) 22:16:30
>>697

ADF設定のDrawAreaに132x144と書けばいい。
727デフォルトの名無しさん:2005/05/25(水) 22:33:18
>>726それだと機種ごとに違う文字サイズが反映されない!
skin.confで画面解像度と文字サイズを変更するのが一番!
728デフォルトの名無しさん:2005/05/26(木) 06:02:54
機種ごとに違う文字サイズに対抗するには TINY と MEDIUM 以外使わないのがいちば(省略
729デフォルトの名無しさん:2005/05/27(金) 12:14:50
JDK1.4でコンパイルしてproguard&jar&7zipして大体70Kのアプリなんだけど
JDK1.5で(-source 1.3を指定して)コンパイル(以下略)したら約200バイト大きくなった

どっちも実機では動くから問題ないんだけど、ちょっと気持ち悪い
730デフォルトの名無しさん:2005/05/27(金) 19:51:13
7zipする前のクラスファイルのサイズはどのくらい違うの?
あとJDK1.4と比べるんだから-sourceオプションも1.4の方が
731デフォルトの名無しさん:2005/05/27(金) 20:03:19
ごめん1.4のデフォルトって言うかsourceオプション無しだと1.3なのね
732デフォルトの名無しさん:2005/05/28(土) 00:00:53
>>730
当然モノによっても違うんだけど1Kバイトくらいかな
83->proguard->62後半->jarg->62前半->preverify->70->7zip->69
ってな感じ

> ごめん1.4のデフォルトって言うかsourceオプション無しだと1.3なのね

JDK1.5では -source 1.3 と -target 1.1 を明示的に指定しないと
コンパイルできなくなった、っていうことを言いたかっただけでつ(´・ω・`)ゴメンネ
733デフォルトの名無しさん:2005/05/28(土) 00:17:49
ずっと夢中で作業してたんだけど気づいたらjarファイルが4メガもあったorz
734デフォルトの名無しさん:2005/05/28(土) 00:58:18
おまい、少しだけのつもりがお椀いっぱいに増えるワカメ作っちゃうタイプだろ
735デフォルトの名無しさん:2005/05/28(土) 01:43:56
>>733
藻前のメモリサイズに関する感覚はどうなっているんだw
736デフォルトの名無しさん:2005/05/28(土) 01:46:47
40Kなら笑い話で済むが、百倍はいくらなんでもありえねぇだろw


CVSの管理ディレクトリをjarに含めたままリリースしちまった漏れの言うことじゃないがorz
737デフォルトの名無しさん:2005/05/28(土) 02:34:39
動画でも入ってるんじゃないかw
738デフォルトの名無しさん:2005/05/28(土) 02:37:33
CVSはたまにgrepでウザッ!って思う
それよりThumbs.dbをjarに(ry
739デフォルトの名無しさん:2005/05/28(土) 10:01:50
あるあるw
740デフォルトの名無しさん:2005/05/28(土) 11:35:27
エクスプローラで画像を見るのは素人
741デフォルトの名無しさん:2005/05/28(土) 12:50:36
せめて.dbを作成しないようにちゃんとオプション切っておきなさいw
742デフォルトの名無しさん:2005/05/28(土) 18:21:13
上司にthumbs.dbも提出するように言われました
743デフォルトの名無しさん:2005/05/28(土) 19:11:19
その上司ハズレ
744デフォルトの名無しさん:2005/05/28(土) 19:58:34
その上司はアホか?
「初見の時に3秒くらい時間がかかるだけですけど、本当に一緒に提出しますか?」
って聞いてやれ。
745デフォルトの名無しさん:2005/05/28(土) 20:36:57
>742
オー人事 オー人事
746デフォルトの名無しさん:2005/05/30(月) 16:34:02
赤外線リモコンアプリを作ろうとしたのですが、全く動きません。
とりあえず、何か出す所からはじめたいと思うのですが、ご教授いただけますでしょうか?
public class sekigaisen extends IApplication implements ComponentListener {
IrRemoteControl irc;
IrRemoteControlFrame ircf= new IrRemoteControlFrame();
public void componentAction(Component source,int type,int param){
if(type==ComponentListener.BUTTON_PRESSED){
IrRemoteControlFrame [] frame1 = {ircf};
irc.send(1,frame1,10);
}
}
public void start() {
Panel panel = new Panel();
Button button = new Button("赤外線");
panel.add(button);
panel.setComponentListener(this);
Display.setCurrent(panel);
irc=IrRemoteControl.getIrRemoteControl();
ircf=new IrRemoteControlFrame();
ircf.setFrameData(11,2,0,0);
ircf.setFrameDuration(100);
ircf.setRepeatCount(0);
ircf.setStartHighDuration(100);
ircf.setStartLowDuration(100);
ircf.setStopHighDuration(100);
irc.setCarrier(200 , 400 );
irc.setCode0(irc.PATTERN_HL,2,1);
irc.setCode1(irc.PATTERN_LH,3,2);
}
}
747デフォルトの名無しさん:2005/05/30(月) 20:02:06
>>749
APIの使い方よりも、
リモコンの送信データをどうやって入手するかを考えた方がいいかと。
748デフォルトの名無しさん:2005/05/30(月) 20:08:25
>>749に期待
749デフォルトの名無しさん:2005/05/30(月) 20:25:40
あ〜ん♥
750デフォルトの名無しさん:2005/05/30(月) 20:28:02
↓=
→↑
751デフォルトの名無しさん:2005/05/31(火) 16:33:41
なんとなくムカついた。

ドコモカップ東北の「iアプリWEB講座」の中・上級編が
第一時審査通過チーム通過者のみってどういうことだ?
752デフォルトの名無しさん:2005/05/31(火) 16:44:10
>>751 くわしく
753デフォルトの名無しさん:2005/05/31(火) 16:47:44
>>752
くやしく
754デフォルトの名無しさん:2005/05/31(火) 16:47:45
ドコモカップ東北のページにあるWeb講座を見るのに、
中・上級編には審査通過者のみって制限があるってことでしょ?

つーか、やる気のある人には見せてやればいいのに。
俺なら仕事で必要にでもならない限り見たくも無いよ。
755デフォルトの名無しさん:2005/05/31(火) 16:50:47
その通り
何ケチケチしてんだか…
見たい人は沢山いるだろうに…

大体、1次審査通過するような人はある程度わかっているのでは?
756デフォルトの名無しさん:2005/05/31(火) 18:52:05
なんだ、学生のコンテストの話か。
757デフォルトの名無しさん:2005/05/31(火) 19:03:42
コンテスト自体はいいのだが講座を見られないのは
アプリ製作者にとってはイタイね。

なんでそんな規制をかけるのかナゾ。
758デフォルトの名無しさん:2005/06/01(水) 02:23:55
RPGとかである、8x8や16x16のセル表現で上下左右にスムーススクロールする
画面を作るとき、皆さんどんな風な実装されてます?

Doja3.0以降用で、240x240を全機種共通の画面サイズとして考えているのですが、
画面下端(ないしは上端)はスコア表示とかで潰せるから、上下方向には8Pixelスクロールごとに
差分のセルを更新とかできるんだけど、左右方向のスクロールは、D系みたいに
(っていうかDだけ?)Imageの最大サイズがCanvasのサイズ=画面サイズに制限されちゃってる
機種がいるおかげで、Image一枚をBG用に確保するだけじゃ収まらないし、
毎フレーム全セル描画なんてしてたら激しく遅くなっちまうので、差分書き換えが
当たり前なんだろうけど、あまりキレイな実装手段が思いつかなくて困ってます。

Graphics#copyArea()で移動量だけコピーする手は、内部で勝手に作業用のImageを
作るかなんかしてるのか、かえって遅くなるみたいだし。

セル描画専用にImage2枚を横つなぎとかにするかしないといけないのかなあ…。
そういう実装って一般的なのかなあ…。
759デフォルトの名無しさん:2005/06/01(水) 02:25:58
>>757
こうですか?わかりません!メールとかが殺到するのを危惧してるんじゃないかな。
760デフォルトの名無しさん:2005/06/01(水) 04:26:34
>>758の質問はもうテンプレでFAQ入れた方がいいんじゃねえか?

つーわけで過去スレ読んでくれ。ご丁寧にソースまで出てるから。
761デフォルトの名無しさん:2005/06/01(水) 07:33:22
できない機種がQVGAで限定するとD505i/iSだけなので、それをスルーするのが俺的一般実装
762デフォルトの名無しさん:2005/06/01(水) 08:52:12
>>761
ですよねえ。でもそうもいかない場合は…orz

>>760
テンプラ作るので、場所教えてくださいましorz
763デフォルトの名無しさん:2005/06/01(水) 09:31:57
ここのまとめサイトとかwikiとか作るってのはどうだろう
764デフォルトの名無しさん:2005/06/01(水) 09:51:43
それ激しくナイス
…●持ちの人、まかせた
765デフォルトの名無しさん:2005/06/01(水) 17:41:45
iswebの垢に空きが出来たからYukiWikiでも入れようか?
766デフォルトの名無しさん:2005/06/01(水) 22:34:04
YukiWikiだかPukiWikiだか知らんが、
情報サイトは出来るだけ多い方が助かる。
767デフォルトの名無しさん:2005/06/01(水) 23:32:13
自分のプログラムが動いてる携帯の
Dojaのバージョンを取得する方法ってある?
もしかして、getProperty("microedition.platform") の、
機種名から地道に判定しないとダメ?
768デフォルトの名無しさん:2005/06/02(木) 10:01:16
microedition.profilesでDojaのバージョン取得可能
769デフォルトの名無しさん:2005/06/02(木) 19:41:18
突然勘に任せた質問!

スクラッチパッド上にMLDやGIFデータを置く場合、
手前の方に置いた方が展開が速いなんて
機種は、この世に存在しちゃったりしますか!?

比較的しょっちゅう use() / dispose() するものほど
手前に置くのが究極奥義だとか、そういうの。
770デフォルトの名無しさん:2005/06/03(金) 01:13:28
質問させてください。

P900iV実機で、AudioPresenter.play(n) を使い
音声を途中から再生させようと思っているのですが、引数が0以外だと全く音が出ません。
またpause()で停止したものもrestart()で再開できません。(例外も発生せず)
公式の実装状況の.pdfには[基本]となっているのに…
何か見落としていることがあるのでしょうか。


wav2mld(試用版)で作成したp211用のデータを使っているのですが、
もしかしてデータのせいってのはないですよね?


771デフォルトの名無しさん:2005/06/03(金) 08:35:46
音声の途中再生には未対応。以上。
772デフォルトの名無しさん:2005/06/03(金) 09:35:24
>>769
P504iで、Jpegを後ろのほうに置くと読み込みが遅くなる。
それ以外では聞いたことないな。
773769:2005/06/03(金) 09:39:42
>>772
サンクス
以前何かで聞いた記憶が引っかかってたんだ。
ていうか、普通に考えるとそうなること自体何か変な実装杉だよね。
774デフォルトの名無しさん:2005/06/03(金) 10:27:13
P504iはスピード向上のために、いろんなところをBYTEで扱ったりしてたからね。
Imageが256*256までしかとれないのとかがそう。
775デフォルトの名無しさん:2005/06/03(金) 10:59:39
240x240までしか取れないDに比べればッ!
776デフォルトの名無しさん:2005/06/03(金) 15:26:19
Dはスルーの方向で。
777デフォルトの名無しさん:2005/06/03(金) 15:31:33
かわいそうなD・・・
778デフォルトの名無しさん:2005/06/03(金) 15:44:31
Dたん(;´Д`)ハァハァ
779デフォルトの名無しさん:2005/06/03(金) 16:10:47
誰かD端末を萌えキャラ化してくれ
780デフォルトの名無しさん:2005/06/03(金) 16:25:19
変形機能をつけて【でーすけ】にすればいいのかもな。
781デフォルトの名無しさん:2005/06/03(金) 17:01:19
ガッ! ログ見たところ、SDカードのデータは読み込めないのか!?
せっかく開発ツール類を準備したのに!

P900iVのSDカード内に入れた3GPを連続再生する自作アプリを作ろうとした企みが
潰えてしまった(;´д⊂)
782デフォルトの名無しさん:2005/06/03(金) 17:10:40
gifに偽装する手がないこともない。
783781:2005/06/03(金) 17:43:36
>>782
なんと!gifで偽装するならSDカード内のデータを読めるのですか?

DoPa3.5のAPIリファレンスの、com.nttdocomo.uiのどこを見ても、
java.awt.filedialogに相当しそうなクラスが見つからなかったので困ってますた・・
(メールやアドレス帳のデータは読めるみたいなので自分が見落としてるだけかもしれませんが。)
784デフォルトの名無しさん:2005/06/03(金) 18:01:19
ImageStoreクラスなんだろうけど
あれってSDのデータ読めるのかねぇ
使ったことないからわかんねw。
てっきり手動でSDから本体へ移行させてからかと思ってたw

方法は知らないけどGIFに偽装で埋め込んで
そこからアプリ内で埋め込んだデータを
取り出す手法を過去から話だけは数回でてるな。
詳細な方法は出てないんだけどね。

ファミコンエミュが出た時、ROMデータの扱いで
そんな方法でやってたらしいんだっけか?
エミュ作る程の奴なら簡単なんだろうな・・。
785デフォルトの名無しさん:2005/06/03(金) 19:11:01
Doja3.5で待受画像を作るアプリを作っています。
Image.createImage()で生成した240x320サイズのImageに、
描画を行ってからピクチャーに保存しようとしているのですが、
どうもうまく行きません。
createImage()で生成できるのは画面サイズまで、
みたいなことがガイドpdfに記載されてたので、
240x240にしたら大丈夫でした。
240x320サイズの画像を保存する
良き方法はないでしょうか?
786デフォルトの名無しさん:2005/06/03(金) 20:16:27
>>785
二つImageをcreateしてくっつける
787781:2005/06/03(金) 20:20:47
>>784
今プログラムを使って実験してみたところ、本体メモリの画像フォルダは覗けますが
SDカードは覗けませんでした・・

これでは、たとえ音楽ファイルをGIFで偽装できたとしても、本体メモリのファイル容量制限(700KB)から
簡易プレイヤーとしての利用はちょっと無理ぽそうです。

・・・もしできるのだとしたら誰かが先に作ってそうなんでこういう結末の覚悟はしてましたが・・・
788デフォルトの名無しさん:2005/06/03(金) 20:25:21
それだと240x320でエンコードできないから無理
789デフォルトの名無しさん:2005/06/03(金) 20:29:30
>>786して携帯の機能でくっつける
790デフォルトの名無しさん:2005/06/04(土) 01:19:26
>>787
画像フォルダ覗くのだって、エミュならできるが実機ではトラステッドiアプリ申請が必要では?
791785:2005/06/04(土) 01:53:52
>>786>>788>>789
レスありがとうございます。
MediaImage.getImage()したものにgetGraphics()は適用できないみたいだし、
やはり240x320サイズは難しいようですね。
792770:2005/06/04(土) 02:49:16
>>771
回答ありがとうございます。
P900iVとか別の機種とかwav2mldのバージョンとか関係なく、
AudioPresenter.play(int)は、音声(wavから変換したmld)の途中再生には対応しない。
…ということでよろしいですよね?

…開発マニュアルどこ見落としたんだろう…?
793デフォルトの名無しさん:2005/06/04(土) 02:51:02
>>790
jamファイルに
AccessUserInfo = yes
って書いて
ユーザーが許可すれば大丈夫
794デフォルトの名無しさん:2005/06/04(土) 12:50:09
Graphics.fillRect()
DOJA2.0のエミュレータでは普通に描画できてるのに、
DOJA4.0のエミュレータだとばぜか描画してくれないんだけど何故?
APIの仕様とか変わってるんですかね。
795デフォルトの名無しさん:2005/06/04(土) 13:06:41
Doja4.0から、setColor系が扱うカラーが24ビットから32ビットになって、
上位8ビットにアルファ値を収められるようになった。
その関係で色が出なくなってるとか。
あとは例によってGraphics#getColorOfName()を忘れて
Graphics#setColor()しているとか。

いずれにしてもGraphics#seColor系の使い方を見直してみるといいかと。
796デフォルトの名無しさん:2005/06/04(土) 23:02:51
黒出そうとして
Graphics#seColor(0);
ってやると透明になっちゃうからな。気をつけるんだぞ。
797デフォルトの名無しさん:2005/06/04(土) 23:11:07
   __             __/  / |    __  ──
     / ─ /  / \ ○   |   /  |      |    ̄ ̄/ ──
  __/  _/  /   \    |  /  レ  ─┴─  _/

      /\___/ヽ    
     /''''''   '''''':::::::\    
    . |(〇),   、(〇)、.:| 
    |   ,,ノ(、_, )ヽ、,, .::::|    
  .   |   `,rェェェ、 ' .:::::::| 
     \  |,r-r-|  .::::/     
  ,,.....イ.ヽヽ、`ニニ´ーノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |
      >   ヽ. ハ  |   ||
798デフォルトの名無しさん:2005/06/05(日) 00:03:10
Graphics#seColor()
に適当な数入れるとエミュじゃ動くが実機で落ちる
799デフォルトの名無しさん:2005/06/05(日) 01:21:03
……わざとやっているのか?
800デフォルトの名無しさん:2005/06/05(日) 01:24:07
800
801デフォルトの名無しさん:2005/06/05(日) 11:02:34
801
やおい(*´Д`)
802デフォルトの名無しさん:2005/06/05(日) 13:40:24
GIF画像で製法とかサイズは同じなのに
使えるものと使えないものがあるのはなぜですかね?
803デフォルトの名無しさん:2005/06/05(日) 14:01:51
エスパーきぼんぬですか
804デフォルトの名無しさん:2005/06/05(日) 14:04:47
>>802
インタレース。
805デフォルトの名無しさん:2005/06/05(日) 15:41:11
>>804
d!!
806デフォルトの名無しさん:2005/06/05(日) 17:22:30
関連スレに追加お願いします。

【日本携帯】Mascot Capsule/Micro3D【標準】
http://pc8.2ch.net/test/read.cgi/tech/1117773530/l50
807794:2005/06/05(日) 20:49:27
>>795,>>796
おお、まさにそれですた。
思いっきり、setColor(0)とかやってた。
808デフォルトの名無しさん:2005/06/05(日) 21:33:31
>>774見てふと思ったんだけど、もしかしてintよりもbyteの方が早かったりします?
809デフォルトの名無しさん:2005/06/05(日) 21:51:25
>>808
どうだろ?
少なくともPCのVMはbyteより小さくても
内部ではintに変換して計算してた気がするが
810デフォルトの名無しさん:2005/06/06(月) 00:02:35
byteよりintの方が高速な事実

intが高速というよりbyte使うと低速
811デフォルトの名無しさん:2005/06/06(月) 02:08:44
byteの変数を算術演算、論理演算とかするとintで演算した後に
intからbyteへの変換の命令が挿入される。それでサイズも速度も損する。
byteは基本的に配列としてだけ使うのがよいと思う。
812デフォルトの名無しさん:2005/06/06(月) 10:14:54
>>808
P504が内部処理で行なっている部分はByteのほうが速いだろうが、
我々がアプリで組む上ではint使ったほうが速いよ。
813デフォルトの名無しさん:2005/06/06(月) 10:17:27
>>802
一部のツールが吐き出すGIFは携帯で読めない。
例えばD-Pixedの古いバージョン。

GIFのフォーマットにはのっとっているのだが、携帯がそれに対応していない。
自前で研究した結果D-Pixedは

254データがあるよ宣言
254分のデータ列〜〜〜
254データがあるよ宣言
254分のデータ列〜〜〜
の繰り返しなのだが、普通のGIFは

255データがあるよ宣言
255分のデータ列〜〜〜
255データがあるよ宣言
255分のデータ列〜〜〜
となっている。
両方GIFのフォーマットには準拠しているのだが、携帯は後者しかサポートしていない。
何故D-Pixedが前者の吐き出し方をさせているのかは謎。
814デフォルトの名無しさん:2005/06/06(月) 10:27:41
ケーたまの育児記録取れるアプリ無いの?
815デフォルトの名無しさん:2005/06/06(月) 11:52:00
きんたまの精射日記?
816デフォルトの名無しさん:2005/06/06(月) 14:40:03
お願いします、お助け下さい。
サーバーから画像ファイルを複数読み込み、
それをスクラッチパッドに書き込んでいます。
MediaManegerを使って画像を読み込もうとしたときに、
"scratchpad:///0;pos="+offset
こんな指定をして読もうとすると一枚目は読めても
二枚目で、Unknown media image formatがMediaImageで出力されます。
これは、書き込み時点で間違っているのでしょうか?
読み込み時点で間違っているのでしょうか?
ちなみに、読み込むときにoffsetを持っているので、offsetは間違っていないと思います。
二枚目のoffsetは一枚目のファイルサイズにしています。
817816:2005/06/06(月) 14:56:49
すいません。
ファイルサイズの取得が間違っていました。
ご迷惑をおかけしました。
offset値を加算していかないといけないのに、
まんまファイルサイズを指定していました。
申し訳ないです。
818デフォルトの名無しさん:2005/06/06(月) 16:19:05
>>816
気にスンナ。非常によくやる間違いだ。
漏れも以前よく似たことをやらかしたorz
819デフォルトの名無しさん:2005/06/06(月) 19:07:42
以前言っていたまとめの話だけど、簡単に作ってみた。
メル欄参照で。ログはPart1,2,3だけ見つかった。
820デフォルトの名無しさん:2005/06/06(月) 20:01:21
>>819
乙。
漏れのアナルの処女あげる。

つ◎
821デフォルトの名無しさん:2005/06/06(月) 20:20:43
>>819
ドゾー
 ω υ
822デフォルトの名無しさん:2005/06/06(月) 21:26:24
俺の過去の悪行がさらされるのか!
823デフォルトの名無しさん:2005/06/06(月) 21:37:56
どう更新すればいいのかわからない件
824819:2005/06/06(月) 21:51:13
>>820-821
!!??俺を童貞&包茎だと知っていて…
>>822
(・∀・)ニヤニヤ
>>823
Wikiのフロントページの使い方に書いておきました。分かりにくいですが。
その2ページ以外は編集できると思います。
825デフォルトの名無しさん:2005/06/06(月) 23:58:41
>819
乙。

つ[ http://takoika77.hp.infoseek.co.jp/ ]
ありがたみの無いログだが適当によろ。
826825:2005/06/06(月) 23:59:29
別の形式が良かったら知らせてくれー。
827デフォルトの名無しさん:2005/06/07(火) 00:49:32
>>809-811
thx.
今のままで行きます。
828デフォルトの名無しさん:2005/06/07(火) 01:28:14
>>825-826
トンクス!うpしておきました。
HTML形式には変換できますか?
829デフォルトの名無しさん:2005/06/07(火) 21:33:16
N/P端末の通信時のNoResourceのことなんですが、
スクラッチパッドめいっぱい取るのはいいとして、
別に使ってもいいんですよね?スクラッチパッド。

あとNoResourceが発生したあとって、回復できます?
自分のやり方がまずいのか、一度おきたらもう2度と通信できなくなっちゃうんですが…
830デフォルトの名無しさん:2005/06/08(水) 00:06:39
質問なんですが901iシリーズって秒間何ポリゴンくらい描画できるんでしょうか。
とりあえずエミュで立方体を50個表示して回転させると処理落ちしたんですが…
もちろん機種ごとに能力は違うと思うので最低スペック(DかFあたり?)が知りたいです。
当方に実機は1台もないのでorz
831デフォルトの名無しさん:2005/06/08(水) 00:28:08
テストプログラムでもUPしてくれれば、実機テストの結果をレポるくらいはOKよ。
832デフォルトの名無しさん:2005/06/08(水) 01:05:43
>>830
N901で800ポリ(tri)くらいは出てるのは確認した
けどライトやフォグつかったら1/3くらいにまで落ちるけどな
833825:2005/06/08(水) 01:06:55
HTML でアップしたんでよろ。
834デフォルトの名無しさん:2005/06/08(水) 15:09:30
TextBoxの入力を数字としたいんですが、setInputMethod(TextBox.NUMBER)
を使っても、TextBoxにローマ字が入ります。
数字入力が間違いなのでしょうか?
TextBox tb = new TextBox("",12,1,TextBox.DISPLAY_ANY);
tb.setInputMode(TextBox.NUMBER);
835デフォルトの名無しさん:2005/06/08(水) 15:24:29
おれは今やつの機種依存をほんのちょっぴりだが体験した
い…いや…体験したというよりは全く理解を超えていたのだが… あ…ありのまま 今起こった事を話すぜ!

『おれはやつのImageにdrawLineしたかと思ったら正しく描画されなかった』

な…何を言っているのかわからねーと思うがおれも何をされたのかわからなかった…

頭がどうにかなりそうだった…催眠術だとか超スピードだとかそんなチャチなもんじゃあ断じてねえ
もっと恐ろしいものの片鱗を味わったぜ…」


Canvas#getGraphics() に対してのdrawLineは正しく描画されるのに、
Image#getGraphics() に対してのdrawLineが正しく描画されねえ。
なんなんだこの機種(D900i)は!!

誰か解決方法教えてくださいorz
意味もわからず、唐突に一部の直線が描画されないのです。
836デフォルトの名無しさん:2005/06/08(水) 15:36:43
P900iでは正しく動作しました。エミュでもです。

毎回、同じ直線が、必ず描画反映されないのです。
しかもD901iだと正しく動きやがる!くそ!くそ!

具体的にわかったぞ。
grp.drawLine(163, 51, 174, 50);

これをImage#createImageで作った画像に描こうとすると、無効化される!意味がわからねえ!
837デフォルトの名無しさん:2005/06/08(水) 15:43:47
ほかにも大量に「盲点座標」が存在するっぽい。
欠けまくり。

これはもしかして、直線描画を自前で実装しろってことか…?
838デフォルトの名無しさん:2005/06/08(水) 16:32:03
>>835
>>836
>>837
同一人物なんだろうが、余計なものばっかり書き込んで
肝心な情報が少なすぎるんだがな。まとめると

症状:createImageで作ったImageをgetGraphics()してそこへ
   drawLine(163, 51, 174, 50);すると描画されない。
   機種D900iにての不具合、エミュ・D901i・P900iは正常動作。

これだけか?あとで描いてある盲点座標ってのは別の話か??
createImage関係で真っ先に思いつくのはサイズはいくつでつくったんだ?
839デフォルトの名無しさん:2005/06/08(水) 16:35:41
悪かった。同一人物だが、調査しながら書いてた上、最初に無意味なギャグを入れたのを大いに反省する。

盲点座標ってのは、
drawLine(163, 51, 174, 50);
みたいに表示されない点のことね。
createImageは240*160でとった。
840デフォルトの名無しさん:2005/06/08(水) 17:02:47
>>839
とりあえずこちらでも同じ症状が出ることを確認。
だが解決案はある。

drawLine(163, 51, 174, 50);

drawLine(174, 50, 163, 51);

に変更してみたら描画された。
Y座標の方向を変えただけなんだが・・・なんとなくw
841デフォルトの名無しさん:2005/06/08(水) 17:08:00
通りすがりだが、
オレもY入れ替えれば描けるんだろうな、と思ったよ
842デフォルトの名無しさん:2005/06/08(水) 18:10:55
だからDは放置プレイしろと何度も何度も
843デフォルトの名無しさん:2005/06/08(水) 20:00:33
>>840
解決法はいいんだが、発動条件がわからない限り抜本的解決にはならない予感。
「下から上に描画しようとした時のみ」とかだったら判定できるんだが・・
844デフォルトの名無しさん:2005/06/08(水) 20:43:16
Yを入れ替えて2開描画するってのはどうよ?
線の数が多いと遅くなりすぎるかもしれないけど…
845デフォルトの名無しさん:2005/06/08(水) 23:35:15
Dには対応してません。と注意書きをつけるのはどうよ?
846デフォルトの名無しさん:2005/06/09(木) 00:22:15
>>844
あまりと言えばあまりなアレ具合に、ちょっとびっくりだな(;´Д`)
それをやるしかないのか…。それでもダメな座標があったらどうしよう
847デフォルトの名無しさん:2005/06/09(木) 01:15:44
基本的な事な気がするのですが
一つのPanelに追加したImageButtonは
別途Button_PRESSEDで開いたPanellには追加できないのでしょうか

下記エラーが出たので、そうだとは思うのですが
駄目と断っている文献が見当たらなかったため質問させていただきます
com.nttdocomo.ui.UIException: Component already added to other Panel
848デフォルトの名無しさん:2005/06/09(木) 09:14:23
>>840
DDAアルゴリズムの実装におかしな部分がある?

#今もDDAって使ってるんだよね?
849デフォルトの名無しさん:2005/06/09(木) 09:41:27
直線描画なら普通DDAだろうね。
しかしなんだ、今更バグ出す必要がある場所なのか、そこは。
実は3D描画命令使ってて陰面消去されてるとか妙なオチなんじゃないだろうな。
850デフォルトの名無しさん:2005/06/09(木) 10:40:39
Graphicsの中身が、Canvas用とImage用に分岐しているのはわかるが、
その差分を吸収して同じ結果にするのがGraphicsではないのか?

toCanvasの実装者と、toImageの実装者が違う人だったんだろうかw
851デフォルトの名無しさん:2005/06/09(木) 10:43:23
なんにしても、バグの出方が素人チックなのよね。
現場の惨状が目に見えるようだわ。
852デフォルトの名無しさん:2005/06/09(木) 15:38:31
外部接続端子(充電するところ)に接続した機器から情報を引っ張ってくるAPIってありますか?

携帯アプリ板でも投稿させて頂いたのですがレスがないため
マルチお許しください。
853デフォルトの名無しさん:2005/06/09(木) 18:38:14
>>852
無視されてるんじゃなくて判らないからレスしない!ってのが多いかと。
俺もわからんw
854デフォルトの名無しさん:2005/06/09(木) 19:20:19
そもそも接続する機器ってある?
855デフォルトの名無しさん:2005/06/09(木) 19:40:23
軽快電話とか…か?
856デフォルトの名無しさん:2005/06/10(金) 12:28:29
昔のGPSに無かったっけ?
857デフォルトの名無しさん:2005/06/11(土) 13:21:46
858デフォルトの名無しさん:2005/06/11(土) 14:34:43
iアプリのjarファイルの中にテキストをいれておいて実行時に読み込むことはできますか?
859デフォルトの名無しさん:2005/06/11(土) 15:41:23
>857
もともとマルチって書いたあるじゃん。

>852
RS232Cっぽいけどアプリ側でどうやればいいか・・・
860デフォルトの名無しさん:2005/06/11(土) 17:14:02
>>858
できる。

DataInputStream in = Connector.openDataInputStream("resource:///ファイル名");

あとはお好きに。
861デフォルトの名無しさん:2005/06/11(土) 20:41:44
iアプリをデバッグする時にエラーメッセージを表示させたいと思い、Dialogクラスを用いたのですが、show()メソッドでダイアログを
18回以上表示させようとするとフリーズしてしまいます。現象を確かめるために以下のようなテストプログラムを実行しました。
(環境はWindows2000上のドコモ提供のエミュレータiappliTool for DoJa-4.0(FOMA) ver.1.03)
error:0から表示が始まり了解ボタンを押していくとerror:16で了解ボタンを押したところでフリーズします。
error:17に移行しません。Dialogでエラーメッセージを出すのはそんなに珍しいとは思えないので
既出かも知れませんが、何か原因、対策が分かれば教えてください。(エラーメッセージを何百回出そうが固まらないようにしたいです)
public class imodetest extends IApplication{
public void start(){
Display.setCurrent(new myCanvas());
}
}
class myCanvas extends Canvas{
static{
for(int i=0;i<40;i++){
error("error:"+i);
}
}
public void paint(Graphics g){
g.lock();
g.drawString("Hello", 0, 15);
g.unlock(true);
}
public static void error(String msg)
{
Dialog dlg = new Dialog(Dialog.DIALOG_INFO, "info");
dlg.setText(msg);
dlg.show();
}
}
862デフォルトの名無しさん:2005/06/11(土) 21:03:23
Dialogが解放されてないんじゃないの?
863デフォルトの名無しさん:2005/06/11(土) 22:45:11
Dialogが解放されていないと思い、error("error:"+i); の直後にSystem.gc();
を入れたりしたのですが同じくダメでした。Dialog解放の方法とかはあるので
しょうか?
864デフォルトの名無しさん:2005/06/11(土) 22:56:55
Dialogのインスタンスを1個だけ持つようにすれば?
errorの中でnewするんじゃなくて、myCanvasのメンバに持たせて使いまわす。

もし今の作り方にこだわるんであれば、dlgに明示的にnullを代入→gcとやれば
なんとかなるかもしれん。
865デフォルトの名無しさん:2005/06/11(土) 23:05:18
例外吐かずにフリーズするってことは別の場所が原因な気がする…。
866デフォルトの名無しさん:2005/06/11(土) 23:08:49
だねえ。
普通なら dlg を new してるあたりでなんらかの例外に捕まるはず。
最低限ぬるぽぐらいは出そうなもんだ。

class myCanvas extends Canvas{
static{

のあたりが解せないんだけど、何か書き忘れあります?
867デフォルトの名無しさん:2005/06/11(土) 23:28:17
myCanvasのstatic メンバ変数としてdlgを定義・生成して、error()メンバ関数内
ではdlg.setText(),dlg.show(),ついでにSystem.gc()を行うようにしたのですが
ダメでした。System.gc()なしでもダメ。
もとのようにerror()メンバ関数内でdlgを生成し、dlg.show()の直後で明示的に
dlg=null、System.gc()を実行するのでもダメでした。
ちなみにerror()メンバ関数内でdlgを生成してもdlg.show()を実行しなければ
フリーズはしません。(new Dialog(...)とdlg.setText(msg)は実行するという
こと)
Dialogの表示に関して何らかの制限があるのかな?
868デフォルトの名無しさん:2005/06/11(土) 23:34:32
>>861
たしかにそのコードで症状でるけど、そもそもsetCurrentが行われていない状態で
GUI処理させるのはイリーガルなコードじゃないか?
ちゃんとsetCurrentが行われた後にダイアログ表示の処理をさせれば
フリーズはしなかったよ
869デフォルトの名無しさん:2005/06/11(土) 23:38:46
class myCanvas extends Canvas{
static{
の部分には書き忘れはないです。この書き方はクラスの定義時(インスタンス
の生成時ではないということ)にこのstatic{...}で囲まれた部分を実行する
場合の書き方です。このstatic{ ...}というやり方を使わないで、
myCanvas内に
public void errout(){
 for(int i=0;i<40;i++){
  error("error:"+i);
  System.gc();
 }
}
のようなメンバ関数を定義してこれをimodetestのstart()から呼び出しても
やはりダメです。つまりstatic{...}が悪いという訳ではない模様。
870デフォルトの名無しさん:2005/06/11(土) 23:44:13
>>868
あら、本当だ。うまくいきますね。今回のはテストプログラムなので元のでも
うまくいくか確かめてみます。
871デフォルトの名無しさん:2005/06/12(日) 00:04:15
>>870
多分それでビンゴ。
Graphicsにlock()かけてる最中にDialog出すと固まる機種(P900だっけ)もあるけど、
それは今回関係ないだろうし。
872デフォルトの名無しさん:2005/06/12(日) 00:34:31
>>869
> のようなメンバ関数を定義してこれをimodetestのstart()から呼び出しても

元のコードには幾つか問題があるよね。
868が指摘したsetCurrentもそうだけど
特にstart()の実行が終了しないようなアプリは
動作が保証されないんじゃないかなぁ?

そのerrout()を何かのキー操作やイベントで呼び出すようにすれば
大丈夫になると思われ
873デフォルトの名無しさん:2005/06/12(日) 12:00:25
>>860
遅くなりましたが、ありがとうございます。
なんとか開いたみたいですが、readUTF()がいくらやってもうまく動かなくてお礼が遅れてしまいました。
ありがとうございました。
874デフォルトの名無しさん:2005/06/12(日) 21:15:17
Panelが複数の場合、softKeyPressedとかってどうやってPanelがどちらに振られていることを判断するんでしょう?
875デフォルトの名無しさん:2005/06/12(日) 21:52:39
>>874
事故レス
getCurrent()を使えばできます。ハイ
876デフォルトの名無しさん:2005/06/13(月) 16:20:31
数年ぶりにiアプリ作ることになったんですけど最近はSPに格納するデータはJarにしておいてJarInflaterで取り出すのが普通でしょうか?
877デフォルトの名無しさん:2005/06/13(月) 16:47:36
>>876
何を持って普通なのか?が疑問だw
JAR使うのは3.0以降なんだろうけど容量次第かと。
機種(P505など)によっては遅すぎたして、
処理内容によっては使い勝手が非常に悪い。
容量が少ないとか頻繁に読み替えするとかだと使ってないな。
878デフォルトの名無しさん:2005/06/13(月) 18:19:31
漏れも使ったことないんだが、自前で圧縮伸長するよかよっぽどよさそうだとオモットッタ。
駄目なんすか?

例えば4KB程度の生データ(RunLengthあたりでも数分の一に縮む、
RPGとかのマップデータ)を簡単に展開して使うとか。
879デフォルトの名無しさん:2005/06/13(月) 18:27:50
展開時に展開できるだけの十分なメモリがあいてれば良いと思うよ。
スクラッチパッドのサイズがどうしても足りない時とかは有効な手だし。
880デフォルトの名無しさん:2005/06/13(月) 23:10:28
アプリで赤外線を受信することはできるのでしょうか?
881デフォルトの名無しさん:2005/06/13(月) 23:58:56
一応送受信できるよOBEXだったかな?
882デフォルトの名無しさん:2005/06/13(月) 23:59:21
>>880
つClientObexConnection
883デフォルトの名無しさん:2005/06/14(火) 13:54:30
>>878
別に悪くないよ。ただ速度差が機種で凄いって事。
ダウン容量削減して速度を高速にしたい場合は
圧縮データダウン、保存せず解凍したのを保存、って手もある。

利点
ファイル容量削減。
スクラッチにデータ入れてもファイルネームアクセス可能(日本語不可)

欠点
機種によって遅い(P505は致命的に遅い)
メモリを多少多めに使うらしい??(未確認)
3.0以降のみでしか扱えない。
884デフォルトの名無しさん:2005/06/14(火) 14:38:58
アドレスリストや分割ファイル生成するツール作ったりしてたけど、
JarInflaterなら管理が楽になりそうだなぁ。容量も若干減るようだし。

次からアプリ作る時は使ってみよう。
885デフォルトの名無しさん:2005/06/14(火) 18:48:08
流れを読まずにひとつ質問。

「Image は dispose() しないと開放されない」

というのがある様子ですが、これは自分で Image#CreateImage() で作成した
Image についても適用されますか?
それとも、MediaManager#getImage() で確保された Image についてのみでしょうか?

もし前者についても dispose() しないとならないとなると、
デストラクタが無い Java のクラス内で生成する Image については、自前で
dispose() する関数を呼んでやらないとメモリリーク発生、なんてことになってしまうと
思うのですが…。

そんなことは特にありませんか?
886デフォルトの名無しさん:2005/06/14(火) 23:12:38
>>881〜882
ありがとー。やってみます
887デフォルトの名無しさん:2005/06/15(水) 13:46:47
n900iです。
バイブを指定するまでずっと動かし続けたいのですが、
1秒ごとに動いたり止まったりしてしまいます。

FFIIでは結構長く震えていたと思うのですが
何か方法があるのでしょうか?
888デフォルトの名無しさん:2005/06/15(水) 14:28:09
>>885
例外はない。disposeしろ。
889デフォルトの名無しさん:2005/06/15(水) 17:54:28
興味あるか判らないがJarInflaterの動作テスト結果報告。
505のPとN:やばいくらい重い
506・900のPとN:505に近いくらい重い
700・901のPとN:重いけど実用に耐えうる速度
その他のdoja3.0が動く機種:快適

ちなみにiとかisとicとか末の言葉が変わろうと同じでした。
あ、重い重くないってのは体感速度です。
実際に速度計ったわけではないのであしからず。
ユーザーが多いPとNがダメってのはかなり痛い・・・。
890デフォルトの名無しさん:2005/06/15(水) 20:17:57
ファイル数を少なくして圧縮の利点だけ活用しろ。そうすりゃPNでも速くなる
891デフォルトの名無しさん:2005/06/15(水) 21:40:25
そこでLZ圧縮かBPE圧縮ですよ。
892デフォルトの名無しさん:2005/06/15(水) 21:42:47
展開速度なんて誤差の範囲だと思うぞ。
と思う、SH900iの俺であった…。FF2とかテラオソス(´・ω・)
893デフォルトの名無しさん:2005/06/15(水) 23:12:01
つか普通に JarInflater 使ってるけどな

要は使い方次第だ

圧縮・解凍をするタイミングをなるべく少なくするとか、
ユーザーの時間感覚のスキマをついて解凍するとかね
894デフォルトの名無しさん:2005/06/15(水) 23:55:47
ベンチマーク欲しいな。
テキストデータとか、RPGのマップデータなんかはおあつらえなんで、
JarInflater使いまくりたいよ。
個々のデータは数KBでも、全部ベタで持ったらン十〜100KBになることなんてザラだし、
30KBの制約の中に、自前の伸張ルーチン仕込む余裕をひり出すのも一苦労。
1KBあたりn秒みたいな、簡単な目安があるといいんだが。
895デフォルトの名無しさん:2005/06/16(木) 00:01:16
んぱかの人 ベンチ たのむ
896デフォルトの名無しさん:2005/06/16(木) 01:27:17
>>894
実際に使ったことある?
JarInflaterはopenするときにデータ量によってドカっと処理が停止して
readするときはすいすい読み込める
だから頻繁にopen/closeするような作り自体はまず無謀
そしてopenしっぱなしだとメモリを喰う罠
897デフォルトの名無しさん:2005/06/16(木) 03:32:31
まあ、ネイティブ機能を信頼するほうが間違いってこった。
こういうAPIは使わなければ使わないほど結果が安定する。
898デフォルトの名無しさん:2005/06/16(木) 11:59:13
>>896
それはオープン時に一度内部で一括展開されて、
後は展開結果が参照される続けるだけってことになるのかな。
そりゃメモリも食うわいな。

いずれにしても、最初の読み込みでパケ量減らすために使うか、
ある程度まとまった量を一括展開するのにしか使わないのが
吉ってことかしら?
899デフォルトの名無しさん:2005/06/16(木) 23:48:09
SH505で試してみた。
一度に扱うZipのサイズが巨大すぎないなら、十分現実的な速度で動くっぽい。
逆にある程度サイズが大きくなっちゃうと、目に見えて処理が固まっちまうので
>>894的な使い方はありだけど、速度優先でいくなら、Zipに何でもかんでも
突っ込むんじゃなく、ある程度容量に損失出ること覚悟した上で、
少し細切れ気味のデータにして使うのがいいとオモタ。

ところで、場合によってはこの種の伸張ルーチンは自前で用意した方が
機種依存とかの揺らぎに振り回されなくていい気もするんだが、
ネィティブコードがJavaの展開コードに速度面で劣る状況ってあるのかな?
900デフォルトの名無しさん:2005/06/17(金) 07:13:29
zip伸張ルーチンはネイティブで持ってるはずだから、普通に考えれば速いはずなんだけど、
zip自体の複雑さと、APIのオーバーヘッドが加味されてどうなるかッスね。
自前で圧縮・伸張するなら、8bit PC時代みたいにLZ77かBPEかな。
901デフォルトの名無しさん:2005/06/17(金) 16:43:40
BPEってどっかにソース転がってたっけ?大昔CMagazineで読んだきりだから忘れちゃったよ。
902デフォルトの名無しさん:2005/06/18(土) 15:41:23
D901iSはアプリ強いのか?
903デフォルトの名無しさん:2005/06/18(土) 22:59:33
例のdrawLineバグがきちんと消えてるぞw<D901i
904デフォルトの名無しさん:2005/06/19(日) 16:45:01
ねとらじって、どういうAPIで音を出しているんでしょうか?
mldにエンコードして、AudioPresenterに食わせる?
905デフォルトの名無しさん:2005/06/20(月) 08:28:02
7月1日創刊? 詳細知ってる人おしえれ
http://appget.com/im/pc_static/mag/
906デフォルトの名無しさん:2005/06/20(月) 13:47:14
>>905
んー本格創刊てことは今までネット限定の数量限定の販売だったのが
本屋に並ぶことになったかもしくはネット限定で数量無制限になったか
どっちかかなと思う…いやたんなる予想ですけどね
907デフォルトの名無しさん:2005/06/20(月) 19:28:40
アドバイス頂ければ幸いです。

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

これはどうやったら回避できますでしょうか?
908デフォルトの名無しさん:2005/06/20(月) 21:31:31
Timerを使う
909デフォルトの名無しさん:2005/06/20(月) 21:38:38
>>907
ソースを提示していないから誰も的確なアドバイスはできない。

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

すでにそのようにしているなら、フラグを監視している場所(タイミング)が悪い。
910デフォルトの名無しさん:2005/06/20(月) 23:18:23
sleep出た時にキー情報初期化すればいいじゃん
911デフォルトの名無しさん:2005/06/21(火) 12:46:25
レスありがとうございます。
原因がわかりましたが、まだ解決できません。
描画中にキーイベントは一切processEventに入ってきていませんでした。
ただ、描画中にキーを押した分は、描画後に一気に流れてきます。(自前の描画関数だから?)
てっきり描画中もprocessEventに来ているものだと思っていたのですが、、、
これでは、描画前にフラグを立てても、意味がありませんでした。
キー情報初期化とはどうやるのでしょうか?
描画後に溜まっているキー情報をクリアできたら、非常に助かります。。。
912デフォルトの名無しさん:2005/06/21(火) 12:57:38
度々、恐れ入ります。
自前ではなく、repaint()に処理を書き込んだところ、
描画中も、processEventにてキー入力を拾うことができました。
自前で書き込んでる場合は、拾えず、
repaint()ないなら拾える。
まだまだ、勉強が足りないようです。。。ご迷惑をおかけしました。
913デフォルトの名無しさん:2005/06/21(火) 13:00:39
その自前の描画関数のどこかにThread#yieldを挿入すればうまくいく希ガス
914デフォルトの名無しさん:2005/06/21(火) 13:08:15
自前の描画って、processEvent()内で行なってないか?
もしそうなら、描画が終わるまでキー入力は受け付けない。
(正確には受け付けないというより、バッファに溜まっていく)
repaint()は別スレッドで描画されるから受け付ける。

ソース見ないとわからんが、たぶんこれが原因じゃないかな。
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();

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

ゲームなんかで色々多岐に分岐する際そいう作り方だと
呼び出されるたびに無駄なメモリの確保やら色々されてしまい結果的に容量不足になる。
処理速度を安定させることも難しくなるし、根本的に作り直しをすべきだと思う。
918デフォルトの名無しさん:2005/06/21(火) 15:12:35
>>916
>>917の言うとおり。
processEvent()内で描画などの「重い」とされる処理をしちゃだめ。
プログラミングガイドに書いてあるでしょう。 ←重要
他に例えばスクラッチパッドのアクセスや通信もここに書いてはダメ。
「あまりやらない方がいい」ではなく「やってはダメ」と覚えて。

processEvent()はケータイ本体側(システム側)からユーザー入力などのイベントを
プログラムの動作とは非同期にプログラム側へ通知する役目を持つメソッド。
通知を妨げるような処理をやってはいけない。
やるのは、押されたキーの値の代入とか、フラグの上げ下げとか、その程度で。
919918:2005/06/21(火) 15:15:22
プログラミングガイドって
「iアプリコンテンツ開発ガイド for DoJa-xx 詳細編」のことね
920デフォルトの名無しさん:2005/06/21(火) 16:01:45
勉強になります。
ありがとうございます。
921デフォルトの名無しさん:2005/06/21(火) 22:38:29
ダウンロードテストをしようと思って
アプリゲットに作者登録したんですが
そっからどうしたらいいのかわかりません
アップロードはできていると思うんですが
どうしたらダウンロードできるんでしょうか?
スレ違いだったらすいません
922デフォルトの名無しさん:2005/06/22(水) 02:10:04
アプリゲットは使ったことは無いが・・・
ダウンロードする url はどこかにないのか?
Vアプリ風なら、ダウンロードを通知する機能が
あるかもしれないが・・・。
923デフォルトの名無しさん:2005/06/22(水) 09:02:25
よくわからんが、登録完了通知メール来たの?
924デフォルトの名無しさん:2005/06/22(水) 14:02:50
自分で作ったアプリをSDカードに転送して
そこから携帯で実行することってできますか?
カード持ってないんで・・・
925デフォルトの名無しさん:2005/06/22(水) 14:11:55
>>924
出来ない
926デフォルトの名無しさん:2005/06/22(水) 14:52:24
出来たらみんなウハウハ
927デフォルトの名無しさん:2005/06/22(水) 18:37:14
またそのネタか
928デフォルトの名無しさん:2005/06/22(水) 20:19:02
doja3.0 3.5が入った状態で4.0をインストールしようとしたら
違うバージョンが入ってるということでエラーが出てインストールできません
複数バージョンを同居させたいのですがみなさんどのようにしていますか?
929デフォルトの名無しさん:2005/06/22(水) 20:33:04
自己レス
doja4.0からはプロファイルが選べるんですね
古いのをアンインストールして4.0からプロファイルを選ぶのが正しい気がしてきました
930デフォルトの名無しさん:2005/06/22(水) 20:34:39
ウチのPCのは普通にDoja2.0 2.1 3.0 3.5 4.0 が同居しているのだが?
931デフォルトの名無しさん:2005/06/22(水) 20:44:43
>930
っ[ 1.5OE 2.5OE ]
932921:2005/06/22(水) 22:23:57
>>922
>>923
わかりにくい説明ですいませんでした
勝手ながら自己解決しました。
お騒がせてスマソ
933デフォルトの名無しさん:2005/06/23(木) 00:18:21
>921
どう解決したか書こうぜー。
誰かの参考になるからさー。
934デフォルトの名無しさん:2005/06/23(木) 04:24:13
>>898
これが正解か知らんが、JarInflater開くのに必要なInputStreamは、
JarInflaterが作成された時点で閉じてしまっても問題ない。
イコール、JarInflater自体は作成時にJarを展開してしまう
=展開容量と機種によっては、がっつり固まってしまう、という俺理論。

合ってるかどうかはわからんちん。
でも小規模の単純なデータなら、自前で展開するよか大抵早いみたいだね。
Jar(Zip)の中に何でもかんでも詰め込みすぎない様にすればいいだけみたい。
935921:2005/06/23(木) 19:17:48
>>933
んじゃ一応書いときます
アプリゲットの作者登録をすると、ホームページエリアを貸してもらえるんですよ
そこで自分の作ったアプリをアップロード、ダウンロードするんですが
通常ならFTPってとこにjarファイルjamファイルを入れて
HTMLファイルを組み込めばいいはずの所を
bin.res.spなどが入ったフォルダを丸ごとアップして
test.hlmlなどというファイルも入れたりしてたのです

みなさんからすれば(゚Д゚)ハァ?なんでしょうけど
私はFTP.HTML共に初めてだったので、
わけがわからずこんなことになってしまいました。

こんなの誰かの参考になるかな・・・
936933:2005/06/23(木) 19:53:47
>921
アプリゲットの中の人には参考になるよ。
そういうところを強調しなければいけない、ってね。

スレ違いだがゲームチャンネルVは
サイトの使い方が全くわからなかったよ。
937デフォルトの名無しさん:2005/06/24(金) 01:21:49
JDKの違うバージョンを同居させて使うことはできますか?
例えば1.5と1.4とか・・・
938デフォルトの名無しさん:2005/06/24(金) 03:02:56
させてるが、あんましオススメはしません。
つってもDojaを環境のまま使う分には大して影響しないけど。
939デフォルトの名無しさん:2005/06/27(月) 15:33:50
アドバイス頂ければと思います。
現在RPGを作っていて、移動画面と戦闘画面で
Canvasを分けています。
移動中から戦闘画面にsetCurrentで変更しようとすると、
戦闘画面用Canvasが表示するまで1.2秒くらいかかってしまいます。
これは、やはりCanvasを一つにしないと回避できないでしょうか?
ちなみに、戦闘画面の方で背景色を変えるだけの処理でも
時間は同じでしたので、戦闘画面Canvasの処理が重いというわけではないようです。
940デフォルトの名無しさん:2005/06/27(月) 15:56:18
申し訳ございません。
自己解決しました。
コンストラクタでスクラッチパッドにガンガン、アクセスしていました。
申し訳ございません。。。
スレ汚し、すいませんですm(_ _)m
941デフォルトの名無しさん:2005/06/27(月) 23:04:25
すみません。ちと困った事があって質問します。
クラスPaletteを使用してイメージ画像のパレットを操作しようと
しているのですが、エミュレータ上ではうまくいくのですが、
携帯上だとなぜか全くうまくいきません。
RGBAの並びがエミュレータと携帯上だと異なるのでしょうか?

とりあえずは下記に詳細を記しておきます。
・イメージ対象はGIFフォーマットデータ
・イメージのパレットでの吸出し関数
 PaletteクラスでのgetEntry関数
・RGBAの分解なんかは下記の感じで
int rgb = plt.getEntry(i);
int red = rgb&0x000000ff;
int green = (rgb&0x0000ff00)>>8;
int blue = (rgb&0x00ff0000)>>16;
int alpha = (rgb&0xff000000)>>24;

・イメージのパレットでの設定
 PaletteクラスでのsetEntry関数

・開発環境:Doja4.0
・携帯端末:SH901ic
942デフォルトの名無しさん:2005/06/27(月) 23:52:16
>RGBAの並びがエミュレータと携帯上だと異なるのでしょうか?
そうだよ。
エミュと同じなのは、900端末ではDだけだったような。
残りは全て16bitカラー。901は調べてない。

きちんとgetColorOfRGBを使うべし。
943941:2005/06/28(火) 00:48:51
>>942
なんと・・そうでしたか。
レス感謝です。早速手直ししてみます。
944デフォルトの名無しさん:2005/06/28(火) 01:08:02
getColorOfRGBしないで直接ビット操作した日にゃあ

なんてことない顔して実機で落ちるからな
945デフォルトの名無しさん:2005/06/28(火) 18:17:35
まぁ不便な点ではあるよなぁ。
MIDPなんかは整ってるから楽なんだけど。
946デフォルトの名無しさん:2005/06/28(火) 18:54:25
ttp://www.itmedia.co.jp/mobile/0210/04/n_sikoku8_2.html

このページにあるBusinessIMをDoJa4.0で走らせて見たのですが、
com.nttdocomo.io.ConnectionException
のエラーが出てしまいます。
環境は確認したのですが、どこがおかしいのでしょうか?
どなたかアドバイスしていただけるとうれしいです。よろしくお願いします。
頭悪い質問ですみません。
947デフォルトの名無しさん:2005/06/28(火) 21:22:29
>>946
エミュレータのネットワーク設定では?
948デフォルトの名無しさん:2005/06/28(火) 22:00:16
>>947
だとおもったんですけど、他のアプリはちゃんと動いたんです。
http://localhost:8080で設定しているんですけど・・・
他のサーブレット使うアプリも動いたのですが・・・
949デフォルトの名無しさん:2005/06/28(火) 22:14:31
(゚∀゚)
950デフォルトの名無しさん:2005/06/28(火) 22:56:15
初心者ですみませんが、スクラッチパッドにString以外のオブジェクトって書き込めますかね??
951デフォルトの名無しさん:2005/06/28(火) 23:49:04
out.writeInt(int)
out.writeLong(long)
out.writeByte(int)
out.writeBoolean(boolean)
952デフォルトの名無しさん:2005/06/29(水) 00:15:28
おいおい、質問者はオブジェクトって言ってるぞ。
953デフォルトの名無しさん:2005/06/29(水) 01:26:11
>950は、(初心者っぽくないが)シリアライズについて質問し、
>951は、シリアライズはないから自前で変数を1つずつ書き出せ、と遠回しに回答。
だったりして。
954デフォルトの名無しさん:2005/06/29(水) 02:19:51
         ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) < 次スレまだ〜?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        |  愛媛みかん  |/
955デフォルトの名無しさん:2005/06/29(水) 17:14:13
iアプリってサスペンド取れないんだっけ?
毎フレーム取得してる時間がリジュームの時に更新されてたりされてなかったりして
非常に困るんでなんとかしたいんだが・・・

これってリジュームのイベントが来る前に何か動いてる時があるってことだよね?
956デフォルトの名無しさん:2005/06/29(水) 17:42:52
>>955
それだけの情報ではなんとも・・・ソースも見れないし。
サスペンドって事は待ち受けアプリ???
その毎フレーム取得してるという時間をどのように扱ってるのか判らないが
なんならリジュームイベントの中で再取得して更新してやればいいんじゃない?
957デフォルトの名無しさん:2005/06/30(木) 09:39:05
あ、俺もそれは思った。
Resume自体は取れるが、いつSuspendに入ったんだかはわからん希ガス。
今作ってるのが505以降用で、Doja3.5以降のATTRIB使えないんで、とりあえず
FOLDING状態だけは見るようにしてるんだけど。
958デフォルトの名無しさん:2005/06/30(木) 11:46:22
質問です。
iモーションをアプリ上で描画するときは、MediaManager#getImageでMediaImageを取得し、
Panel上にVisualPresenterを使って設置するわけですが、
Flash(swf)ファイルは同様にできないのでしょうか?

資料をざっと見てもそういう一覧を発見できず、ぐぐってもまったくHITしないようです
「swf MediaManager」
959デフォルトの名無しさん:2005/06/30(木) 22:29:56
某フルブラウザ開発者さんですか?
無理ですよ。鯖側で展開しない限り。
960デフォルトの名無しさん:2005/06/30(木) 23:05:44
>959
今リリースされてるフルブラウザの開発者なら、
そのぐらい知ってると思われ。
というか、そのぐらい調べられるっしょ。

っ[ i アプリコンテンツ開発ガイド for DoJa-4.0 〜詳細編〜 1.00 P88〜P89 ]

差別化のために Flash 対応しようとしたのかな?
swf はフォーマットが公開されてるから、
あとは気合いと根性でがんばれ。
961960:2005/07/01(金) 00:20:35
Panel って書いてる時点でフルブラウザと無縁だって
気づこうぜ俺・・・。
962デフォルトの名無しさん:2005/07/01(金) 04:57:51
main.java
a.test.java
というパッページ、及びクラス構成で、
a.test.java内で、
import main;
としていますが、

iappliTool 3.5でコンパイルすると、
エラーとなってしまいます。
javacの実行に失敗しました
ビルド開始(DoJaプロファイル : DoJa-3.5)
C:\DoJa3.5\apps\20050629\puzzle\src\a\test.java:14: '.' がありません。
import main;
^


原因として考えられることありましたら、
教えてください。
963962:2005/07/01(金) 04:59:51
import main;
_______^ ←この位置に^があります。
964962:2005/07/01(金) 05:00:51
main のmの字のところに ^ があります。

度々すみません。
965デフォルトの名無しさん:2005/07/01(金) 09:14:58
>>959
>>960
ありがとう。フルブラウザとはまったく関係ない人です。

Doja-4.0のほうにきちんと対応書いてありましたね。
3.0の方を見てたら、対応してあるはずのiモーションについてかかれておらず「公式資料で抜けがあるのかよ!」
とこっちにきてしまいました。

966デフォルトの名無しさん:2005/07/01(金) 10:41:58
質問です。
ImageをGIFにする手段というのは用意されていないのでしょうか。
JPEGにする手段としてはImageEncoderというものを見つけたのですが、
「JPEGなど」といいつつGIFはサポートされていないように見えます。

自前で実装するしかないのでしょうか?
967デフォルトの名無しさん:2005/07/01(金) 16:54:45
>>962
import main;ていらなくね?
968デフォルトの名無しさん:2005/07/01(金) 21:45:45
いらないね。
デフォルトパッケージ内だから、暗黙のうちに解決される。
importつけるとエラーになる。
969962:2005/07/01(金) 22:26:06
main;

だけでいいということですか?
970デフォルトの名無しさん:2005/07/01(金) 22:49:29
ていうことです。
レッツチャレンジ。


でも、eclipseとかで開発した方が効率いいよ。
検索すると一杯引っかかってくるので、頑張って試してみて欲しい。
971デフォルトの名無しさん:2005/07/01(金) 22:53:33
空気を読まずに質問させてください。

Dojaのエミュレータのキーアサインを変更することって可能でしょうか?
スキンの設定は見当たるのですが、ボタンの対応設定はどこにあるのか…
テンキーがないノートPCでの開発はキツイヨ…
972デフォルトの名無しさん:2005/07/02(土) 02:47:24
>>971
俺もキーアサインできるなら知りたい。
doja.exeのパラメータ「-p」が怪しいのだが
色々試しても何も変らん。
973 ◆GPsvCgD6Dc :2005/07/02(土) 03:46:00
JAVAで携帯用PCブラウザを作ろうと思ってるのですが何からしていいのやらって感じです。
とりあえず、どんな知識をつければいいか教えてください。
974デフォルトの名無しさん:2005/07/02(土) 04:08:04
>携帯用PCブラウザ
なにそれ?
VNCみたいの?
975 ◆GPsvCgD6Dc :2005/07/02(土) 04:16:32
フレームを使ったページや、ページ容量の大きいサイトを画像圧縮したりして携帯からでも観覧できるようにするブラウザを目指してます。
976デフォルトの名無しさん:2005/07/02(土) 09:49:12
いまさら作るだけムダって気が。
977デフォルトの名無しさん:2005/07/02(土) 10:30:11
ちょっとまて。技術系スレなのに「作るのムダ」って言い方はないだろう。
勉強にはなる。

>>975
まずHTMLの勉強じゃないか?
978デフォルトの名無しさん:2005/07/02(土) 10:51:24
携帯アプリ初めてなら、まずは一つサンプルHTML作って
ソースに埋め込んで、それを Canvas で描画だよな。
タグの解釈とかは抜きで。
画面が表示されるやつは、やっぱり嬉しい。

次はスクロールもさせないとな。

次はタグの解釈か?通信なんかどうとでもなるだろうし。
解釈して反映させて。
ハイパーリンクはフォーカスもあるから面倒かもな。

あとは画像。死にそうだな。

これでまずシンプルなブラウザはクライアント側完成。

次にサーバも作らないとな。
フレームとか、圧縮は後回し。
基本的にはプロキシサーバを作るようなもん?
まずはスルーで端末に送って、
あとはタグの置換機能も必要か?
画像サイズも変更できるようにしないとな。

ここまできたら圧縮も簡単だな。

あとはフレームを実装すればできあがり、か?

あー。まずは DoJa4.0 で作って、次は DoJa3.0&DoJa4.0LE に移植、
次に DoJa2.0 に移植ってな。

最後に広告枠つける。
979デフォルトの名無しさん:2005/07/02(土) 11:00:46
>最後に広告枠つける。
ワロタ。重要だなw
980 ◆GPsvCgD6Dc :2005/07/02(土) 11:17:14
なるほど〜。返答ありがとうございます。アプリ作るの初めてなんで苦戦しそうです。
とりあえず教本でも買ってこつこつやろうと思うのですが、おすすめの本はありますでしょうか?
あとJABAのみ学べばいいのでしょうか?他に覚えておいた方がいい言語はあるんですかね。
質問ばかりですみません。
981デフォルトの名無しさん:2005/07/02(土) 11:18:09
初めてなのに志が高くて大変結構。
とりあえずネット上にある初心者アプリサイトを見て、簡単なアプリ作ってみそ。
982 ◆GPsvCgD6Dc :2005/07/02(土) 11:18:42
JABA×JAVA○

orz
983 ◆GPsvCgD6Dc :2005/07/02(土) 11:27:48
HTMLなら多少理解しているのですが…
とりあえず本屋行ってみます〜。
984デフォルトの名無しさん:2005/07/02(土) 11:36:09
>>983
アスキーのFOMA本にテキストベースのHTMLブラウザが載ってた希ガス
985962:2005/07/03(日) 00:10:41
main;
とすると、

'class' または 'interface' がありません。
main;
^
となり、

main; を書かないと、mainのメソッドを使っている箇所で、シンボルを解釈処理できません。
と出てしまいます。

962の補足をしますと、
同じソースなのですが、
環境によって、import main;がビルド通ったり、962のようなエラーが出たりします。


986デフォルトの名無しさん:2005/07/03(日) 00:16:27
>980
つ【ttp://www.edit.ne.jp/~giw/naori/memo_i.html
高いな。
987デフォルトの名無しさん:2005/07/03(日) 00:40:23
mainはきちんとpublicになってるか?
全てのjavaファイルが、同じフォルダにある状態でコンパイルしてるか?
988デフォルトの名無しさん:2005/07/03(日) 01:05:36
>>962
> main.java
> a.test.java
> というパッページ、及びクラス構成で、

この部分が意味不明なのでまず確認したい。
src/main.java
src/a/test.java
と配置してるんだよね?

もしファイル名自体がa.test.javaで
src/main.java
src/a.test.java
と配置してるんだったらそりゃ不適切。

そして import main; なんて書き方はしない。
やりたいことは import main.java; だろ。
989デフォルトの名無しさん:2005/07/03(日) 04:23:54
>>962
えーと、名前のあるパッケージに所属してるソースから、
デフォルトパッケージのクラスを使う術はありません。
昔は、
import main;
で行けたんだけど、JDK1.4からはJLSを厳密に解釈するようになって、
そうするとコンパイルエラーになるようになってしまった。
なので、解決策は、
- 全部デフォルトパッケージに配置する
- デフォルトパッケージに所属してるソースを、適当な名前のパッケージに移動させる
のどちらかしかありません。どちらも面倒だけど。

というわけで、
>>988
>やりたいことは import main.java; だろ。
は嘘です。騙されないようにしましょうw
990デフォルトの名無しさん:2005/07/03(日) 07:58:24
                _∧_∧_∧_∧_∧_∧_∧_∧_
     デケデケ      |                   
        ドコドコ   <   次スレまだ〜?
 ☆      ドムドム   |_  _  _ _ _ _ _ _ _ _
        ☆   ダダダダ! ∨  ∨ ∨ ∨ ∨ ∨ ∨ ∨ ∨
  ドシャーン!  ヽ         マチクタビレタ〜!!!    ♪
         =≡= ∧_∧     ☆
      ♪   / 〃(・∀・ #)    / シャンシャン
    ♪   〆  ┌\と\と.ヾ∈≡∋ゞ
         ||  γ  ⌒ ヽヽコ ノ  ||
         || ΣΣ    .|:::|∪〓  ||   ♪
        ./|\人 _.ノノ _||_. /|\

           ドチドチ! 
991デフォルトの名無しさん:2005/07/03(日) 10:44:56
アスキーのテキストブラウザのソース流そうか?
992デフォルトの名無しさん:2005/07/03(日) 16:33:11
999999999999999999999999999999999999999999999992
993デフォルトの名無しさん:2005/07/03(日) 19:28:56
初心者にソース渡してもなあ・・・。
つか本買え。
994デフォルトの名無しさん:2005/07/04(月) 00:12:02
タグの処理を全部携帯にまかすともっさりするような気がするんだけど
まぁまだそこまで危惧しなくてもいい段階なのかな
995デフォルトの名無しさん:2005/07/04(月) 02:23:53
996デフォルトの名無しさん:2005/07/04(月) 05:38:30
うめ
997デフォルトの名無しさん:2005/07/04(月) 05:39:41
埋めついでに協力頼む
【java初心者の俺がアプリ作ってみる】
http://hobby7.2ch.net/test/read.cgi/appli/1120137628/l50
998デフォルトの名無しさん:2005/07/04(月) 05:40:00
999デフォルトの名無しさん:2005/07/04(月) 05:40:33
とめさん
1000デフォルトの名無しさん:2005/07/04(月) 05:41:39
 *     +    巛 ヽ
            〒 !   +    。     +    。     *     。
      +    。  |  |
   *     +   / /   イヤッッホォォォオオォオウ!
       ∧_∧ / /
      (´∀` / / +    。     +    。   *     。
      ,-     f
      / ュヘ    | *     +    。     +   。 +        このスレッドは1000を超えました。
     〈_} )   |                                次スレも…VIPクオリティ!!
        /    ! +    。     +    +     *         http://ex11.2ch.net/news4vip/
 ガタン ||| j  / |  | |||
――――――――――――
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。