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

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
NTT DoCoMoのiモード携帯電話用Javaに関する話題を扱うスレッドです。

※DoCoMo以外は下記スレへ。

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

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

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

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

過去スレ
Part 1 http://piza2.2ch.net/tech/kako/975/975428633.html
Part 2 http://pc3.2ch.net/tech/kako/1000/10007/1000723476.html
Part 3 http://pc2.2ch.net/test/read.cgi/tech/1040898596/
Part 4 http://pc5.2ch.net/test/read.cgi/tech/1067139509/
Part 5 http://pc5.2ch.net/test/read.cgi/tech/1084246226/
Part 6 http://pc5.2ch.net/test/read.cgi/tech/1091286071/
Part 7 http://pc5.2ch.net/test/read.cgi/tech/1102844217/
Part 8 http://pc8.2ch.net/test/read.cgi/tech/1110946222/
Part 9 http://pc8.2ch.net/test/read.cgi/tech/1120411353/
Part 10 http://pc8.2ch.net/test/read.cgi/tech/1131603113/
2デフォルトの名無しさん:2006/03/08(水) 14:50:26
■ 開発環境

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://homepage.mac.com/t.sekiguchi/javablender/
jarg - Java Archive Grinder
http://jarg.sourceforge.net/
3デフォルトの名無しさん:2006/03/08(水) 14:51:13
■ 主なアプリ配布サイト

ギガアプリ
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

■ 関連板

携帯・PHS
http://hobby7.2ch.net/phs/

携帯機種
http://hobby7.2ch.net/keitai/

携帯コンテンツ
http://hobby7.2ch.net/chakumelo/

携帯電話ゲー
http://hobby7.2ch.net/appli/
4デフォルトの名無しさん:2006/03/08(水) 14:54:02
CLDC+MIDP+携帯電話用Javaスレッド part 5
http://pc8.2ch.net/test/read.cgi/tech/1132493827/

BREW(Binary Runtime Environment for Wireless) 7
http://pc8.2ch.net/test/read.cgi/tech/1137502541/

BREWはオマケだ。
5デフォルトの名無しさん:2006/03/08(水) 19:40:03
>1
乙。
6デフォルトの名無しさん:2006/03/09(木) 03:04:30
        _
     ア´,ヘ ゙ヘ   悪の組織に只今参上! …サブリミットエスカレーション!
    ノ〈(r'ノハ))〉 +          ∧_∧ 
   〃 リ゚ ヮ゚ノ(    +    Σ(´Д` ;) →>>1
   (((⊂iフ采iiつ━┫∽∽∽∽∽\∽ ∽\∽  +
   )' ) <jYハ  +      +   ∽\∽ ∽\∽∽∽。
       しヽ,)              (___ (__)   ∽゚ +

        _
     ア´,ヘ ゙ヘ +  正義の勝利です。     '∴・
  + ノ〈(r'ノハ))〉 +                ∴:';'
   〃 リ゚ ヮ゚ノ(                  :;::;.,.::;.:;.:
   (((⊂iフ采iっ)                (    )
   )' ) <jYハ  +         ∧_∧   | | |
       <(_j' +         (,。Д ゚ ')  (_(__)
                    '^"~''~;''
7デフォルトの名無しさん:2006/03/09(木) 16:24:48
乙カリー
8デフォルトの名無しさん:2006/03/10(金) 11:38:16
携帯ブラウザの戻るを使えなくさせるのってどうやんの?
9デフォルトの名無しさん:2006/03/10(金) 21:43:10
>>8
スレタイ読んでの質問なら、

  実装しない
10デフォルトの名無しさん:2006/03/12(日) 17:18:57
P900iにおいて、imeOnの機能が正しくいかない気がするのですが、
他にも試した人はいますか?
11デフォルトの名無しさん:2006/03/12(日) 17:35:26
今まで普通に起動できてたんだけど、急に
message = Uncaught exceptin happened throwable〜
というエラーが出ました。
原因は何と考えられますか?
12デフォルトの名無しさん:2006/03/12(日) 17:41:23
どこか変えたか環境が変わったんじゃね?
でなけりゃハードディスク壊れかけてるとか
13デフォルトの名無しさん:2006/03/12(日) 17:47:28
>>10
これですが、一応エラーは直ったんですが、

void inputMessega() {
  imeOn(text, TextBox.DISPLAY_ANY, TextBox.KANA);
  name[index] = text;
}

public void processIMEEvent(int type, String text) {
  this.text = text;
}

この場合、実機だとnameには入力した文字がいかないのですが
できれば理由を教えてください(´・ω・`)
14デフォルトの名無しさん:2006/03/12(日) 18:29:59
>>13
むしろそれでうまく行くほうがおかしい

実はエミュレータの動作は少しおかしくて
imeOnはドキュメントに従えば「ブロックしないメソッド」なのだけど
エミュレータはブロックしちゃうんだよね
ちなみに実機はブロックしない

だからimeOnはThread使ってラッピングして
確実にブロックしないようにしているよ
15デフォルトの名無しさん:2006/03/12(日) 18:45:23
>>14
なるほど(`・ω・´)
つまり、スレッドを使ってるから
先にprocessIMEEventメソッドが実行されるより
this.text = text; がさきに実行されるというわけですね?
1615:2006/03/12(日) 18:55:55
>>14
>>15違うや、IMEが実行されている間もその処理も実行しているということですか?
17デフォルトの名無しさん:2006/03/13(月) 09:19:06
俺は逆に、必ずブロッキングするようにimeOnの次にループ仕込んでる。
imeの裏で動いていて欲しいときなんて(今のところ)無いし。
18デフォルトの名無しさん:2006/03/13(月) 18:32:59
3キャリアに対応できるアプリを一つの
JARで作るのって簡単ではないのか?
nttdocomoというパッケージを意図的に使わないようにして
作ればできそうに見えるのだが・・

19デフォルトの名無しさん:2006/03/13(月) 18:38:48
>>18
不可能
20デフォルトの名無しさん:2006/03/13(月) 19:51:44
ドコモ機種をM1000のみに限定すればできんじゃね。
21デフォルトの名無しさん:2006/03/13(月) 19:57:16
>>18
つ【com.nttdocomo.ui.IApplication】
22デフォルトの名無しさん:2006/03/13(月) 22:01:45
表形式にデータを表示したいのだがどーやるの?
23デフォルトの名無しさん:2006/03/13(月) 22:06:30
>>22
表示形式にデータを表示すればできるよ
24デフォルトの名無しさん:2006/03/14(火) 11:56:21
>>18
一つのJarは無理。一つのソースでというのはどこの企業でもやってるが。
25デフォルトの名無しさん:2006/03/15(水) 10:54:52
そういやお前等、900以降の機械とかで、
企画側に画像何枚読めますか?
って聞かれたらどんな風に答えてる?

この前聞かれたんで、ちょっと気になった。
一応公式資料のネイティブデータヒープ÷4byteの画素数くらいは保障するけど、
機種によって違うからあんまり当てにはならないって言っておいたけど、
明確な基準が無いのってやり辛い(´・ω・`)
26デフォルトの名無しさん:2006/03/15(水) 11:17:05
画像を全部オンメモリで保持しなきゃいけないアプリは大変ですな…
27デフォルトの名無しさん:2006/03/15(水) 11:51:25
>>25
240*240を30枚程度は全機種読めるはずだが
28デフォルトの名無しさん:2006/03/15(水) 13:13:14
505なら240*240を7枚超えるとヤバイ。当然同時に持つ場合だけね。入れ替えはok。
900はちょっとわからんなぁ・・・。505をまだ外してないから。
29デフォルトの名無しさん:2006/03/15(水) 15:25:33
D505は7枚も入らないぞ
30デフォルトの名無しさん:2006/03/15(水) 16:15:13
Dは放置
31デフォルトの名無しさん:2006/03/15(水) 16:37:36
>>25
『機種によりますが1枚から100万枚の間です』
って答えてるよ(`・ω・´)
32デフォルトの名無しさん:2006/03/15(水) 17:32:31
>>29
Dでも7はギリギリいかない?
個人的には面積を出すツールを作って7枚までは
ギリギリ大丈夫だと計測してるんだが・・・。
33デフォルトの名無しさん:2006/03/16(木) 18:08:25
表示したい場所はサブディスプレイなのですが、
画像ファイルを結合して1枚のイメージとして扱うことは可能でしょうか?
または、サブディスプレイの表示領域を細かく分けて複数のイメージを同時に表示させることは可能でしょうか?
34デフォルトの名無しさん:2006/03/16(木) 18:29:03
>画像ファイルを結合して1枚のイメージとして扱うことは可能でしょうか?
可能
>サブディスプレイの表示領域を細かく分けて複数のイメージを同時に表示させることは可能でしょうか?
可能

Graphics#drawImage()を理解して、自分の考えどおり好きなように描画してくれ。
35デフォルトの名無しさん:2006/03/16(木) 18:42:41
>>34はメインディスプレイのつもりで書いてないか?
サブディスプレイなら、
>>33の質問1つめはOK。(これはメインディスプレイへ描画するときでも同じこと)
質問2つめはNG。(座標指定なしでImageを描画するから)
じゃないかな。
36デフォルトの名無しさん:2006/03/16(木) 19:00:07
質問!!

意図的にgcしたい場合なんだけど、
Runtime.getRuntime().gc();
を調べたら
System.gc();が一般的です。って書いてあった。
これって、どっち使ってもいいって事?
37デフォルトの名無しさん:2006/03/16(木) 19:36:20
>>36
>これって、どっち使ってもいいって事?
最後の最後でどうしてそういう発想になるんだよw
System.gc()が一般的って書いてあるんだから素直にSystem.gc()使えよ。
38デフォルトの名無しさん:2006/03/16(木) 21:51:20
>>36
サンクス。
どっちでもいい、じゃなく、どっちでも使えるか、で聞いてみた。
どっちでも使えるなら、気兼ねなくSystem.gc()使う事にする。
なんでRuntime(ryなんぞあるのか気になってた。
39デフォルトの名無しさん:2006/03/16(木) 23:22:57
System.gc() の呼び出しの動作は、実際には次の呼び出しと同じです。
Runtime.getRuntime().gc()
4033:2006/03/16(木) 23:45:10
>>34
Graphics#drawImage()のjavadocをもっと読んでみます。ありがとうございました。

>>35
サブディスプレイは一枚表示だけなのですね。大変参考になりました。


TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
42デフォルトの名無しさん:2006/03/18(土) 19:51:34
マルチ帰れ
43デフォルトの名無しさん:2006/03/20(月) 11:37:49
せっかくの電話なんで、音声入力に対応したアプリを作りたいのですが
そういうAPIって無いですよね・・・。
APIはファームウェアにあるようなので、これを書き換えでもしない限り、こういうのは不可能でしょうか?
変則的な方法でも、変態な方法でもかまわないので、方法としてあるならば教えてください。
44デフォルトの名無しさん:2006/03/20(月) 11:52:29
ケータイアプリは原則として用意されたAPIの範囲で作るもの。
その範囲を越えたものを作ろうと思うなら、
ケータイアプリの大きな特徴である、サーバとの通信機能が利用できないか考える。
サーバ側で処理するということ。

それができれば、そういうアプリが作れるということだし、
できなければ、そういうアプリは作れないということ。簡単な判断だろ?
45デフォルトの名無しさん:2006/03/20(月) 12:07:31
そもそも音声入力情報を一切受け取れないので不可能。
46デフォルトの名無しさん:2006/03/20(月) 12:18:27
それが自力で調べられないなら企画にしろプログラマにしろ、
荷物まとめて実家に帰ったらいいんじゃないかな?('-'*)
4743:2006/03/20(月) 16:14:43
>>44
データの処理が出来ないんじゃなくて
ハードウェアを制御してデータの入力が出来ないので、サーバー側で処理しても意味がないような・・・。

>>46
自力で調べた結果、ファームウェアを書き換えるか
DoCoMoに申請して、ネイティブアプリを作らせて貰う(これも結局ファーム)
の2つしかないですねぇ・・・。
どちらも現実的じゃないので、諦めます。
48デフォルトの名無しさん:2006/03/20(月) 16:19:03
Docomoのはあんまり危険になりそうなことは
させてもらえないようになってる。

音声録音できるなら、ユーザに気づかれないように音声録音して
気づかれないように通信してデータ送れればアプリ使って
盗聴できるようになるしねw
49デフォルトの名無しさん:2006/03/20(月) 21:18:52
煽るつもりで書くんじゃないので荒れないで欲しいけど、>>43はちょっと奇妙だと感じた。

発想がソフトウェア開発者の立場じゃないっぽい。
ファームウェアを書き換えるとか
DoCoMoに申請してネイティブアプリを作らせて貰うとか
アプリを作る上でソフトウェア開発者はそんなこと考えないと思うので。
もし端末開発者やDoCoMoの仕様策定部署の人なら、質問するまでもなく自分で分かるし。

そして>>47では>>44の回答に対して
>ハードウェアを制御してデータの入力が出来ないので、サーバー側で処理しても意味がないような・・・。
と言ってるが、自分で分かってるなら、そもそも何で>>43の質問をしてんの?ってことになるし、
挙句に
>どちらも現実的じゃないので
と、じゃぁ>>43の質問の時点でファームウェア云々とかなぜ書いたの?って感じだし。

なんか不思議。俺達、何者かに試されてんのか?w
50デフォルトの名無しさん:2006/03/20(月) 21:42:10
>>49
営業とかSEとか、そういう立場の人なんじゃない?
なんかの業務用システムの設計をしてると見た。
51デフォルトの名無しさん:2006/03/20(月) 22:12:39
>>49
自分の知識が全てだと思うと痛い目にあうよ。
自分が無理だと知ってるが、もしかすると他に対応策があるかもしれないって事でしょ。
全てを自分の知識内で完結してしまうと、絶対に成長出来ない。

ちなみに、相手の業種を何となくで予想しようとしてるが
それも自分の知識の型の中で無理やり考えてるから、理解出来ないだけかと

例えば、趣味ってのもあるし、大学で何か作れって言われたのかも知れないわけで・・・
ただの興味ってのもありうる。
5249:2006/03/20(月) 22:37:23
>>51
あなたの書いてることって1行目からいきなりピントがずれてますね。
>>49の書き込みに対してなぜ>>51のような書き込みが返ってくるのか分かりません。
「痛い目にあうよ。」とか言われても意味不明ですし。

加えて言うと、
>ちなみに、相手の業種を何となくで予想しようとしてるが
>それも自分の知識の型の中で無理やり考えてるから、理解出来ないだけかと
43氏の業種を特定しようだなどと、全然そんな気ないですし、
無理矢理考えてみてもいません。
>>49に挙げた3つの立場(51氏が業種(?)と言っているもの)は
パッと思い付いて引合いに出しただけなので。

43氏の書き込みを何かネタ的に考えて楽しむのはちょっと面白かったですが
(43氏を囃し立てるつもりはないです)、
51氏のような何か煽りた気な書き込みが即座に飛んでくるのもまた
面白いもんですね。スレが荒れて欲しくはないですが。
53デフォルトの名無しさん:2006/03/20(月) 22:38:26
まぁ、パケット定額であることも考えたら、音声チャットなんぞ作られたらたまらんわけでマイクは使わせてもらえないのだ
54デフォルトの名無しさん:2006/03/20(月) 22:41:01
53が良い事言った!
55デフォルトの名無しさん:2006/03/20(月) 22:41:20
>>52
>面白いもんですね。スレが荒れて欲しくはないですが。
どう見てもその気満々です。どうもありがとうございました。

>>53
DoJaの企画を考え出された頃にSkypeのようなものが普及するのは分かってたのか?
それならDoCoMoは天才だなw
56デフォルトの名無しさん:2006/03/20(月) 22:58:38
> DoJaの企画を考え出された頃にSkypeのようなものが普及するのは分かってたのか?

あの当時無かったカメラ機能さえ取り込んだんだから
「考え出された頃」とかいうのはまあハズレだよなあ。

ま、Java で PCM をリアルタイムにエンコードして
いちいち HttpConnection で送信、
逆に HttpConnection で受信してリアルタイムにデコードして
再生、なんてのは今の機体じゃまだ無理だよなあ。
メモリーもきついし。
ハードウェアのコーデックが使えたとしても、良くて音声メールか。
コーデックも機種毎にあわせられるし。
57デフォルトの名無しさん:2006/03/20(月) 23:38:09
>>56
逆側 (HttpConnection で PCM - 一応adpcmで半分にはなってるけど - を途切れなく鳴らす) は
ごく簡単にできるから、連続した音声入力 をサポートしてくれれば端末側はすぐにできると思う。

現状の問題点は通信方式やネットワーク側。ディレイが大きいし昇りの帯域が狭い。
58sage:2006/03/21(火) 11:47:23
NM850iGにはファイルシステムにアクセスできるFileConnectionが実装されているよう。
でもJ2MEのそれとは違いjp.co.access.conections.FileConnectionってクラス。
JV-Lite2のオリジナルっぽい。
FileConnectionにどんなメソッドがあるか調べたいんだけど、どうしたらいいものか?
Dojaではリフレクションとか使えないしな・・・。
59デフォルトの名無しさん:2006/03/21(火) 12:55:13
ヒント:あきらめる
60デフォルトの名無しさん:2006/03/21(火) 16:14:45

ゲーム中の状況を逐次サーバへ転送するアプリを作ってます。

メインスレッドでゲーム、サブスレッドでは1秒間隔でサーバへデータを転送してます。
このサブスレッドが con.connect() を行った瞬間、メインスレッドが一瞬硬直するので
困ってます。

ガベージコレクタ周りがあやしいとおもい、メインスレッドを極度にシンプルにして
やってみたのですが残念ながら解決せず、原因は別にあるようです。
これは仕様なのでしょうか?

以前、DoJa3.5で作ったときは こんなこと起こらなかった気がするので、
とりあえずDoJa3.5で挑戦してみますが、本質的な解決方法ご存知の方いらしたら、
ご教授いただけると助かります・・・。

[環境]DoJa 4.1
[実機]SH902i
[通信手段]post
61デフォルトの名無しさん:2006/03/21(火) 16:35:31
>>60
続報、同じプログラムを SH900iで動かしたら 大丈夫でした。
SH902i独特の問題の可能性が微妙に浮上 orz
62デフォルトの名無しさん:2006/03/21(火) 16:48:35
ヒント:cpuは1個
63デフォルトの名無しさん:2006/03/21(火) 17:03:36
>>60
>メインスレッドでゲーム、サブスレッドでは1秒間隔でサーバへデータを転送してます。

お前は二度とアプリ作るな。
64デフォルトの名無しさん:2006/03/21(火) 17:13:00
では、ゲーム中の状況を逐次サーバへ転送するアプリを作らなければならないとき、
>>63ならどうやる?
65デフォルトの名無しさん:2006/03/21(火) 17:21:01
1秒間隔ではなく、必要な時に送る。
無駄なサーバー負荷になって迷惑。
66デフォルトの名無しさん:2006/03/21(火) 17:46:43
や、その必要な間隔が一秒ってことじゃないの?
67デフォルトの名無しさん:2006/03/21(火) 17:50:24
つまりMMOのようなネトゲは無理というわけだ。
つか、パケホ使ってないとあっという間に数万円行きそうだなw

でも、そういうアプリが増えたら負荷減少のためにDocomoが制限かけそう
68デフォルトの名無しさん:2006/03/21(火) 17:52:32
>>60
話ずれた。通信間隔は今回はどうでもいい
API実行したときに、全スレッドがブロックするのは端末の依存だと思うよ
別スレで実行したImageの作成も、端末によっては他のスレッドが停止することもあるし

別にマルチスレッドは並行進行はするが、ブロッキングしないことを保障する
ためのもんじゃないしな
69デフォルトの名無しさん:2006/03/21(火) 18:51:15
>>64
1秒間隔でサーバーと同期をとるのが必須なアプリを、携帯電話アプリとして企画した段階で正気じゃない。

生身で空をとばにゃならんとき、どうする?って聞かれても、生身で飛ぶな。そんな状況になるなとしか言えん。
70デフォルトの名無しさん:2006/03/21(火) 20:06:16
http://www.nttdocomo.co.jp/p_s/imode/java/index.html
ここの
DoJa-1.0プロファイルのAPIリファレンス落としてきたのですが
音楽を再生したいのですが、再生できる形式についての記述が見当たりません。
どのような形式のデータを再生出来るのでしょうか?
71デフォルトの名無しさん:2006/03/21(火) 20:34:15
>>70
503とかのアプリを作るんでなければ、今なら3.5あたりからのリファレンスでOK
むしろ4.1とかでもいいかもしれない。

んで、参照する資料はそこのURLの
iアプリコンテンツ開発ガイド for DoJa-4.x 詳細編
って奴で、
4.4 マルチメディアデータの使用
あたりを読んでみるといいかも。
7260:2006/03/21(火) 21:26:26
>>62-69
色々ご意見ありがとうございました。
試行錯誤した結果結局現状はダメです。
調査の結果、
・FOMA900iシリーズはネットワーク用とアプリ用でCPUが2個ある
・902iはマルチタスクCPUということで1チップ
ということのようです。

ココのアドバイスも個体差問題という感じだったので、
仕様という事であきらめました。ゲーム設計のほうでイライラしないように
調節してみます。この問題ばかりやってらんないし・・。

あ、そうそう、作っているのはお察しのとおりMMOです。
73デフォルトの名無しさん:2006/03/21(火) 21:43:40
> ・FOMA900iシリーズはネットワーク用とアプリ用でCPUが2個ある
> ・902iはマルチタスクCPUということで1チップ

・「アプリ用」って書いてる。
・「マルチタスク」はちょっと話がずれてる。

まあ、片付いたみたいだし。がんばれ。

暇ができたら、易しいCPUの本とかOSの本とか読んだらいいよ。
74デフォルトの名無しさん:2006/03/21(火) 23:08:07
そもそもCPU2つ乗ってるのってSH900だけじゃなかったっけ?

どちらにしても>>68のブロッキング云々のトコが
アプリじゃどうしようも無いんだろうけど。
75デフォルトの名無しさん:2006/03/22(水) 00:34:54
76デフォルトの名無しさん:2006/03/22(水) 10:31:09
しかし携帯ゲーやってるといかにゲーム業界人が無能かがわかるな(´・ω・`)
何が携帯にできるのか調べたり理解したりする能力が無いのと、
仕様変更を繰り返しながらじゃないと完成させることができない計画性の無さ。
505あたりじゃ容量的に仕様変更で作り直しもありうるし。

どうしてゲーム会社が利益出せないのかわかるよ。
77デフォルトの名無しさん:2006/03/22(水) 10:39:21
ワナビーが何か言ってます。
78デフォルトの名無しさん:2006/03/22(水) 11:29:37
ほんとうはゲーム会社に行きたかった人なんだよ。
そっとしといてやれ。
79デフォルトの名無しさん:2006/03/22(水) 16:19:49
NソフトのGCの問題は902では解決していますか?
80デフォルトの名無しさん:2006/03/22(水) 17:33:59
F503i世代のADPCMに対応した機種から対応したいのですが
CDの楽曲、約2分半の曲を、iアプリで鳴らしたいのです。
どんなに音質を落としてもかまいません。
可能でしょうか?
iメロディーの形式しか鳴らせないと思うので、ADPCMに仕込むしか無いとは思うのですが・・・。
81デフォルトの名無しさん:2006/03/22(水) 18:06:10
N900シリーズって、MediaImage#useでメモリーエラーになると
catch(Error e)
でキャッチできない気がするのですが、同様の現象起こってる方いらっしゃいませんか?
catch(Throwable t)
ですら無視されてそのままアプリがαエラーになります。
82デフォルトの名無しさん:2006/03/22(水) 18:07:25
mp3で2MBになるデータを10KBまで圧縮します。
さて、どうなるでしょうか?
83デフォルトの名無しさん:2006/03/22(水) 18:21:12
>>80
10k*Nごとに分割。
1ブロック再生中に、次のブロックをダウンロード
ネットワークの状態が悪くなれば、もちろん音は切れる。
それでもかまわないなら、可能。
音質は、携帯の機種依存だ。
iメロディーのADPCMはあくまで、音色データで
それに音階をつけて演奏する為のもので、音楽そのものを入れるものではないのだが・・・。
可能かと問われれば可能だ。
84デフォルトの名無しさん:2006/03/22(水) 18:42:12
ADPCMの、最低の
8Khz、4bit、モノラルでも
4KB/秒だ。
最悪な再生環境を我慢できるなら不可能と言うわけではないが、もはやこれは再生環境とは言えない。
85デフォルトの名無しさん:2006/03/22(水) 19:01:33
いっとくけど10k丸々使えるわけじゃねぇぞ?
アプリのファイルサイズは勿論だが
随時ダウンロードしながら再生だったら、今再生中のブロックと、ダウンロード中のブロックが無いとダメだし
音切れなくすなら、更にバッファブロックが欲しいところだが・・・。
んな事やってたら、無理だろうなw
86デフォルトの名無しさん:2006/03/22(水) 21:44:04
初心者な質問でゴメン。
例えば以下の感じで連鎖するクラスがあったとして、

class hoge {
public hoge () {};
public hoge next;
}

hoge a = new hoge();
hoge b = new hoge();
hoge c = new hoge();
a.next = b;
b.next = c;
c.next = a;

こんな感じで1回転させた上で〜
a=null;
b=null;
c=null;

初期化してみますと。
この状態でgc呼んで、ちゃんとメモリ開放されますか( ゜д゜)ノ?
されるよね? されるよね??
87デフォルトの名無しさん:2006/03/22(水) 21:58:39
けいたいのじーしーはけいたいのきぶんがいいときによばれます。
88デフォルトの名無しさん:2006/03/22(水) 22:04:34
>>86
そういう設計にする時点でどうかと思うが、いちおう解放はされる。
コンパクションされるかどうかは実機しだい。特にN/Pは糞
8986:2006/03/22(水) 22:26:29
>>87,88
レスありがと。
一回転することは滅多に無いと思うんですが、
サーバ側のデータの都合長いリストになりそうで。
86がOKなら、長いリストの先頭のみ参照切れば、
全部開放されるだろうと思った次第です。

安心しますた(´・ω・`)
90デフォルトの名無しさん:2006/03/22(水) 22:47:22
>>81
Out Of Memory(short of frame buffer).のこと?
あれだけ例外のクラス名がでないのはなんでだろう?
91デフォルトの名無しさん:2006/03/25(土) 12:17:11
プログラム初めてなんですけど、iアプリ作成にも使いやすいエディタでお勧めってありませんか?
Eclipseが結構重たくて・・・・

ビルドとかは普通にDojaでしようと思ってるので、シンプルなエディタを探してるんですけど・・・
92デフォルトの名無しさん:2006/03/25(土) 12:27:20
メモ帳
93デフォルトの名無しさん:2006/03/25(土) 14:11:39
Eclipseが重い?

会社で派遣社員用のPCがなくて、
Pentium2-233(だったかな?)を使っててもらったことあった。
それでもEclipse上での作業には支障はきたしていなかったようだが、それ以下のスペック?



どんなスペックでやってるの?


94デフォルトの名無しさん:2006/03/25(土) 14:18:22
>>93
>それでもEclipse上での作業には支障はきたしていなかったようだが
いや、本人の本心は、尋常ではなかったと思われw
95デフォルトの名無しさん:2006/03/25(土) 14:40:07
>>91
もうVisualStudioでいいんじゃね?。ただになってるし
96デフォルトの名無しさん:2006/03/25(土) 14:53:50
ペギー、禿丸、テラパッド。

まぁそのへんじゃない?初めてなら寧ろメモ帳を奨めるけど。

Eclipseは重いっつーか結構メモリ食うな。
97デフォルトの名無しさん:2006/03/25(土) 15:35:28
>>94

え、そうなの!? 悪い事した(笑)
98デフォルトの名無しさん:2006/03/25(土) 15:54:32
>>95
VSって、Java対応してたっけ?
入力支援とか色分けとか、簡単なデバッグとか出来ないなら、統合開発環境として使えない気が・・・
単なるエディタとして使うなら、さくらエディタを俺は推すかなぁ・・・
99デフォルトの名無しさん:2006/03/25(土) 19:19:44
>>98
Eclipseが重くて嫌で代替テキストエディタ探してるんだから、
VS+Javaに統合環境の機能を期待するな、と言いたいw
またEclipseが重いならVSでも重いかもしれないが。

ちなみに色訳はレジストリとUSERTYPE.DATにキーワードと拡張子追加すりゃjavaでも可能
入力支援は無理だけど
100デフォルトの名無しさん:2006/03/25(土) 19:22:47
>>98
連投スマン
あとVSをテキストエディタとして使うとしても、プロジェクト管理と
複数のソースに跨る一括置換や一括検索機能はそのまま使える、
並のテキストエディタよりはマシだと思う

オレは一時期この環境を構築にビルド用makefileをjavacにして使っていた
101デフォルトの名無しさん:2006/03/25(土) 23:11:25
meadow
102デフォルトの名無しさん:2006/03/25(土) 23:34:32
たしかにEclipseが重かったら
Meadowでも使ってればいいのに
103デフォルトの名無しさん:2006/03/25(土) 23:40:51
つーかみんなはEclipseなの?
104デフォルトの名無しさん:2006/03/26(日) 00:14:54
Eclipse 使ってる。
ケアレスミスはできるだけ減らしたいし。
105デフォルトの名無しさん:2006/03/26(日) 00:33:36
antで充分。
106デフォルトの名無しさん:2006/03/26(日) 00:40:39
俺Eclipse。慣れると馬鹿になりそうなくらい楽に作れる。
VisualStudioでC++を開発するよりも至れり尽くせりな気がする。

xyzzyをサブエディタに使ってるけど、殆ど文章用だなあ。
107デフォルトの名無しさん:2006/03/26(日) 01:34:36
俺もEclipse。
WebもEclipse。
SWTもEclipse。
108デフォルトの名無しさん:2006/03/26(日) 07:05:14
みんなEclipseか。すげーなぁ。
プリプロセッサとかついてる?
純正JAVAじゃ容量食いすぎて仕事に使えないんだけど…。
109デフォルトの名無しさん:2006/03/26(日) 10:01:51
EclipseとPDF資料を開けるとHDDが騒がしくなる…
起動が糞遅いのはなんとかならないかな
110デフォルトの名無しさん:2006/03/26(日) 10:03:28
みんなじゃないぞ、Eclipse使ってるって言わないと
プロの技術者っぽく無くて、「技術ねー奴は引っ込んでろよpgr」
って言われて肩身の狭い思いをしそうだから
秀丸とプリプロセッサ使って#ifdefだの#defineだの入った
Java?ソースを書いてるって言わないだけだヽ(`Д´)ノ

ゲーム屋のクズ企画屋は調整とかいいながらガンガン仕様変えるから、
100kになってもある程度余裕残しておかないとどうしようも無くなるし。
111デフォルトの名無しさん:2006/03/26(日) 10:12:31
Eclipseでのプリプロセッサの入れ方が分かりません><
112デフォルトの名無しさん:2006/03/26(日) 10:26:48
>>110 もし#ifdefと#defineのためだけにプリプロセッサ使ってる
んだったら、「技術ねー」っていわれてもしかたねーよ。
113デフォルトの名無しさん:2006/03/26(日) 10:33:15
>>111 プロジェクトのプロパティ。でもcppなんかを前提にすると
当然Javaエディタでまともに編集できなくなるから、気をつけること。
114デフォルトの名無しさん:2006/03/26(日) 10:39:14
>>112
結果として勘違い君しか書き込めなくなるから下手に煽るなw
115デフォルトの名無しさん:2006/03/26(日) 10:57:09
プリプロ関係は話がループするからな。
116デフォルトの名無しさん:2006/03/26(日) 15:27:09
includeと定数defineだけつかえりゃいいです。
117デフォルトの名無しさん:2006/03/26(日) 15:47:24
はいはいループループ。
118デフォルトの名無しさん:2006/03/27(月) 01:43:57
エディットするのは元ソースなんだし
cppが吐いたソースは気にしないから問題ない

119デフォルトの名無しさん:2006/03/27(月) 08:58:04
ところで>>81 >>90 ってマジ?
持ってないから確かめられない…
120デフォルトの名無しさん:2006/03/27(月) 10:09:47
>>119
マジ。
121デフォルトの名無しさん:2006/03/27(月) 11:42:41
マジかよ(;´Д`)
解決法ある?
122デフォルトの名無しさん:2006/03/27(月) 12:33:56
メモリをいっぱいにしない。
123デフォルトの名無しさん:2006/03/27(月) 12:35:59
n900は対象外って書く
124デフォルトの名無しさん:2006/03/27(月) 12:50:57
>>110
xyzzyやemacsで書いてる人のほうがすごく見えるのは気のせいか?
125デフォルトの名無しさん:2006/03/27(月) 17:40:52
メモ帳のほうがすごい
126デフォルトの名無しさん:2006/03/28(火) 01:03:58
まぁ企画の規模と自分の持ってるリソースによるだろ。

場合によっちゃコピペだけとかw
127>>1は妹に恋をする:2006/03/28(火) 03:16:05
>>107

> SWTもEclipse。

他に選択肢があるんかw
128デフォルトの名無しさん:2006/03/28(火) 17:38:56
初心者です
3行目のconnectで止まってしまうのだが誰か助けて

http = (HttpConnection)Connector.open(
"http://localhost/Test/bin/images/title.gif", Connector.READ);
http.setRequestMethod(HttpConnection.GET);
http.connect();
contentLength = (int)http.getLength();
129128:2006/03/28(火) 17:40:50
ちなみにtitle.gifは
C:\iDKDoJa4.0\apps\Test\bin\images\title.gif
に置いてあります。

130デフォルトの名無しさん:2006/03/28(火) 17:54:48
>>129
画像をresってフォルダに放り込んでみ
131デフォルトの名無しさん:2006/03/28(火) 18:06:00
F900って、特に何もしなくても、次のrepaint処理までに40〜70o秒ほどかかるんですが、
そういうものなんですか?
132128:2006/03/28(火) 18:06:22
画像をresに移して

http = (HttpConnection)Connector.open(
"http://localhost/Test/res/title.gif", Connector.READ);

ってやりましたが駄目でした
http.connect();
から帰ってこなくなり、10秒後ぐらいに例外を出します
133デフォルトの名無しさん:2006/03/28(火) 18:07:49
>>132
せめて、「エラーメッセージは何が出てるのか」くらいは
自力で調べる努力はした方がいいぞ・・・してないならする癖をつける。
してるならこう言うエラーでと書くべき。

次にヒントだしてあげとくから考えてみればいい。
以下開発ガイドより。つか読んどけ。
---------------------------------------------------------------------
HttpConnectionに渡すURLには、次の制約があります。
? IPアドレスはシンボリックでなければなりません("www.nttdocomo.co.jp"など)。
 HttpConnectionでは、数値IPアドレス("127.0.0.1"など)は使用できません。
? HttpConnectionに渡すURLのプロトコル、ホスト名、ポートは、iアプリの
 ダウンロード元となったURL(ADFのPackageUR Lキーでの指定)と同じでなければなりません。
134128:2006/03/28(火) 18:17:34
>>133
サンキュです
続きは明日します
135133:2006/03/28(火) 18:32:23
>>134
偉そうに言ってしまって反省中、あんまり自信もないしな。
でも開発ガイドは重要なので一度はやる部分に
関係する部分を読んでおくといいよ。

133で言ってるエラーの出力の仕方は判る?
try〜catchで拾うのはわかるよね?
後ね、何がしたくてそう言うプログラムを書いたのかを
言ってくれるとアドバイスのしようもあると思う。

んでローカルにアクセスって出来たかなぁ・・HTTPで。
とりあえず俺が作る時にリソースではなくネットに
アクセスすることが前提なら実際にネット上にデータを
おいてエミュからアクセスするようにしてるからね・・・。
ここで良くエミュのネット設定をし忘れてミスったりするがw
136デフォルトの名無しさん:2006/03/28(火) 18:41:44
>>128
当たり前のことでかえって忘れてるかもしれないが、
webサーバを立ち上げないと通信しようがないよ。

エミュレータの 設定−ネットワーク設定 の ADFのURL
もlocalhostのディレクトリ構成に合わせて設定する。
137デフォルトの名無しさん:2006/03/28(火) 18:43:41
今初心者スレって無いんだっけ?
138136:2006/03/28(火) 18:47:23
というか128さんはちょっと勘違いしてるっぽいな。

サーバ上の画像ファイルを通信して取得したいなら
webサーバを立ち上げて(localhost)、ダウンロード元となる
ディレクトリに画像ファイル(title.gif)を置く。
C:\iDKDoJa4.0\apps\Test\bin\images\title.gif
に置くのは間違い。

通信ではなくリソースに含めた画像を取得するなら
画像は C:\iDKDoJa4.0\apps\Test\res\title.gif に置く。
そしてもちろん、取得するときの記述は
http = (HttpConnection)Connector.open(〜) ではない。
リソースから画像を取得する場合の記述は開発ガイドや
APIリファレンスにソースが出てるからよく読んで。
139131:2006/03/28(火) 18:54:46
えと・・・スルーされてますが、
drawLineやdrawString系の命令を無くしたら処理速度が倍近くになりました。
イメージ描画よりも苦手な処理なのですかねぇ。
140デフォルトの名無しさん:2006/03/28(火) 18:59:28
>>139
>イメージ描画よりも苦手な処理なのですかねぇ。

そのとおり。
drawLineはともかく、drawStringはアホみたいに重い。

透過させなくてもいいものであれば、いちどImageに書いてそれをdrawImage
するといいですよ。
141131:2006/03/28(火) 19:06:02
>>140
なるほど、そういう手段もあるのですか。
参考になります、ありがとうです。
142デフォルトの名無しさん:2006/03/28(火) 20:55:01
質問です。
どうやら、コンストラクタが呼び出されていないみたいなんです。
初期設定をコンストラクタで済ませようと思ったのですが・・・。

下のようなサンプルでもコンストラクタが機能していないことが分かりました。
どうしたらいいでしょうか。
それとも、私に問題がありますか?

どなたかお答えいただけませんでしょうか。

import com.nttdocomo.ui.*;

public class ibomb extends IApplication
{
   public void start(){
      SampleCanvas c=new SampleCanvas();
      Display.setCurrent(c);
   }
}
class SampleCanvas extends Canvas{
   public int flag=0;
   public void SampleCanvas(){
      flag=99;
      System.out.println("コンストラクタ通過");
   }
   public void paint(Graphics g){
      if(flag==0) System.out.println("おかしい");
      if(flag==99) System.out.println("成功");
   }
}
143デフォルトの名無しさん:2006/03/28(火) 21:25:18
>>142
たぶんタイプミスでただのメソッドになってるんでしょう。
144デフォルトの名無しさん:2006/03/28(火) 21:30:14
>>143
これって、public void SampleCanvas()はただのメソッドではないのでは?
何処にタイプミスが・・・?

何度も確かめたので、それは無いと思うんですが。
14560:2006/03/28(火) 21:51:46
>>128

connect()は接続が完了して、データを受信しきる、もしくはタイムアウトするまで返らないようです。
タイムアウトさせるかどうかは、openメソッドの最後に,trueだかfalseだかで指定できたハズ。

接続できないところへ繋ごうとしていて、APIが必死に繋ごうとしている時間を
止まったと解釈して、アプリを終了してはいませんか?

また、jamファイルのURLと同じサーバにする、もしくはトラステッドアプリにしないとダメです。
(この場合はすぐにエラーで返った気もする・・)
146デフォルトの名無しさん:2006/03/28(火) 21:52:34
>>145
シマッタ!
147デフォルトの名無しさん:2006/03/28(火) 21:57:48
追伸、

webサーバをlisten状態にする場合、127.0.0.1と 192.168.1.10 等は別物として扱われます。
かりに192.168.1.10で待機させた場合、ネットワークからはWebにアクセスできても、
127.0.0.1ではつながらないと言ったことになります。(localhost=127.0.0.1)。

そういったほうの問題で失敗していないだろうか?
148デフォルトの名無しさん:2006/03/28(火) 21:59:17
むーん、日本語が不自由ですがアホなので許してください・・
149デフォルトの名無しさん:2006/03/28(火) 22:03:26
>142
public SampleCanvas(){
}
150デフォルトの名無しさん:2006/03/28(火) 22:03:43
>>144
いいからvoid取れ
151デフォルトの名無しさん:2006/03/28(火) 22:06:46
void ミスは俺もたまにやるw
152142:2006/03/28(火) 22:15:27
voidが付いてたら駄目なんですか・・・。
javaはほとんど初めてなんで、Cの感覚で書いてたので盲点でした。
本当にありがとうございました。
153128:2006/03/29(水) 10:37:16
>>135>>136>>138>>145>>147
助かりました。無事動いたようです。

初歩的ですが、Webサーバを動かしてませんでした。

LANでつないだマシンでApacheを動かしてその中にイメージを置き
C:\WINDOWS\system32\drivers\etc\hostsでアドレスを設定して
エミュレータの「設定−ネットワーク設定」のADFのURLを
イメージを置いたフォルダにしたところ動作しました。

154デフォルトの名無しさん:2006/03/30(木) 16:00:14
質問です。

(10×10+5)×110=11550個の整数データがアプリで必要です。
これをすべてアプリに入れても、
プログラムの大きさ的には問題ないと思うのですが
メモリ的には問題はありませんか?

505i以降を対象にしようと考えています。
なお、現在はほとんどメモリは使っておりません。
155デフォルトの名無しさん:2006/03/30(木) 16:12:38
>>154
ソースコード内に配列で書くと問題になる。
バイナリにしてresに入れて、Connectorで読み出すようにしたほうが無難なんだけど
ただ505だとjarサイズ制限でやはり厳しいのではなかろうか。

整数がintかbyteかによっても違ってくるけど、
となるとHTTPダウンロードくらいかな。
156デフォルトの名無しさん:2006/03/30(木) 18:10:00
質問させてください。

Phone.getProperty(Phone.USER_ID)が返す、
FOMAカードの個体識別情報を表す文字列は、
どのような文字が使われる可能性があるか、
ご存じの方はいらっしゃいませんでしょうか?

自分なりに調べた結果「20桁の英数字」である事は分かりましたが、
自分の端末、及び友人の端末では「19桁の数字+"f"」としか
返ってこないのでイマイチ確証が持てずにいます。
アルファベットはどこからどの範囲が使われるのか、
また、小文字のみなのか大文字小文字両方なのかが知りたいです。
157デフォルトの名無しさん:2006/03/30(木) 20:13:34
>>154
たかだか40kバイトくらいで落ちないでほしいとは思う。
158154:2006/03/30(木) 22:43:03
整数はbyteでことが足ります。
これなら、11kbなんですが、これでもやはりつらいですか?
159デフォルトの名無しさん:2006/03/30(木) 22:56:04
>>155
頭良いな、基本?
160デフォルトの名無しさん:2006/03/30(木) 22:56:31
>>154
メモリメモリメモリじゃなくて、
ヒープとSPとアプリサイズに分けて考える。

まずJavaはbyteでもint型で定義されるから
ヒープは45KB消費される。
505のヒープは最低で1500KB程度。
少ないかどうかは自分で考えろ。

アプリサイズはzip圧縮されるのでわからんが、
30KBしかないので普通に考えりゃSPに追い出すべき。

SPに関しては他と相談で合計200KBまで。
バイナリで普通にデータパケットすれば11KBなんだろうが、
文字列のカンマ区切りしたら数倍になるだろうな。

メモリを殆ど使ってないとか言ってるけど、
それがわかってるなら何がわからなくて質問してるのかを聞きたい。
161デフォルトの名無しさん:2006/03/31(金) 05:01:42
超アホな質問で申し訳ないが。
eclipseって使ったほうがいいの?
doja3.5使ってるからeclipse2.xしか動作保障されてないんだが。
で、ざっと見たらeclipse2.x手に入らないもんだから。
もしeclipse使うべきなら、doja4.0にしようかとも思ってるんだけど。

今はテキストエディタ使ってるんだけども。
ぜんぜんプログラムに関係ない事で申し訳ない(´・ェ・`)
162デフォルトの名無しさん:2006/03/31(金) 05:09:05
>>161
別にすれ違いでは無いのでわ。

Eclipse 2.1に対しても、 DoJa3.5のeclipseプラグインは追加可能。
3.1でもDoja3.5のプラグイン使用可能。

あと、2.1が手に入らないってこと無いはずだが。。
163デフォルトの名無しさん:2006/03/31(金) 09:49:20
>>158
Javaのバイトコードを追うとわかるんだけど
  byte[] array = new byte[] { 0x10, 0x11, ... };
という配列の初期化は、内部的に
  byte[] array = new byte[10];
  array[0] = 0x10;
  array[1] = 0x11;
  :
  :
こう展開されるから気をつけろ。
164デフォルトの名無しさん:2006/03/31(金) 10:50:45
>>158
byte型でいいならJar圧縮してSPに入れる方法がお勧め。
データ本体の容量(JavaVMの内部表現ではなく)は圧縮なしで約12kB。圧縮したら10分の1くらいになるから(ヘッダの容量を考えて)多めに見積もっても3kB。
165デフォルトの名無しさん:2006/03/31(金) 11:37:19
>>161
プラグイン無いと出来ないのはEclipse上からのコンパイルとデバッグのみ。
無くてもエディタ上でエラーチェックしてくれるのでバグは減らせるから、
とりあえず使ってみれば。

3.1用のプラグインはコンパイル方法も調べれば出てくるし、
3.1使って困るって事も特に無いと思う。

使うべきかどうかは兎も角、使えれば便利ではあるよ。
166154:2006/03/31(金) 11:44:45
SPから、読み込む形にすればいいのですね。
ありがとうございました。
これを参考にデータ格納をやってみたいと思います。
167154:2006/03/31(金) 11:52:24
とおもったのですが。
よくよく考えれば、いったん、スクラッチパッドに入れないといけないんですよね。
ということは、リソースから読み込んだほうがいいのでは?
168デフォルトの名無しさん:2006/03/31(金) 12:06:01
>>167
リソースに突っ込んでもアプリ本体のサイズに問題なければ、リソースの
方が楽だね。
ただ、SPから読む(SPになければサーバから落として書き込む)仕組みは
汎用的に使うものだから、一度作っておいたほうがいいかも。

どちらにせよ、読み込むデータは別のツールで吐き出しておく必要がある。
169デフォルトの名無しさん:2006/03/31(金) 13:47:03
仕事で作ってる奴だとリソース部分ってのはアプリ容量減るから
頭が自動的に使うことを拒否するんだろw
170デフォルトの名無しさん:2006/03/31(金) 13:58:21
>>169
そうでもない。

たとえばプログレスバーとかメーカーロゴとか、SPにダウンロード
するよりも前にちょっとした絵を表示させたいときに使うこともあるし、
SP容量はいっぱいだけどアプリ容量はまだ空いてる、なんてことも
たまにある。
171デフォルトの名無しさん:2006/03/31(金) 14:12:55
>>169
仕様変更が怖いから、
出せるものは出しとくって判断してるのは否定しないがな〜

iアプリばっか作ってると、Windows環境に移った時に
メモリ節約考える自分を見つけて鬱になれるな。
何だよ、メモリほぼ無限にディスク4.7GBって。
172デフォルトの名無しさん:2006/03/31(金) 18:24:53
無理にメソッド名を短くしたりメンバを直接参照したりnewするのに一瞬ためらったり
173154:2006/03/31(金) 18:58:23
では、リソースから読み込むように考えます。
(ダウンロードは避けたいので)
どうもありがとうございました。
174161:2006/03/31(金) 19:13:36
>>162
>>165

こんな質問「使ってからきけボケェ!」位言われるかと覚悟したんだけど。
めちゃ親切(゚Д゚;)
本当にありがとう!

ではとりあえず使ってみます!
175デフォルトの名無しさん:2006/03/31(金) 21:52:34
SPの読み書きの速度ってどんなものなんでしょうか?
メインメモリ並の扱いをしても問題ないのでしょうか?
176デフォルトの名無しさん:2006/03/31(金) 22:48:59
>>175
だめ。
177デフォルトの名無しさん:2006/03/31(金) 22:50:20
だめ。そんなに速くない。
でも死ぬほど遅くはない。
178154:2006/03/32(土) 00:51:58
下のように組んでみたのですがうまくいきません。(具体的には何も表示されません。)
何が悪いのでしょうか。

import com.nttdocomo.ui.*;
import java.io.*;
import javax.microedition.io.*;

public class filetest extends IApplication
{
  public void start(){
    ResCanvas c=new ResCanvas();
    Display.setCurrent(c);
  }
}
179154:2006/03/32(土) 00:52:44
class ResCanvas extends Canvas {
  public void paint(Graphics g){
    //読み込んだデータを格納する為の配列
    byte[] ldByte = new byte[50];
    //InputStreamクラスの参照を宣言
    InputStream in = null;
    try{
      //接続
      in = Connector.openInputStream("resourse:///test.txt");
      //データの読み込み
      for(int j=0;j<=ldByte.length-1;j++){
        ldByte[j]=(byte)in.read();
      }
      //接続の解除
      in.close();
      in = null;
    }catch(Exception e){}
    //文字に変換して表示
    System.out.println(new String(ldByte));
  }
}
180デフォルトの名無しさん:2006/03/32(土) 01:09:05
>>179
Canvas#paint()が再描画の度に呼ばれるってこと分かってる?
お宅は再描画の度に毎回JARリソースから読み込みますか。

あと、画面の描画はSystem.out.printlnではなくて、Graphics#drawStringだ。
とりあえずAPIリファレンス読め。
181154:2006/03/32(土) 01:21:42
>>180
いや、これはテストですので・・・。
とりあえずで作成したものです。
もちろん、paintに入れてはいけないのはわかっているのですが。
テストで、System.out.printlnを使用したのは
別に、携帯の画面に書かなくてもいいかとおもったからです。

それでも、System.out.printlnが機能していませんし
このプログラムがなぜ動かないのかが理解できなかったので
こちらで質問いたしました。
182デフォルトの名無しさん:2006/03/32(土) 01:41:33
>>154
×resourse
○resource

だから理解してないならエラー処理に手を抜くなと(ry
183154:2006/03/32(土) 01:44:59
>>182
すみません。
うまくいきました。
つづりミスなんて考えもしなかったので・・。
エラー処理手を抜いてしまったのは確かにいけませんでしたね。
反省します。
184デフォルトの名無しさん:2006/03/32(土) 15:40:26
iアプリでcgiって動く?
185デフォルトの名無しさん:2006/03/32(土) 15:41:48
無理
iアプリには標準入力の概念が無いから。ついでにHTTPサーバ機能も無いけどな
186デフォルトの名無しさん:2006/03/32(土) 15:44:33
鯖において通信するんならできる
187デフォルトの名無しさん:2006/03/32(土) 15:45:04
>185
スマヌ

じゃあiアプリで田代砲は?
188デフォルトの名無しさん:2006/03/32(土) 15:46:08
作れるだろうが保証はできない、いろいろな意味で
189デフォルトの名無しさん:2006/03/32(土) 15:49:26
確かにな

たぶんレンタル無料鯖とかだったらID削除の危機w

190デフォルトの名無しさん:2006/03/32(土) 15:51:45
アプリ作っててエラーで「識別子がありません」
とか出るんだがどういう意味だ?
191デフォルトの名無しさん:2006/03/32(土) 16:36:19
識別子が無いって事だろ
192デフォルトの名無しさん:2006/03/32(土) 16:44:08
識別子って何すか?
193デフォルトの名無しさん:2006/03/32(土) 18:09:14
そんなエラーぽいの初めてみるな
というか何が出してるかぐらい書けないなら回答は期待するなって
俺としては「ウィルスにでも犯されてんじゃね」ぐらいしか言えんw
194デフォルトの名無しさん:2006/04/02(日) 01:29:45
>>192
identifierの和訳。
ようするに名前だ。
変数名とかクラス名とか。
195デフォルトの名無しさん:2006/04/02(日) 03:13:18
つーか、JAVAのエラーだからスレ違い
196デフォルトの名無しさん:2006/04/02(日) 11:10:07
情報の小出しをする奴はスルー
197デフォルトの名無しさん:2006/04/02(日) 11:58:04
怪しいところを張ればまともな回答があるかもしれない
198デフォルトの名無しさん:2006/04/02(日) 19:46:45
情報の小出しっていうか
適切な情報を出せる人って、そもそも原因特定の糸口がほぼつかめてる人かと
そういう人こそ、ぶっちゃけ質問なんてせずに自力で調べるべきだと思うんだが・・・。出来るはずだし。
199デフォルトの名無しさん:2006/04/03(月) 09:59:42
iアプリ用のポリゴン作りたいんだけど、
どんなソフト使えばいいでしょうか
200デフォルトの名無しさん:2006/04/03(月) 10:08:28
>>199
座標を手打ち


DojaがサポートしてるMascotCapsuleを使いたいなら
↓のサイトにツールのプラグインがあるから見てみるといい。
ttp://www.mascotcapsule.com/toolkit/docomo/download/dj3_plugins.html
201デフォルトの名無しさん:2006/04/03(月) 16:47:38
retroguardの最新版v2.2.0を落として動かしてみたんですが、
v2.0.5と同じようによびだすと、出力されるファイル(out.jar)として
MANIFEST.MFが入っているだけのほとんど空っぽのファイルが出力されます。
似たようなトラブルに遭った方、いますか?
202デフォルトの名無しさん:2006/04/03(月) 17:00:17
>>201
retroguard使用時のログはどうなっていますか?
203デフォルトの名無しさん:2006/04/03(月) 17:16:47
自己解決しました。v2.2.0では.options Trimがデフォルトになっており、ここが
v2.0.5と動作が異なるようです。
とりあえず解決方法としては、script.rgsとして
.option Applet
.option Application
.option Serializable
.option RMI
.option RuntimeAnnotations
.option MapClassString
.option Repackage
.option Generic
というふうに、.options Trimの行を消したものを置いておくと、今までどおりに動作するようです。
(あわてて書いているので何か取りちがえているかも…)
204デフォルトの名無しさん:2006/04/04(火) 09:01:02
すみません、質問です。
今、iアプリダウンロード用HTMLを作成しているのですが、
リファレンスの通りに作成するとHTML画面にリンクのような
形で「ダウンロード開始」などのイベント用テキストが表示
されますが、それをボタンにて表示したいと思います。
どのように定義すればよいのでしょうか・・・
205デフォルトの名無しさん:2006/04/04(火) 10:13:14
>>204
ボタンの画像を用意して、

<OBJECT declare id="test"
data="test.jam" type="application/x-jam">
</OBJECT>
<A ijam="#test" href="notapplicable.html"><img border=0 src="test.gif"></A>

とかでできるんじゃないでしょーか。
206デフォルトの名無しさん:2006/04/04(火) 10:34:41
>>205さんありがとうございます!
しかし、画像ではなく普通のボタン表示をしたいのですが
どのようにすればよいのでしょうか・・・・
207デフォルトの名無しさん:2006/04/04(火) 12:13:34
Web制作板へどうぞ
208デフォルトの名無しさん:2006/04/04(火) 12:51:35
普通のボタンっていったいなんのことだったのだろう…
209デフォルトの名無しさん:2006/04/04(火) 13:26:27
フォームのsubmitボタンのことなんじゃない?
できるのかどーか知らんけど。
210デフォルトの名無しさん:2006/04/05(水) 21:14:18
前スレで「レジストリの設定に失敗しました」というのがありましたが
自分も同じ現象だったのでいろいろ試してみたところログオン先を

NT4サーバーのドメインの管理者からローカルの管理者に
切り替えたらエラーがでなくなりました。
211デフォルトの名無しさん:2006/04/06(木) 23:11:26
キャンバスとパネルを切り替えてアプリを作っているのですが、
キャンバス→パネル→キャンバスと戻ってくるとprocessEventが呼ばれなくなってしまいました。
問題の部分だけ簡単に書いてみたので、どなたかご指導お願いします

yahooのブリーフケースにアップしました↓↓
http://briefcase.yahoo.co.jp/bc/secondhirosi/lst?&.dir=/&.src=bc&.view=l
212デフォルトの名無しさん:2006/04/07(金) 00:08:36
>>211
iアプリの基本。
processEvent内に無限ループ作っちゃダメ。
PanelのkeyReleasedで無限ループ呼んでるのが悪い。

それとCanvasとPanel毎回newしないとダメなの?
Canvasのexe走りっぱなしのようだけど。
213デフォルトの名無しさん:2006/04/07(金) 00:39:30
new使わないでするやり方がわかりません…ORZ

できれば具体的なやり方を教えて下さい。
214デフォルトの名無しさん:2006/04/07(金) 01:10:23
>>213
CanvasとPanelはCorPのstaticなメンバにして
start()かコンストラクタで1回だけnewする。
あとはDisplay.setCurrent()でCorPのメンバを指定すればおk

尚、Panelの方は破棄する事が出来ないから、
レイアウトを変えたい場合はnewで作り直すと吉。
215デフォルトの名無しさん:2006/04/07(金) 01:12:23
N系はPanelが正しく解放されずメモリー食いつづけるから
毎回newしてると即あぼーんだぞ
216デフォルトの名無しさん:2006/04/07(金) 01:27:40
最初にやろうとしたんですが、
static mainCanvas canvas=new mainCanvas();
と書いてもエラーになってしまいました。
オブジェクト変数をstaticにするのってどうするんですか??
217デフォルトの名無しさん:2006/04/07(金) 01:33:24
だからコンストラクタかstart内でnewしろと
218デフォルトの名無しさん:2006/04/07(金) 01:38:13
Javaの基本からやり直し
219デフォルトの名無しさん:2006/04/07(金) 02:07:10
javaをネットで調べなおしたらちゃんと載ってました。
メッチャ馬鹿みたいな質問してたんですね
スマソ
220デフォルトの名無しさん:2006/04/09(日) 02:20:26
DoJa 4.1+マスコットカプセルで作ってるんですが、
アプリ圧縮がどうもうまくいかんとです。

JavaBlender > Transform関連を記述するとダメポ
jarg > 圧縮完了するものの、実機で動かん。

まだ原因特定まで突っ込んで調べていないのですが、
DoJa 4.1+マスコットカプセルで圧縮がうまく行ってる方いらっしゃいますか?


221デフォルトの名無しさん:2006/04/09(日) 10:11:01
>>220
とりあえずできました。8時間も悩んでたのか・・・。

結局、javaBlender諦め、jargでマスコットカプセル周りもうまく行きました。
圧縮の仕方に問題があったような・・?まだ特定できてないんですが、動いた報告です。


44k > 37k です。
222デフォルトの名無しさん:2006/04/10(月) 01:24:05
プログラミングしたこと無い人間が電卓みたいなアプリを作ってみたくて
参考にソースがほしいんだけど
そういうのを公開してる場所ってある?

シューティングとかそういうのは見かけるんだけど…
223デフォルトの名無しさん:2006/04/10(月) 01:30:01
>222
検索サイトgoogleの使い方は知ってる?
"iアプリ" 初めて プログラム
と入れて検索。
224デフォルトの名無しさん:2006/04/10(月) 02:05:07
>>223
ごめんなさい
”初めて”じゃなく”電卓”にしたらそれらしいのが見つかりました。
225200:2006/04/10(月) 14:09:06
フリーのソフトで作ったデータを
MascotCapsuleで使えるようにする方法はありますか
226デフォルトの名無しさん:2006/04/10(月) 14:13:53
フリーのソフトを作った奴に聞いてくれよ(´д`)
227デフォルトの名無しさん:2006/04/10(月) 14:23:38
ttp://www.saturn.dti.ne.jp/~npaka/mascotcapsule/
ここを見る限りだと
以下5つのうちどれかを購入しなくちゃいけないのか

3D Studio Max
LightWave
MAYA
SoftImage
Animation Master
228227:2006/04/10(月) 18:20:10
ttp://www.mascotcapsule.com/toolkit/blender/ja/
blender用のプラグインを発見した
これでやってみる
229デフォルトの名無しさん:2006/04/10(月) 20:20:21
圧縮で悩んでいた奴だが、
結局1〜2割減くらいで落ち着いている。

常用している人もそのくらい?
230デフォルトの名無しさん:2006/04/10(月) 21:04:47
>>229
変数名に長い名前を使っているほど、減少率が高い。
他色々あるが、これが一番でかいと思う
231デフォルトの名無しさん:2006/04/10(月) 21:47:03
>>230

どうもそんな感じだね。
今まで変数名を意識して短縮してたんだけど、そのあたりは気にしなくなった。
これだけでもうれしいかも。
232デフォルトの名無しさん:2006/04/11(火) 00:08:02
ハンガリー記法を遠慮なく使えるしな。
JAVAはハンガリー記法なんて使わない!ってアンチハンガリー派がいるが、class継承なりで役割分担をきちっとできる純粋JAVAと違って、アプリ系ではまだ必須だ。
233デフォルトの名無しさん:2006/04/11(火) 01:30:00
>>232
javaじゃなくて、C言語でもwindows以外の世界ではあの見苦しいハンガリアン記法
は使わない。
あの汚い書き方はwin3.1までの、ロングポインタだのショートポインタだの
混在していた為間違わないようにするための苦肉の策。
まあ、個人で書くコードは好きにすれば良いが、あれを広めようとしたりすると
能力疑われる(他の世界を全然知らないと思われる)から気をつけた方がよいよ。
234デフォルトの名無しさん:2006/04/11(火) 04:58:09
>>232
アプリでも使う理由がどこにもねーよ。
まあ、JAVAとか大文字で書いてる時点で能力の低さは知れる。
235デフォルトの名無しさん:2006/04/11(火) 09:20:01
>>234
大文字小文字で能力を計ってる時点で底が知れる
236デフォルトの名無しさん:2006/04/11(火) 11:22:07
まさにアンチ
237デフォルトの名無しさん:2006/04/11(火) 11:22:19
ハンガリー記法なんてしらなかったぜ!

ループのカウンタとかに「int i;」を何故か使用してたのはここから来てるんだな。
独学で勉強してた時からサンプルが総てiだったから自然と自分も使うようになってたな。
ま、知らなくても個人でやる分にはまったくこまらない知識だな。
238デフォルトの名無しさん:2006/04/11(火) 11:35:08
>>237
詳しく。
俺はIteratorの頭文字のiだと思ってたんだが。
239デフォルトの名無しさん:2006/04/11(火) 11:41:34
Integerじゃなかtt(ry
240デフォルトの名無しさん:2006/04/11(火) 12:15:22
>>237
違うよ。あれはfortranの頃の名残り。
fortranは変数名の最初の文字がI〜Nだと整数という決まりがある。
それでループカウンタにはIを使うという習慣があった、それが残った。
241デフォルトの名無しさん:2006/04/11(火) 13:33:37
>>240
その FORTRAN の仕様は、
数式を書くときに配列の添字には i,j,k,l,m,n を使うという
数学の伝統からきたものだけどな。
242237:2006/04/11(火) 13:41:58
ほう、「ハンガリー記法」でググって最初に出てきたページで
iとかの説明もあったけどあれは別の話か。まぁ勘違いだったな。

大分スレの趣旨とはずれてきてるから俺はこれで消える。
マメ知識として結構勉強になったよ。
243デフォルトの名無しさん:2006/04/12(水) 23:01:08
すみません、質問です。今iアプリでパネルに
MediaImage mi = MediaManager.getImage("resource:///login.jpeg");

という背景画像を貼り付け、
その上にログインボタンの画像を貼り付けたいと思っています。
しかし、login.jpegの定義のみだときちんとエミュレータに表示
されるのですが、ボタン画像を定義すると
com.nttdocomo.ui.UIException: Media image is not usable
が発生します。

しかも、パネルを継承したクラスにて画像の位置を指定することは
可能なのでしょうか。。。
244デフォルトの名無しさん:2006/04/13(木) 06:59:21
>>232
この板にもハンガリアン記法スレがあったが、
なぜハンガリアン記法が駄目なのかを延々語り継ぐスレになった挙句、
いつのまにかDAT落ちしている(つーか今紹介しようとして気づいた)。まあそういうことだ。

また、Javaによく似た言語であるC#では、ハンガリアン記法は「禁止」されている。
それもハンガリアン記法を発明し普及させてきた当のMSによってだ。
アンチハンガリー派とか何年前の話よ。既に最大の支持者が裏切ってるのに。

そんなわけで、少なくともJavaでハンガリアン記法を使うのは
どう見てもコーダーとしての資質を問われます。本当にありがとうございました。
スレ違いですまんな。
245デフォルトの名無しさん:2006/04/13(木) 07:18:30
>>244
ハンガリアンスレは、たんなるアンチの溜まり場だったよ。
ところでJAVAやC#は「抽象化ができるから、ハンガリアンが必要ない」んだが、
抽象化なんぞに容量さけない携帯JAVAで、なんでハンガリアン否定すんの?
JAVA言語=ハンガリアン使わない わけじゃないぜ?
246デフォルトの名無しさん:2006/04/13(木) 07:37:07
ハァ?ハンガリアンはいまや屑で糞でみんな使いませんw
使ってると能無しですから
247デフォルトの名無しさん:2006/04/13(木) 08:25:18
なんでおまいらはいつも極端な万能主義者ばっかりなんだ?
何かの方法論をいつも使うか、いつも使わないか二択しかない。
そんなもん場合ごとに使い分けろ。
今時、木の枝をこすって火をおこすやつは居ないが、やり方を知ってれば
必要なときには使える。そんだけの話。
で、携帯JAVAの現状ではハンガリアン表記は使い道がないこともない。
おれは使わんけどな。
248デフォルトの名無しさん:2006/04/13(木) 09:15:54
うそ!?
ハンガリアン記法にそってない引継ぎプログラム(携帯Java)なんて地獄だぜ…。
純正Javaで組まれてる、よっぽど小規模アプリならともかく。

カツカツのゲームになると、マクロやファイルincludeをバリバリ使ってるから、変数定義位置にIDEの機能でジャンプするのも難しいしな。
ハンガリアンが必要ない条件下なら、それは楽だし恵まれてるなぁ。(そりゃ、楽にするために抽象化という概念が導入されたわけだから)


しかし、ここからはハンガリアン自体の話になるが
強く否定するアホアンチほど、抽象化がろくにできてないプログラム組むんだよな…。
クラス使っただけで抽象化したつもりになって、型が変わったら誤動作すんの。
お前それ、型関連性が強いんだからハンガリアンさぼるなよと(´・ω・`)
249デフォルトの名無しさん:2006/04/13(木) 09:34:25
そりゃ今後ずっとメンテ込みで引き継ぐなら、何で書いてたって大変だろうけど、
新機種対応程度の引継ぎなら、機種依存ポイントさえ理解してたら
ロジックの中身なんて弄らんから殆ど理解は不要
250デフォルトの名無しさん:2006/04/13(木) 09:51:35
最近は売り切りより、オンラインでメンテ必須で、追加要素ありが主流だからなぁ…。
昔なら確かに249的で良かったんだけど。
251デフォルトの名無しさん:2006/04/13(木) 10:06:28
移植の時に追加機能とかゲーヲタ業界は好きだからなw
PS2の某SLGの続編で追加機能部分にバグがあったりすると
どこも一緒なんだなーって思う。
252デフォルトの名無しさん:2006/04/13(木) 11:17:29
>>243
すっごいスルーされてるけども・・・やってる事自体は少ないのだから
その部分を抜粋したソースださないとちょっとわからないと思うぞ。
253デフォルトの名無しさん:2006/04/14(金) 08:40:53
スルーされてるのはソース貼るまでもなく原因がバレバレだからなじゃいか?

>com.nttdocomo.ui.UIException: Media image is not usable が発生します。
じゃぁuse()してないのだろう。

>パネルを継承したクラスにて画像の位置を指定することは 可能なのでしょうか
可能ではない。レイアウトやデザインを自由に制御したいならCanvasで。
254デフォルトの名無しさん:2006/04/15(土) 07:47:23
>>243
>パネルを継承したクラスにて画像の位置を指定することは 可能なのでしょうか
やろうと思えばできるぞ。
setLayoutManager(null)して、画像セットしたImageLabelをsetLocationしてやれば。
そうすると全てのコンポーネントをsetLocationしなきゃならんから面倒だけどな。
255デフォルトの名無しさん:2006/04/15(土) 13:50:47
FOMA 901iシリーズに対応したJava仕様「DoJa 4.0」を公開した。って記述してあるニュースサイト
を見たのですが。
P901iTVも最新だけど901だから 4.0対応だと思っていいのでしょうか。
256255:2006/04/15(土) 13:54:48
引き続き調べていたら
http://www.nttdocomo.co.jp/service/imode/make/content/spec/iappli/
で対応表を発見して無事4.0対応であることの確認がとれました
どうもお騒がせしました。
257デフォルトの名無しさん:2006/04/16(日) 22:48:29
現在PanelクラスでImageButtonを使って
ボタンの画像を貼り付けたのですが、
フォーカスが当たった時に違うImageを使って
表示させたいと思っております。
(青いボタンがフォーカスが当たったときに
赤いボタンになるイメージです)

しかし、通常の画像を使用したボタンなら
作れるのですが、フォーカスが当たったときに
他の画像を使用するやりかたがわかりません。
分かる方いらっしゃったらよろしくお願いします。
258デフォルトの名無しさん:2006/04/16(日) 22:59:26
>>257
不可
259デフォルトの名無しさん:2006/04/16(日) 23:06:07
>>257
フォーカスが移動したことを知る方法はない。
PanelとComponentListenerのAPIリファレンス読んでみて。

もともとPanelは見た目に凝ったことをやろうとするクラスではない。
そういうのはCanvasでやる。
260デフォルトの名無しさん:2006/04/17(月) 00:09:05
しかし、とことんPanelの使い道ってないよな。
505より前に、IEMがPanelからしか起動できないから、仕方なく使ってたくらいだ。
261デフォルトの名無しさん:2006/04/17(月) 00:32:19
Eclipse3.1+Doja4.0でアプリを開発中なんだけど
resフォルダの中身がビルドイメージの中に
入ってくれないんだけどなんか設定とかいるの?
それともEclipse3.0+Doja4.0ならいけるとか?
262デフォルトの名無しさん:2006/04/17(月) 02:32:02
初心者で申し訳ないんですが、透過ってのはどこで設定できるんですか。サンプルの画像は
白の部分は透けるんですが、自作の画像と差し換えると白まで表示されるんです。
263デフォルトの名無しさん:2006/04/17(月) 05:18:40
>>261

入る筈。なんか不具合でてるんだと思うよ。
264デフォルトの名無しさん:2006/04/17(月) 08:33:13
>>262
画像作る時に設定するものなので画像作ったソフトによる。
よってアプリは関係ない。
265デフォルトの名無しさん:2006/04/17(月) 12:54:09
>>262
アプリで抜き色カラーパレット指定できなかったっけ?
266261:2006/04/17(月) 23:13:03
やっぱ入らねぇ・・・・・orz
マシン変えてもEclipse入れなおしてもできんわ。
ちゃんとインポートでいれてんだけどな・・・・・
Dojaを4.1のに変えてまた明日やってみるか・・・・・・
267261:2006/04/17(月) 23:41:57
スマン、今できた。
Dojaを4.1のにしたらできたよ。
オレの持ってる機種が901なんで4.0のを使おうとしたんだけど
コレがダメだったみたいだな。
これでやっと開発に戻れるぜぃ。

>>263
サンクスね
268デフォルトの名無しさん:2006/04/18(火) 10:53:28
今Felicaのアプリ作ってるのですがFelicaツールバーを組み込んだIEってのはどうすればできるのでしょうか?
269261:2006/04/18(火) 21:38:26
家のPCではいけるんだけど
会社のPCではやっぱ入らねぇ・・・・orz
EclipseのバージョンもDojaのバージョンもそろえてるのに
なんでこんな違いがでるんだか・・・・・・・
NortonAntiVirusが原因かと思てオフにしてやってみてもできんかった・・・orz
270デフォルトの名無しさん:2006/04/19(水) 08:29:29
質問があります。

AudioPresenterのsetAttributeを使って音量調整しているのですが、
音量を変えても波形データに適応されていないような…。
MIDIはちゃんと音量変わってるんですが。
なにか原因って考えられますでしょうか?

ちなみに2音とも同ポートで再生しています。
機種はSH505iです。
271262:2006/04/19(水) 18:46:52
>>264
そうなんですか。ウインドウズのペイント使ってるんですが、ヘルプをみてやってみた
んですが、うまく透過してくれません。変形の背景色を不透明にするのチェックを外して
その後塗りつぶしで右クリックでできると書いてあるのですができません。どこか間違っ
てるでしょうか。もしくはいいペイントソフトがあれば教えて下さい。
272デフォルトの名無しさん:2006/04/19(水) 18:59:11
IrfanView使ったらどうだ。
273262:2006/04/19(水) 21:52:09
>>272
インストールして見ましたが、高機能すぎていまいち使い方が分かりません。
ペイントの透過の仕方を教えてもらえないでしょうか
274デフォルトの名無しさん:2006/04/19(水) 21:54:30
ソフトウェア板でどうぞ
275デフォルトの名無しさん:2006/04/19(水) 23:28:30
>>271=262
ウインドウズのペイントの透明/不透明について勘違いしてるよ。
あれは透過gifを作ったりするための機能ではない。
ペイント上に別の画像をコピペするときに、その貼り付ける画像に対して
現在の背景色と同じ色を透過させるかさせないかということ。

"透過gif" ツール
といったキーワードでググって適当なツール使うといい。
パレットの特定の色を透明色に置き換えるツールとか、そういうやつ。
276262:2006/04/20(木) 01:23:43
>>275
完全に勘違いしてました。いろいろ調べてやっとできました!ありがとございます。
277デフォルトの名無しさん:2006/04/20(木) 01:27:32
最近iアプリ作り始めて、画像表示したり移動したりスクラッチパッドの使い方とか
一通りできるようになってきたんだけど・・・・ふとヒープメモリのフリーエリア表示させてみたら
カウントダウンするようにどんどん減り続けるんだけど・・。

で、0にもどるとまた最大値にもどってカウントダウン始める、なんじゃこりゃと思って
あれこれ処理を削っていって、最後にはヒープメモリ表示とそれに必要な変数表示だけ
にしたんだけど、それでも同じで減り続ける、環境はDoja4.1+Eclipce3.1。

なぜこうなるのかどなたか教えてくださいorz、エミュってそれともこういうもの?。
278デフォルトの名無しさん:2006/04/20(木) 02:37:02
ヒープメモリ表示のために無駄なStringインスタンスを作り続けてる気がす
279デフォルトの名無しさん:2006/04/20(木) 09:30:05
System.gc()
280デフォルトの名無しさん:2006/04/20(木) 11:29:33
>>277
おれはそう言うものだと思っている。文字表示もそうだけど何かしらやってるだろうしな。
ただ0にはなるまい?それ以前に内部でgc()呼び出されてると思うが。

で、画像の読み込み・解放のやり方が適当だった場合機種によってはメモリの
断片化が進みメモリが足りなくなってきて落ちる事もある。
あと自動でgc()呼び出してるのに頼ってると解放に時間がかかって酷い処理落ちになったりもする。
281デフォルトの名無しさん:2006/04/20(木) 11:51:24
質問なんですが、F900iTでiアプリからBlueToothを使った通信はどのAPIを使うんでしょうか?
というか、そもそもBlueToothは使えない?

赤外線については↓ここやDocomoのAPI資料にも載ってたんですが・・・
http://hs.or.tp/doja/
282デフォルトの名無しさん:2006/04/20(木) 12:00:05
スレのレベルが落ちてきたな。
283デフォルトの名無しさん:2006/04/20(木) 12:25:39
お前の書き込みが一番レベルが低い
284デフォルトの名無しさん:2006/04/20(木) 12:34:42
>>281
むりよん
285デフォルトの名無しさん:2006/04/20(木) 13:08:39
>>281
汚ねぇソース…て思ったら管理者まだ学生か。
286277:2006/04/21(金) 07:53:22
>279
とりあえずこれをメインルーチンの最後に突っ込んだら適当な数値で止まったよ、ありがとう。

>280
エミュの場合ですが、ためしに簡単な文字表示するだけのプログラムにメモリ表示つっこんでも
やっぱり0までカウントダウンずーっと進んで0になったらまた最大値に戻り、また0にを
繰り返すんで、これはもう仕方ない現象なのかなと思いました、そもそもなんで0になってるはず
なのにシステムエラーにならないのかも謎。

ちなみに実機ではある程度まで減り続けて(0になることはない)また回復して
を繰り返してました、下が0になるかならないかの違いですが、でも>279を入れたらエミュと
同じようにある程度のとこでメモリ消費は止まりました。

JAVA自体扱うのも初めてなんですが、Cやアセンブラのように変数やメモリ確保などで
消費した分だけ減り、そこで止まるんだとイメージしてたのですが、JAVAの場合オブジェクトとして
確保した変数をループ内部で使っていると(もちろんループの中で確保はしていない)、そのオブジェクト
がメモリ内部でどんどん複製されて、際限なく減るのかなと思ってしまったのですが、そもそもJAVAV
って適当なとこでメモリの開放を自動で行なうはずなんですよね?。

System.gc()入れないと、どんなに簡単なプログラムに入れてもカウントダウン>また戻る現象は変わらない
のは謎のままなのかな、これ入れなくても消費したメモリ分だけのところで「止まる」というイメージ
通りにはならないのはちょっと気味悪いな。
287デフォルトの名無しさん:2006/04/21(金) 08:00:52
メモリ無くなったら勝手にgc()相当をやるからだろ。
Java勉強した方が良いよ。微妙にCと違うから。
288デフォルトの名無しさん:2006/04/21(金) 09:56:56
メモリ管理に関してはまったく違う
289デフォルトの名無しさん:2006/04/21(金) 10:55:28
微妙にって。。。凄いな。。。
290デフォルトの名無しさん:2006/04/21(金) 11:38:25
>>286
gc()は勝手に呼ばれるがあてにしてると、処理落ちだけでなくメモリが足らなくなって落ちる事もある。
作っているアプリにもよるが停止してもいい瞬間、例えば画面切り替え時やセーブ中〜とか
の合間には自分でgc呼ぶと良い。

メモリの解放も基本は自動で行ってくれるがこれもあてにならないので
解放されて欲しい領域がある場合はnullを入れておく事をお勧めする。
機種によってはメモリの断片化を解消しないものもあるのでデカイ画像を扱う
アプリなどでは読む順番・解放する順番も結構大事とか聞く。


どっかの公式アプリですら「一部の機種では長時間遊んでると落ちる事があります」
みたいな事かいてあったのも記憶にあったようなww
291デフォルトの名無しさん:2006/04/21(金) 12:19:58
たしか天外魔境
292デフォルトの名無しさん:2006/04/21(金) 14:07:54
作ろうiモードコンテンツのサイトがリニューアルされている気がする
293デフォルトの名無しさん:2006/04/21(金) 16:39:13
すいません、Imageの部分描画について確認したいことがあります。
部分描画の手法で、Graphics#drawImage()で部分的に描画する以外の方法があれば知りたいのですが、
例えば、あるImageオブジェクトから、その特定部分をImageオブジェクトとして抽出することは可能ですか?
294デフォルトの名無しさん:2006/04/21(金) 16:44:33
今API読み直してたんスけど、Image#createImage()に、getGraphics().drawImage()で大元のImageを部分描画したImageを渡せばできるかな?
ちょっと試してみます。
295デフォルトの名無しさん:2006/04/21(金) 17:14:38
↑一応可能でした、こんな感じ。

Image img = Image#createImage( x1,y1 );
img#getGraphics()#drawImage( mediaImg#getImage(), x2,y2, x3,y3, x1,y1 );

これで安定して動けば、アプリ容量に少し余裕できる・・・
296デフォルトの名無しさん:2006/04/21(金) 17:25:12
一応というか、それで良いよ。
297277:2006/04/22(土) 15:14:01
>295

うへえええええええええorz。

こんな考え方あるんだ・・・・・、内側のmediaImg.getImage()からの返り値がこうだから、これに渡して・・・
って外側に解釈していくとわけわかんなくなるけど、img.getGraphics()が返す値がGraphics型だから変わりに
そのまんま置き換わっていると考えて左から右に解釈していけばなるほど納得・・・・・、こういう合わせ技
できると結構違ってくるんだろうな・・・・。

これが関数とかじゃなくてオブジェクトって考え方なんだろうけど慣れるまで大変だな・・・、勉強になりました。
298デフォルトの名無しさん:2006/04/22(土) 15:38:05
弱点としては、透明色が効かなくなる。
わかってると思うけど、一応。
299デフォルトの名無しさん:2006/04/22(土) 22:00:37
>>297
ヲイヲイ、C++でも普通に使うだろーがw
つーか構造体に関数ポインタもたせりゃCでもできるぞ。
300デフォルトの名無しさん:2006/04/23(日) 12:17:37
301デフォルトの名無しさん:2006/04/23(日) 14:40:49
はじめまして、Java質問スレから誘導されました。
Java 2 SDK Standard Edition v1.3.0_02 と iαppliTool for DoJa-3.5(FOMA)を使ってjava
を作りました。
java.lang.RuntimeExceptionと java.lang.NullPointerExceptionエラーがでます
なにをどうすればいいのかわかりません。エミュで動かそうとするとこのエラーがでますが
どうしたら動かせますでしょうか
どなたかわかる方、よろしくお願いします
302301:2006/04/23(日) 14:58:47
java.io.IOException: Nosuch resource とjava.lang.NullPointerException
このエラーが今でています
環境設定のミスですか?
303デフォルトの名無しさん:2006/04/23(日) 15:38:33
>>301
ソース見てないから予想で答えるけど、
例えば画像ファイルをresフォルダに入れるの忘れてビルドしてて
その画像を読み込もうとしたら java.io.IOException: Nosuch resource は出る。
読み込めなかったImageオブジェクトを操作すれば
java.lang.NullPointerException は出る。
304デフォルトの名無しさん:2006/04/23(日) 15:41:42
補足。
java.io.IOException: Nosuch resource は「そんなリソースないよ」というエラー(普通に訳せ)。
リソースファイル(画像や音声などのファイル)がresフォルダにないか、
あっても、ソース内でファイル名を間違えて書いているか。そういったところが原因。
305301:2006/04/23(日) 15:49:08
>>303-304ありがとうございます
今見てみます。
画像は確かにビルドしてからつっこみました。しかも中のファイル名も見てみます。
ありがとうございます。かなり助かりました。
306301:2006/04/23(日) 16:04:04
やはり画像のファイル名も合っています。
がjava.lang.RuntimeExceptionと java.lang.NullPointerExceptionのエラーがでます
307デフォルトの名無しさん:2006/04/23(日) 16:20:41
>>306
ソース晒さないと原因は特定できないって
308デフォルトの名無しさん:2006/04/23(日) 18:39:55
>>305
ビルドしてから画像つっこんだんじゃ、
jarに入んないんじゃないの?
309デフォルトの名無しさん:2006/04/23(日) 19:44:48
漠然と例外の名前だけ書いて解決できるわけねーだろ
310デフォルトの名無しさん:2006/04/23(日) 20:11:12
>>306
「合っているのにエラーが出る」じゃなくて、
「何か間違えたからエラーが出た」と、考え方を変えましょう。
311デフォルトの名無しさん:2006/04/23(日) 21:01:26
お前ら、優しすぎてオラ涙が出てきただ…
312デフォルトの名無しさん:2006/04/23(日) 22:54:13
優しい連中だぜ(´ω`)

俺なんて302が書かれる前に301読んだのにな( ゚д゚ )
313デフォルトの名無しさん:2006/04/23(日) 23:01:31
ホント優しいな。
漏れなんか
http://pc8.2ch.net/test/read.cgi/tech/1144627899/391
これしか書いてないのに
314デフォルトの名無しさん:2006/04/24(月) 02:48:46
DoJa4.1のAPI何気なく読んでたら、MediaImageクラスに

[DoJa-4.1 (902i) 以降]
このメディアイメージがベクターグラフィックスである場合は null が返ります。

こんな記述がいっぱい入ってたんだが、
いつのまにDoJaはベクターグラフィックスが扱えるようになったんだ?
なったとしたら、何形式を扱えるんだ?

ちなみに、適当に.swfをつっこんでみたら「対応してない形式だ」と怒られ
315:2006/04/24(月) 09:02:27
Panelでswfに対応予定らしい
316301:2006/04/24(月) 12:12:51
皆さんありがとうございます。
>>308さんのであってました出来ました
初心者に優しいこんなスレを久々に見ました
皆さんホントにありがとうございます
かなり初心者なのでまたわからなくなったら来てみます
317デフォルトの名無しさん:2006/04/24(月) 12:36:53
もう二度と来ないといいな。

でも分からなくなったらまた来い。
318デフォルトの名無しさん:2006/04/24(月) 14:12:27
>>316
べ、別にあんたに優しくしたつもりなんて無いんだからね。
邪魔だったから早くどっかに行ってほしかっただけなんだから。
困ったらまた来る?ばっかじゃないの?
319デフォルトの名無しさん:2006/04/24(月) 14:17:39
すみません、C3DMath#powを使おうかと思っているのですが、
作ろうiモード〜のサイトの技術資料のページの対応表に
C3DMathの記述が見当たりません。

恐らくは高レベル3Dグラフィックスか低レベル3Dグラフィックスだと思うのですが、
どれに該当するんでしょうか?

それとも別のページに対応表があるのかな・・?
320319:2006/04/24(月) 14:31:23
・・・低レベル3Dの方か。
殆ど対応してないしヽ(;´д`)ノ

しゃーない、作るか。_| ̄|○
誰か既存ソースの置き場知ってたら教えてもらえると助かります。
321デフォルトの名無しさん:2006/04/24(月) 23:12:22
>>315
まだパネル使う気なのかww
322デフォルトの名無しさん:2006/04/25(火) 00:19:53
>>320
既存ソースって?

323デフォルトの名無しさん:2006/04/25(火) 10:06:35
powで既存ソースが必要って(;´Д`)
324デフォルトの名無しさん:2006/04/25(火) 11:48:54
ウィルコムのZERO3でiアプリ開発できる?デバックとかコンパイルとか出来る?
モバイル環境で開発したいんですが良い方法ないですかね?
やっぱOSはXPとかじゃないとデバックとか出来ないんですか?
325デフォルトの名無しさん:2006/04/25(火) 11:59:10
それはこのスレじゃなくてPC初心者スレとかで聞いた方がいいぞ
326デフォルトの名無しさん:2006/04/25(火) 12:03:58
そのまえにgoogle先生に聞いた方が良いぞ。
327デフォルトの名無しさん:2006/04/25(火) 14:51:08
3gp形式の音声ファイルをCanvas上で再生することはできますか?
328デフォルトの名無しさん:2006/04/25(火) 15:35:18
WINCEのOSでもIアプリ開発できる?
329デフォルトの名無しさん:2006/04/25(火) 16:00:37
とりあえずsageを覚えてから来い
あと聞く前に一度調べて来い
330デフォルトの名無しさん:2006/04/25(火) 21:38:33
iアプリってマルチスレッド環境らしいけど
なんかrunしたら制御が返ってこねぇよ。
みんなの環境だとちゃんとマルチスレッドで動くの?
ゲーム用にキーリピートイベントを発生させるクラスを
作ったんで試してみようと思ったんだけど、
このままじゃ無駄になりそうだ・・・・・orz
331デフォルトの名無しさん:2006/04/25(火) 22:26:35
>>330


>>326,329
332デフォルトの名無しさん:2006/04/26(水) 01:38:50
>>330
run()するって、、
run()に実装書いてstart()するんだけどw
333330:2006/04/26(水) 21:20:29

  ( ゚д゚ )
_(__つ/ ̄ ̄ ̄/_
  \/    /

  ( ゚д゚)
_(__つ/ ̄ ̄ ̄/_
  \/    /

  ( ゚д゚ )
_(__つ/ ̄ ̄ ̄/_
  \/    /

       ||
       ||
    ( / ⌒ヽ
     | |   |
     ∪ / ノ
      | ||
      ∪∪
       :
      -====-
334デフォルトの名無しさん:2006/04/26(水) 23:55:46
打ち込んでRUN
335デフォルトの名無しさん:2006/04/27(木) 13:22:18
>>334
つ【LOAD】
336デフォルトの名無しさん:2006/04/27(木) 20:50:10
eclipseでコンパイル後に自動でクラス圧縮掛けたいのだけど、
ant以外の選択肢ってある?
337デフォルトの名無しさん:2006/04/29(土) 14:29:27
質問ですorz

Doja3.5環境でプログラム作成してるのですが、一回の通信でダウンロードできる通信量は150kbの
はずですよね?、なぜか50kb近辺で実機だと継続動作できない障害が〜ってエラーが出てしまいます。

エミュでは問題ありません、実機はP700シリーズ、データを読むときはファイルサイズを取得してその
大きさのバッファを確保させてそこに読み込ませてます、150kbと表記はあっても一気にってのは
できないんでしょうか?、分割読み込みさせないとダメ?。
338デフォルトの名無しさん:2006/04/29(土) 17:49:53
>>337
Doja3.5だと、一回の通信で100KBが上限だったと思う。
700だとDoja4.0LEなわけで、もしかしたら20KB上限かもしれん。

いずれにせよ、データは細かく分割した方がいいよ。
339デフォルトの名無しさん:2006/04/29(土) 23:49:24
Java始めてまだ1週間くらいの初心者なんですが、
iアプリでバイブレーションの強さや早さなどは設定できますか?
調べてみたんですけどONOFFしか見つかりませんでした…
340デフォルトの名無しさん:2006/04/30(日) 02:30:58
>>339
速さは自前on/offで。
強さはない。もしかしたら強く感じるようなパターンがあるのかもしれんがw
341デフォルトの名無しさん:2006/04/30(日) 05:07:52
>>339
もしやローター代わりにアプリ開発か?
342デフォルトの名無しさん:2006/04/30(日) 09:53:21
>>337
150kBであっているが、どこで例外が出ているか確認したか?
343339:2006/04/30(日) 10:28:02
>>340
ありがとうございます
>>341
バイブでメトロノーム作れないかと思いまして
344sage:2006/04/30(日) 19:13:50
端末のLEDランプを光らすことってできますか?
また、どのClassでしょうか?
345デフォルトの名無しさん:2006/04/30(日) 20:31:12
>>343
それなんて放電器?
346334:2006/05/01(月) 09:54:04
com.nttdocomo.opt.ui.PhoneSystem2
このClassの90X・70Xシリーズの最新型番の対応表などの
仕様書ってどこかにありますか?
docomoにはみあたらずでorz
347デフォルトの名無しさん:2006/05/01(月) 09:54:29
1

348337:2006/05/01(月) 18:50:10
>338

分割するとうまくいきました、現状分割するほうがいいみたいです、ありがとう。

>342

プログラム自体は変更させずに40kbのファイルだと問題なくて、70kbになると通信を開始
だか通信中だかのあたりでエラーになってしまうので、ファイルサイズの問題なのかなぁと、
実機は友人の手元にあるのでトレース情報とかまでは見れてません、まさか16bit=65535byte
までしか一回で通信できないとかあるのかな・・・、別の問題なんだろうか、とりあえず分割で
回避しておこうと思います。
349デフォルトの名無しさん:2006/05/01(月) 19:50:20
サーバ側は?
350デフォルトの名無しさん:2006/05/01(月) 20:10:42
>>348
read()は必ずしも一度にファイル終端まで読み込むとは限らない。
1回のread()で済まそうとしてるのが原因ではないかと思うんだが。
while()で回しながらバッファに読み込んでいく方法はやってみた?
ファイルを分割する必要が無くなるし、試してみる価値はあると思う。
351デフォルトの名無しさん:2006/05/02(火) 00:24:33
少なくともDocomo機種は、全部read1回読みでOKだよ
352デフォルトの名無しさん:2006/05/02(火) 02:10:37
そうなのか。>>350だが勘違いスマン。
353デフォルトの名無しさん:2006/05/02(火) 10:51:36
>>351
Content-Lengthが取れないケースが有るから
Docomoであろうがなかろうが1回じゃ問題あると思う。
354デフォルトの名無しさん:2006/05/02(火) 12:31:02
>>353
Content-Length返さないサーバ(CGI)はダメよ、なんてことが書いてあった気がするな。
355デフォルトの名無しさん:2006/05/02(火) 13:18:26
機種依存がある携帯はダメよと言っても通じないのが世間様。
356デフォルトの名無しさん:2006/05/02(火) 13:21:27
スイマセン、
iアプリでQRを読むプログラムを作ろうと思っているのですが、
iアプリでCodeReade機能を呼び出して、それに撮影した画像を渡して、その画像に写っているQRを読み取る事は出来ないのでしょうか?
呼び出してみたのですが、どうしてもQRをカメラから読み取ろうとして画像を渡すことが出来ません。

こうしておけば他人に見られたくない情報をQRにして、画像で持ち歩けると思ったのですが。

やはりコレは無理なのでしょうか?
357デフォルトの名無しさん:2006/05/02(火) 17:35:34
>>356
QRコードに生でデータ書くの?
それだと結局リーダ持ってる人には見られると思うけど
暗号化していれてアプリで復号するとしてもQRコードで
保存しておく意味はまったくないよね
358デフォルトの名無しさん:2006/05/02(火) 17:57:40
>>353-355
アプリが接続できるのは自鯖だけ(トラステッド除く)なのだから、
きちんとContent-Length返すようにしておけよw

古い端末はContent-Lengthを返さないと、そもそも読めなくなるしな。
359デフォルトの名無しさん:2006/05/03(水) 00:21:02
QRの話題続きで申し訳ないですが少し質問を。

QRコードを読み取ることでアプリに変化を加えることは可能ですか?
 ttp://www.nttdocomo.co.jp/service/imode/make/content/barcode/about/s2.html#3_1
↑の項目3.5に”iアプリからのコード読み取り”とあるので可能かと思いましたが
探してもそれらしき記述はありませんでした。
理解されている方よろしくお願いしますm(__)m
360デフォルトの名無しさん:2006/05/03(水) 02:38:07
>>359
少し見てみたが、Cameraと同様にCodeReaderもネイティブアプリを呼ぶ形だと思う

"iアプリからのコード読み取り"の表現がまずいのかもしれんが、
"iアプリにバーコードデータの文字列を渡すことも・・"の部分で、
getStringやgetResultTypeで結果を参照できることが言いたいんだとおも


アプリに変化もリザルト見れば変えることは簡単だろ
361デフォルトの名無しさん:2006/05/03(水) 18:22:52
バージョンアップメソッドについて質問です・・・・

今、start()内にてバージョンアップメソッドを
定義しているのですが、なぜかバージョンアップが
完了したにも関わらず何度も何度も「バージョンアップ
しますか?」というダイアログが出力されます・・・
バージョンアップの無限ループといった感じです。
何でこんな風になるのでしょうか・・・

知っている方がいらっしゃったら教えてほしいです。。。
362デフォルトの名無しさん:2006/05/03(水) 18:52:02
>>361
バージョンアップが必要か否かの処理が対応してないから
ただlaunchだけしてれば、そんな動きしてしまう
363デフォルトの名無しさん:2006/05/03(水) 20:02:50
>>362さんへ・・・

どのように制御すればよいのでしょうか。。。
364デフォルトの名無しさん:2006/05/03(水) 23:39:41
>>363
バージョンを見る
365362:2006/05/04(木) 00:18:44
>>363
漏れは移動機側のSPとHTTP使って鯖と比較をしてる
366デフォルトの名無しさん:2006/05/04(木) 00:44:54
>バージョンアップの無限ループ

ダイアログの[いいえ]選択時の処理もできてないんじゃね?
367デフォルトの名無しさん:2006/05/04(木) 00:52:51
おまえらフルブラウザ作れよ
368デフォルトの名無しさん:2006/05/04(木) 00:54:13
>>366
バージョンアップ確認のダイアログは、ネイティブで出しているはずで
Yes/Noの選択結果もJavaには通知されない仕様だったとおも
369デフォルトの名無しさん:2006/05/04(木) 10:26:07
>>367
どのへんからがフルになるのかがわからん
370デフォルトの名無しさん:2006/05/04(木) 15:57:18
>>368
アプリに制御が返ってくるのは『いいえ』を選んだときのみだすよ。
『はい』ならアプリは終了
371デフォルトの名無しさん:2006/05/09(火) 21:00:24
test
372デフォルトの名無しさん:2006/05/10(水) 20:51:42
FOMA900以降用アプリ作ってみてるんだけど、
通信中にTASKキーを押してメニュー表示させるとエラーが帰ってくるんだけど、
これって全機種共通仕様なの?
373デフォルトの名無しさん:2006/05/10(水) 22:04:27
>>372
「エラーが帰ってくる」とは?

どんな例外が出るか、とか、どのAPIの戻り値がエラーになる、とか、
エスパー以外にもわかる情報を書け。莫迦。
374デフォルトの名無しさん:2006/05/10(水) 22:57:08
>>372
VMが一時停止するから接続も中断する。
375デフォルトの名無しさん:2006/05/10(水) 23:00:50
>>374
あらがとうございます
376デフォルトの名無しさん:2006/05/11(木) 00:00:53
resume();
377デフォルトの名無しさん:2006/05/11(木) 15:40:34
初歩的なものかもしれませんが質問です。

スクラッチパッドからの読み込みでUIExceptionのgetStatus()が0のエラーが発生しています。
UIExceptionでステータスが0のものはSTATUS_FIRSTとUNDEFINEDの2つがありますが、
これらはどういう意味のステータスなのでしょうか?
エラーステータス未定義のエラーとか、ナンジャラホイです。
378デフォルトの名無しさん:2006/05/11(木) 16:52:48
エスパーきぼんぬですか
379デフォルトの名無しさん:2006/05/11(木) 22:43:24
>>377
スクラッチパッドの読み込みでUIExceptionって、、どのメソッドででてるの?
まずどのメソッドで例外が発生してるのかつきとめろ。話はそれからだ。
380デフォルトの名無しさん:2006/05/13(土) 20:35:18
質問があります、例えばアプリからブックマークの登録などしようとすると、システムのダイアログが出て
ブックマークに登録するかの確認が出ますが、そのダイアログに答えてアプリに処理が戻って来てから
getKeypadState()で値を得るとぐちゃぐちゃというか、ダイアログ出てるときのキー入力のゴミを含めて
値を返してるようなんですが、何か回避策はありませんか?。

しかし、妙なことに自分で任意にダイアログ出して確認を得た後に、システムのダイアログが出てきて
アプリに戻る時は正常な値が返ってきます・・・・、プログラム自体はいじらずに自分でダイアログ表示を
する所をコメントアウトしたりしてるだけなので、どうもシステムが出すダイアログが出ると何か副作用でも
あるのかなと・・・・。

自分でダイアログ>システムダイアログ>getKeypadState() は正常
システムダイアログだけ>getKeypadState()は異常

となります、何か回避策ありましたらよろしくお願いします。

381デフォルトの名無しさん:2006/05/13(土) 21:49:19
>>380
ダイアログが出るような処理の後は、getKeypadState()で
全てのキーが放された状態になるまで待つ。
382380:2006/05/14(日) 15:27:22
>381

ありがとう、できました、処理の後ってのはダイアログが出た「後」じゃなくて
ダイアログが出る前の処理の「後」って事だったんですね。

確かにダイアログ表示前にキーが開放されるの待ったらうまくいきました、どうもです。
383デフォルトの名無しさん:2006/05/15(月) 16:06:54
質問です。
スクラッチパッドに画像を保存/読込する方法なのですが
以下の読み込み部分でなぜかエラーが発生しています。
エミュレータでは正常に動作するのですが、実機でuse()を行うとNO_RESOURCESの例外が吐かれます。
パッドへの保存は正常に行われているのですが・・・

MediaImage mi;
mi = MediaManager.getImage("scratchpad:///1;pos=0");
mi.use();
384デフォルトの名無しさん:2006/05/15(月) 16:40:12
>>383
保存できてないからNO_RESOURCES出てるんじゃない?
385デフォルトの名無しさん:2006/05/15(月) 16:48:12
スクラッチパッドのサイズ指定して無いとかどうよ?
386デフォルトの名無しさん:2006/05/15(月) 16:50:08
scratchpad:///0;pos=0
387デフォルトの名無しさん:2006/05/15(月) 17:07:41
>>385>>386
サイズや場所の指定、0じゃなくて1なのも分かってるので問題ありません。

>>384
エミュでは保存されてました。
とすると実機だとスクラッチパッドに保存されていないこと問題ということですか。
ありがとうございます。
388デフォルトの名無しさん:2006/05/15(月) 17:26:18
実機の機種は?
389デフォルトの名無しさん:2006/05/15(月) 17:28:08
>>387
スクラッチパッドに書き込む時、
OutputStream#write(byte[])だと
サイズと端末によっては変なデータが書き込まれたことがある。
不具合なのか仕様なのか俺の使い方が悪いのかわからんけど。

OutputStream#write(int)の方使ってみてくださいな。
390デフォルトの名無しさん:2006/05/15(月) 18:15:46
>>388
N902iです
>>389
byte[]でもintでも、実機でエラー発生しました。
どこが悪いのか・・・
いっそのこと、ソース載せます。

//----- write -------------------------
String url = IApplication.getCurrentApp().getSourceURL()+name;
HttpConnection http = (HttpConnection)( Connector.open(url, Connector.READ, true) );
http.setRequestMethod( HttpConnection.GET );
http.connect();
InputStream in = http.openInputStream();
OutputStream out = Connector.openOutputStream( "scratchpad:///1;pos=0" );

byte[] data = new byte[128];
while( (length=in.read(data)) != -1 ) {
  out.write(data,0,length);
}

//----- read --------------------------
MediaImage mi = MediaManager.getImage( "scratchpad:///1+;pos=0" );
mi.use();
391デフォルトの名無しさん:2006/05/15(月) 18:19:09
outを一度closeしてみるとかどうよ?('-'*)
392デフォルトの名無しさん:2006/05/15(月) 18:20:12
>>390
Nならlength 指定してみては?
393デフォルトの名無しさん:2006/05/15(月) 18:56:03
>>390
MediaImage mi = MediaManager.getImage( "scratchpad:///1+;pos=0" );
この+はコピペミスなの?
394383:2006/05/15(月) 19:04:47
>>391
どのタイミングでclose()するのですか?
一応データ読み書き終わったらHttp、In、Out全部close()していますが。

>>392
P901iでも同じ現象が起きてるので、機種依存問題ではないと思います

>>393
書き込みミスです。ソースにはそこに変数が入ってたので、その消し忘れ。
395デフォルトの名無しさん:2006/05/15(月) 19:17:29
俺の経験から言って

こういう場合は大抵イージーミスだから、
ソース削ってどこがまずいか調べるか、
関数をゼロから書き直してみると動く予感。
396デフォルトの名無しさん:2006/05/15(月) 19:33:22
ADFの設定はちゃんとしてる?
397デフォルトの名無しさん:2006/05/15(月) 19:42:00
まずはwriteした後ScratchPadの内容吐き出す等して
Write/Readのどちらか切り分けだろ


つか、例外を覚えることの方が先のような気もするが。
398デフォルトの名無しさん:2006/05/15(月) 20:49:28
>>394
>書き込みミスです。ソースにはそこに変数が入ってたので、その消し忘れ。

まさかこんな風に?
MediaImage mi = MediaManager.getImage( "scratchpad:///1+offet;pos=0" );
399デフォルトの名無しさん:2006/05/15(月) 21:50:20
スレ違い気味ですが、教えていただけると幸いです。

皆さんはJavaを勉強するにあたり、どのような本を読みましたか?
お勧めの本などがありましたらご教授いただきたいです。
とりあえずiアプリゲーム開発テキストブックは買ったのですが、
肝心のJavaはどうしたものか、と思いまして。
400デフォルトの名無しさん:2006/05/15(月) 21:58:53
最初からCをある程度かじってたから
本は一冊も買わないでネットで済ました
401デフォルトの名無しさん:2006/05/15(月) 22:22:20
>>390
while( (length=in.read(data)) != -1 ) {
  out.write(data,0,length);
}

ここがおかしいじゃんか。
whileで繰り返し読み込みが発生しても
常にバッファの先頭へ書き出してるじゃん。
402デフォルトの名無しさん:2006/05/15(月) 22:23:25
ソースを読み違えた。>401は無視してくれ。
403デフォルトの名無しさん:2006/05/15(月) 22:43:51
>>390
getImageする前に、とりあえずOutputStreamをclose()しておけって
404デフォルトの名無しさん:2006/05/15(月) 22:45:42
>>390
確認1.
"scratchpad:///1;pos=0" としているが、
ADFにはスクラッチパッド0と1のサイズをきちんと記述しているよな?

確認2.
>while( (length=in.read(data)) != -1 ) {
実機で、ここでちゃんとdataに値が入ってる?

確認3.
クローズはout、inの後にhttpにしてるよな?httpは最後だぞ。
try-catchで括っていればちゃんと例外発生で落ちると思うけど。
405デフォルトの名無しさん:2006/05/15(月) 22:53:49
ストリームの閉じ忘れがどっかにある、に一票。
実機だと、機種によっては5つぐらいまでしかストリーム開けないのがあったはず。
406デフォルトの名無しさん:2006/05/15(月) 22:55:07
>>390はせっかくソース晒してくれたけど
スレに書き込むからって半端に省略しない方がいいな。
close()やtry{}catch{}をまさか本当に記述してないわけじゃないだろ?

いいから20行くらいでズバッとコピペしてみろって。
407デフォルトの名無しさん:2006/05/15(月) 23:59:38
じゃなきゃ、ずばっと削ってその上で
再現できるコードを書くくらいまでやってほしい。
408デフォルトの名無しさん:2006/05/16(火) 11:41:08
>406ではお言葉に甘えて、読み書き部のソース丸ごと・・・

//-- read method ----
public void imageSave(int offset, String name) {
HttpConnectionhttp;
InputStreamin;
OutputStreamout;
byte[]data;
intlength;

try {
String url = IApplication.getCurrentApp().getSourceURL()+name;
http = (HttpConnection)( Connector.open(url,Connector.READ,true) );
http.setRequestMethod(HttpConnection.GET);
http.connect();
in = http.openInputStream();
out = Connector.openOutputStream("scratchpad:///"+offset+";pos=0");
data = new byte[128];
while ((length=in.read(data)) != -1 ) {
out.write(data);
}
out.close();
in.close();
http.close();
System.gc();
} catch (IOException e){ }
} // imageSave()
409デフォルトの名無しさん:2006/05/16(火) 11:48:44
>>408を、paintメソッド内で起動時に数回呼び出しています。

//--- paint method -----
public void paint(Graphics g) {
g.setColor( Graphics.getColorOfRGB(0xFF,0xFF,0xFF) );
g.fillRect( 0,0, getWidth(),getHeight() );
if( !once ) {
once = true;
if( !isDataExist() ){
imageSave( 1, "SET1.jpg");
imageSave( 2, "SET2.jpg");
imageSave( 3, "SET3.jpg");
imageSave( 4, "SET4.jpg");
}

MediaImage mi;
try {
mi = MediaManager.getImage("scratchpad:///1;pos=0");
mi.use(); // ここでエラー
} catch(UIException e) { }
} // if(once)
} // paint()
410デフォルトの名無しさん:2006/05/16(火) 11:56:39
paint(゚∀゚)
411デフォルトの名無しさん:2006/05/16(火) 12:02:22
>>410
描画時に読み込みたいのでpaint()内に処理を埋め込んではいますが、
別途に初期化メソッド作ってコンストラクタ等で呼び出しても同じエラーが出ます。
412デフォルトの名無しさん:2006/05/16(火) 12:05:36
>>408
まず、finally{}で、確実にストリームとコネクタを閉じること。

次に、paintメソッド内で描画以外の処理を呼ばないこと。
(そもそも、paintは使わないほうがいい)
413sage:2006/05/16(火) 12:39:55
>while ((length=in.read(data)) != -1 ) {
>out.write(data);
>}

out.write(data,0,length);
じゃないとまずい。
lengthは必ず128または-1が返るとは限らない。
100とか返ってくるときもある。
414デフォルトの名無しさん:2006/05/16(火) 12:45:03
>>408-409
>>410>>412で指摘されているが、paint()内から通信処理を呼ぶのは論外。
paint()に時間がかかる通信処理を含めてはダメ。
これはiアプリ的に常識レベルの話で、開発ガイドにもpaint()は1秒程度で抜けろと書いてある。
(余談だが、コンストラクタで通信処理を呼ぶのも当然ダメ)

paint()はソース内でrepaint()で明示的に描画要求したとき以外にも
システムから暗に呼ばれている。
例えばCanvasを新規に表示、または切り替えた直後とか。
そのときに通信処理が実行されてしまうようではダメダコリャー
>>412でpaint()使うなって言ってるのはこの辺の事情も含めてのことだろう。
(同期処理として描画したいってのが主な理由だろうが)
415デフォルトの名無しさん:2006/05/16(火) 12:48:19
>(余談だが、コンストラクタで通信処理を呼ぶのも当然ダメ)
こりゃ蛇足だった。
当然ダメ、ってこともないな。でもあまりやらないだろうけど。
416デフォルトの名無しさん:2006/05/16(火) 12:52:56
> mi.use(); // ここでエラー

ここで何が原因で例外起こしてるか自分で調べろ



paintの処理が重いと…の話だが、
言ってること正しいが争点違うだろ
417デフォルトの名無しさん:2006/05/16(火) 14:10:07
>>408
ADFのスクラッチパッドのサイズ指定の記述を教えて。
xxxxx.jadファイルの
SPsize =
の行をどう書いてる?
418デフォルトの名無しさん:2006/05/16(火) 14:23:06
つーかみんなは
InputStream#read(byte[]) とか
OutputStream#write(byte[])とか使えてる?

何度かN系の端末で先頭の1バイトしか書かれなかった事が有った
(エミュや他の機種では動く)ので、
InputStream#read(int) と
OutputStream#write(int) しか使わないようにしてるんだけど。
419418:2006/05/16(火) 14:24:10
ミス。
× InputStream#read(int)
○ int InputStream#read()
420デフォルトの名無しさん:2006/05/16(火) 14:31:12
>>418
InputStream#read(byte[]) は問題なし。
OutputStream#write(byte[])は使わないで
OutputStream#write(byte[] b, int off, int len)を使えば問題なし。
421デフォルトの名無しさん:2006/05/16(火) 15:00:25
>>418
漏れはread write ともに (byte[], int, int) しか使ってないなぁ
422デフォルトの名無しさん:2006/05/16(火) 15:20:20
>>421
漏れも。
おかしな挙動したこともないし。
1バイトしか書かれなかったら1が帰ってくるんでそ?
423デフォルトの名無しさん:2006/05/16(火) 18:12:14
>>412-415
ありがとうございます
getGraphics()で書き直してみました。が、未だに上手くいってない状況です。

>>416
まだNO_RESOURCESエラーであるとしか分かりません iliorz

>>417
SPsize = 30000,30000,30000,30000
画像ファイルより数KB多めに書いてます。

現在、実機側でスクラッチパッドの中身を確認してます。
424デフォルトの名無しさん:2006/05/16(火) 18:16:23
>>423
SPsizeについて書き間違いです。
0は他のクラスで、1〜4を画像格納場所として使っています。

SPsize = 2000,30000,30000,30000
425デフォルトの名無しさん:2006/05/16(火) 18:35:48

0, 1, 2, 3 ひとつ足りなぁ〜い
426デフォルトの名無しさん:2006/05/16(火) 20:15:49
>>423
>getGraphics()で書き直してみました。が、未だに上手くいってない状況です。

それで書き直すのはいいとして、描画関数の中で通信処理を行うことがそもそも
気持ち悪いとは思わないの?
427デフォルトの名無しさん:2006/05/16(火) 21:07:51
>imageSave( 4, "SET4.jpg");
の時に
>out = Connector.openOutputStream("scratchpad:///"+offset+";pos=0");
で例外発生、catch節でクローズ処理してないからHttpConnection とInputStreamが
閉じられないでNGってわけだぁね。

何だ命令通りに動いてるじゃん
428デフォルトの名無しさん:2006/05/16(火) 21:47:59
計算は展開させて方が実行速度は速くなるのでしょうか?

gra.drawString("test", 210+5, 90 + 14 + 1 * 13);

gra.drawString("test", 215, 117);
では後者の方が早いのでしょうか?
429デフォルトの名無しさん:2006/05/16(火) 22:09:28
>>428
やってみるのが一番早い。
430デフォルトの名無しさん:2006/05/16(火) 23:08:54
>>426
まぁまぁ。最初のうちはよくある話だよ。
他にもprocessEvent()内に通信やスクラッチパッド操作を書いちゃうとか。
何本か作っていけばわかるようになるって。

>>428
その程度の計算コストは無視していいんじゃないかな。
アセンブラで1クロックのしのぎを削ってるわけじゃないし。
431デフォルトの名無しさん:2006/05/16(火) 23:29:16
計算しないって・・・。
逆コンパイルしてみればわかる。
定数畳み込み。
432デフォルトの名無しさん:2006/05/17(水) 00:25:07
上でダイアログの話出てたけど、自分で意図してこれからダイアログがでますって
いう処理になら対策のしようもあるとは思うんだけど、ユーザーが不意に通話終了ボタンとか
押して出るダイアログの処理というか検出はどうしたらいいのかな?。

通話終了ボタン押して「アプリ終了しますか」ダイアログ出ると音楽が途切れてしまうのを
なんとかしたい、自分でダイアログ出ると分かっている分には曲が途切れたとこからダイアログ
閉じたら止まったとこから再開はできるんだけど、通話終了キーが押された時にはあきらめて曲の
最初からまた鳴らすようにするしかない?、内臓アプリなんかだとちゃんと途中から
再生が始まってるみたいだから何か方法あるとは思うんだけど・・・・、かといって電源キーの

mediaActionであれこれやってみてるんだけど、stop検出してplayで最初から再生する
しか方法ないんですかね?。
433432:2006/05/17(水) 00:28:03
うわ文章切れてたorz

思うんだけど、かといって電源キーの (誤

思うんだけど、かといって電源キーを検出する方法なさそうだし (正 
434デフォルトの名無しさん:2006/05/17(水) 00:35:21
試したことないからわからないけど
suspend呼ばれたりしない?
呼ばれるならサスレジのとこで対応できそうだが…
435434:2006/05/17(水) 00:42:40
漏れおかしなこといってるわ
吊ってくる…
436デフォルトの名無しさん:2006/05/17(水) 11:05:32
>>430
>まぁまぁ。最初のうちはよくある話だよ。

「最初のうち」かどうかの問題じゃなくて、センスの問題。

>他にもprocessEvent()内に通信やスクラッチパッド操作を書いちゃうとか。

こっちはともかく。
437デフォルトの名無しさん:2006/05/17(水) 13:54:13
さすが最初からセンスが身に付いてた>436は格が違うね
438デフォルトの名無しさん:2006/05/17(水) 14:02:06
センスとか初めによくやるとかじゃなくて、マニュアル読まなかったのが問題。
439デフォルトの名無しさん:2006/05/17(水) 15:52:56
質問です
今回、初めて公式サイト用にiアプリの配信手配したのですが
アプリのダウソはできてもアプリ内の通信処理で
セキュリティエラーが発生して困っています。
同じアプリのURLだけを変更したものを勝手サイトで試すと
問題なく通信できます。
通信先はjam/jarと同じところにある画像ファイルです。
公式サイト内からの配信でjamの記述や接続URLの内容等で
気をつける点はありますか?
440デフォルトの名無しさん:2006/05/17(水) 16:03:42
URLを作る時は IApplication.getCurrentApp().getSourceURL() の相対で記述するといい
441デフォルトの名無しさん:2006/05/17(水) 16:16:20
>>440
レスありがとうございます
AppParamからURLを渡しているのですが
getSourceURLで取得した値と違いが出るということでしょうか。
442デフォルトの名無しさん:2006/05/17(水) 16:32:04
>>439
公式アプリ作るくらいのレベルなのなら例外を拾って調べるくらいはしなよ。
公式だろうが普通のリソース取得の部分はなんら特別な事は無い。
パッと思いつくのは

1:URLの記述間違い
2:URLが長すぎる
3:置いているサーバーの設定がおかしい

とりあえず携帯で例外吐き出して中見てみなさい
443デフォルトの名無しさん:2006/05/17(水) 16:49:36
>>442
レスありがとうございます
仰るとおりです。
勝手な都合ですが、アプリの差し替えが数日後になりそうなので
getSourceURLの値を確認することが今すぐできません。
不安なので事前にできる範囲で調査していました。
勿論、例外は表示しています。
SecurityExceptionで接続URLは意図したものになっています。
勝手サイトでは問題ないが公式だとダメ、という感じなので
何か特別な設定が必要なのかと思ってしまいました。
とりあえずサーバー側の設定に問題がある可能性が高い
という方向でユーザに話してみます。
444デフォルトの名無しさん:2006/05/17(水) 17:38:54
セキュリティ例外で「サーバに問題がある」なんて話したら
今後永久に信頼を失う恐れがあるので、
うまくごまかして話さないと・・・
445デフォルトの名無しさん:2006/05/17(水) 19:51:29
オチ予想
URLがIPアドレス
446デフォルトの名無しさん:2006/05/17(水) 21:34:42
AppParamを渡してる→Jarと異なるURLへアクセスと期待
447439:2006/05/17(水) 21:51:05
まだ解決していないのですが
どうやらサーバーに古いアプリが残っていて
アップロードしても何故か更新されない状態のようです。
ドコモのサーバーはキャッシュされることはないらしく(本当?)
アップロードしても更新されないなんてことはないらしいのですが
他のサイトで試すと成功したらしいので
私的には他の原因が思いつきません。
とりあえず私に責任がなかったようで助かりました。

完璧にスレよごしました
レスくれたかた、ごみんなさい
448デフォルトの名無しさん:2006/05/17(水) 22:45:02
アップロードしてもサーバー側が更新されない?
アップロードしてもjarのみ差し替えで、移動機側ではアップデートできない?

後者ならテラハズカシス
449439:2006/05/17(水) 22:54:48
>>445
>>446
>>448
そんな、そこまで初心者扱いされるとは・・・
くだらない質問したので仕方ないか(苦笑
このスレを2年前から全部読んでるので
だいたい質問に出そうな間違いは抑えてますよ
450デフォルトの名無しさん:2006/05/17(水) 23:05:03
>>449
質問の内容がそれだけ程度が低いわけだ罠w

トラステッドならURLではじく仕様もあったような気がしたが
もまいさんの質問じゃ分からんよ
451デフォルトの名無しさん:2006/05/17(水) 23:07:26
>>450
まったくもって、そのとおりです(笑
ありえない問題が発生して少々取り乱してしまいました
おはずかしい
いつものようにロムにまわります
452デフォルトの名無しさん:2006/05/17(水) 23:15:09
あー、そうだ、これ言うと誰だか特定されるかもしれんが、
普通のアプリをバージョンアップしてトラステッドにすることできないってさ。
453デフォルトの名無しさん:2006/05/18(木) 00:06:17
個人的には
>>447
に書いてある話の顛末が知りたい。
454デフォルトの名無しさん:2006/05/19(金) 00:08:50
DojaでArrayList使えないの?
455デフォルトの名無しさん:2006/05/19(金) 00:53:01
>454
使えない。開発ガイドを「Collection クラス」で検索してみ。
456454:2006/05/19(金) 07:35:44
>>455
ありがとうございます。

いま電車なので確認できないのですが、
後程調べてみたいと思います。
457デフォルトの名無しさん:2006/05/19(金) 16:51:09
>>453
おそらく、ミラーリングを使ったサーバーUPDATEシステムなサーバーだったんじゃねーかな?
Aサーバーのフォルダの中身を、Bサーバーのフォルダに定期的に上書きするタイプ。
仕事で一回相手したことある。

んで439はBサーバーに直接UPしてたと。
458デフォルトの名無しさん:2006/05/19(金) 20:47:40
趣味でiアプリを書き始めてる日曜プログラマです。
ゲーム内部のロジックを考えるのは楽しくてはかどっているのですが、
ふと、スタート画面が無いことに気づきましたorz
スタートメニューって皆さんどのように実装されてますか?

スタート・コンティニュー・設定・終了の4機能を持たせたいと考えているのですが…
459デフォルトの名無しさん:2006/05/19(金) 20:52:35
>>458
タイトル画面で決定ボタンを押すと、メニューが開くようにしてる。
460デフォルトの名無しさん:2006/05/19(金) 21:13:09
>>458
こうした方がいいっていう答えはないから>>459の他にも

スタート・コンティニュー・設定・終了を文字なり画像なりで
タイトル画面に表示して方向キー+選択キーで決定させるとか。

スタート・コンティニューを方向キー+選択キーで決定させて、
設定・終了をソフトキーに割り当てる、とか。

方向キーだけでなく数字キーでも選択できるようにするとか。

タイトル画面の絵に合わせて何でも自由にどうぞってなもんだよ。
461デフォルトの名無しさん:2006/05/19(金) 21:17:15
>>459
なるほど。参考にさせていただきます。

>>460
複数の手法の紹介をありがとうございます。

>スタート・コンティニュー・設定・終了を文字なり画像なりで
>タイトル画面に表示して方向キー+選択キーで決定させるとか。

このあたりのサンプルコードとかどこかに無いでしょうか。
462デフォルトの名無しさん:2006/05/19(金) 23:03:32
Eclipse3.1.1とj2sdk1.5の環境なのですが、Stringオブジェクトにsplitメソッドがありません。。。
splitメソッドは無くなったのでしょうか?
463デフォルトの名無しさん:2006/05/19(金) 23:04:46
>>462
DoJa 1.0 のころからずっと無かったと思うけど
464デフォルトの名無しさん:2006/05/19(金) 23:26:25
>>463
そうだったんですかorz
文字列の分割とかどうしてますか?
465デフォルトの名無しさん:2006/05/19(金) 23:28:26
どうしても必要なら、indexOf と substring でやります。
466デフォルトの名無しさん:2006/05/20(土) 00:24:43
>>465
やはりそうなりますか。。。
速度が犠牲にならないか心配ですが、とりあえず実装してみてから考えてみます。
ありがとうございました。
467デフォルトの名無しさん:2006/05/20(土) 01:17:44
なんか、CLDCもDoJaも知りません、ガイドも読んでません、で
いきなりソース書き始めました、って感じがありありと…

これからiアプリ組もうとしてる人は、ただ漠然と
「iアプリはJavaで組むんだ、へぇ」とか思うんじゃなくてさ、
「ケータイアプリを組むにはJavaのサブセット(部分集合)を扱うんだ」
「じゃぁどんな機能制限があるのか」
「逆に、モバイル向けにどんな拡張があるのか」
とか、開発環境の前提となるような最低限知っておくべきことを押さえてから
ソース書き始めた方がいいよ。

知識として全部理解してから始めろってことじゃなくて、
どういう開発環境のもとで作業するのかを知っておかないと困るってこと。
468デフォルトの名無しさん:2006/05/20(土) 09:55:38
このプログラムは、P902iを始動しますが、IDKDOJA4.1エミュレータで失敗しま
す。 なぜですか?

UseStorage=extはADFに書かれています。

StorageDevice sd = StorageDevice.getInstance("/ext0");
AccessToken at = DoJaStorageService.getAccessToken(DoJaAccessToken.ACCESS_UIM,
DoJaStorageService.SHARE_APPLICATION);

try {
card = sd.getFolder(at);

SDBindingEncryptionAttribute sdb = new SDBindingEncryptionAttribute();
sdb.setEncryption(true);
FileAttribute attr[] = new FileAttribute[1];
attr[0] = sdb;

File f;

try {
f = card.getFile("storage");
} catch (FileNotAccessibleException ex) {
f = card.createFile("storage", attr);
}
data = f.open(File.MODE_READ_WRITE);
} catch (EOFException e) {
e.printStackTrace();
}
469デフォルトの名無しさん:2006/05/20(土) 10:28:21
なぜでしょう?
470デフォルトの名無しさん:2006/05/20(土) 12:24:56
>>466
splitはJava1.4から。iアプリは1.3相当。
splitは正規表現を使うのでsubstring+indexOfの方が速い。
471デフォルトの名無しさん:2006/05/20(土) 12:28:36
>458
「失敗する」じゃわからない。もっと具体的に。
try-catchしてるくらいだからどの行が原因かくらいは自力で突き止められると思うが。
472デフォルトの名無しさん:2006/05/20(土) 12:35:04
>470
1行目、説明を間違えてるよ。

iアプリはJ2SEのAPIを丸ごと使えるわけではなくて
CLDCというコンフィギュレーション(制限、条件、くらいの意味)のもとで使う。

で、CLDCのAPIリファレンスを見ると、Stringクラスにsplit()という
メソッドは含まれていない(これがつまり制限された部分)。
だからsplit()は使えないということ。

DoJa4.0未満はCDLC-1.0、DoJa4.0以降はCLDC-1.1が適用される。
473デフォルトの名無しさん:2006/05/20(土) 16:04:43
>>461
>>スタート・コンティニュー・設定・終了を文字なり画像なりで
>>タイトル画面に表示して方向キー+選択キーで決定させるとか。
>このあたりのサンプルコードとかどこかに無いでしょうか。

そんぐらい、サンプルコードなんかいらんだろ…
474432:2006/05/20(土) 18:08:58
遅レス

>434 サスペンドで使えました、電源キーのは1で戻ってくるんですね、ありがとうございます
475デフォルトの名無しさん:2006/05/21(日) 01:13:06
Webページからiアプリを起動させるにはどうしたら良いですか?
あ、開発者じゃ無いです。自分用のホームを作成しようかと思ったのですが。

それと誰かjiglet作って下さい(><)
476デフォルトの名無しさん:2006/05/21(日) 01:44:46
>>475
開発者ガイドに書いてあるから嫁
477デフォルトの名無しさん:2006/05/21(日) 19:37:22
ウィズ風RPG作りたいんですけど、iアプリ用のプログラム乗ってるサイトありましたら教えてください。
(探してるけど見つかりません;;)
478デフォルトの名無しさん:2006/05/21(日) 19:50:35
>>477
その時点でお前には無理だと思うよ。
いやマジで
479デフォルトの名無しさん:2006/05/21(日) 21:22:26
>>477
誰かに全部作ってもらって、アイテムとかモンスターの名前だけ
自分の好きなように書き換えなさい。

お前にできるのは、そのぐらいが限界だよ。
480デフォルトの名無しさん:2006/05/21(日) 22:00:05
>>477
ウィズ風RPGのiアプリ用のプログラム乗ってるサイトを探してるんだとしたら
そんな規模のサンプルが都合よく見つかるわけないだろ。なめてんのか。

最終目標がウィズ風RPG作ることで、それはそれとして
初めてiアプリに挑戦しようとしているのでサンプルが載ってるサイトを探してる
というなら、サンプル探すのもいいが前段階としてプログラミング解説の本を読んだり
開発ガイドを理解できるようになることが先。地道に頑張るしか。

で、何かしらのiアプリのサンプルが載ってるサイトを見つけられない
というなら、それは検索の仕方が分かってないってこと。
481デフォルトの名無しさん:2006/05/21(日) 22:52:21
プログラミングの勉強初めて1週間ちょいで欠落してるものがたくさんあるみたいなんですよね。

例えば、

シューティングゲームにチュートリアルを入れる方法で、
(勉強した中で)
・ダイアログ
・キーパッドステイト
・シーン
を使うとして、どやってくみこむのか。
シーンの変数ってなんでどういう風につけたらいいのかとか。


今の目標がウィズだから、ウィズのがあればはやいかなと思ったんですよ(´・ω・`)
482デフォルトの名無しさん:2006/05/21(日) 22:55:43
あったとしても君じゃ読めないでしょ
手、抜く前に勉強しなさい
483デフォルトの名無しさん:2006/05/21(日) 22:57:18
初めてiアプリを作ろうと思います。 Doja3.0
左ソフトキーが押されたら、小さなパネルが出てきて、そこでオプション設定が出来るような感じにしたいのですが、
そのパネルの描画方法が解りません。。

左のソフトキーが押されたら、パネルを描画する関数を実行するという流れまではつかんだのですが、
まずその基礎となる小さなパネル(120*100ぐらいのを左下にちょこんと)はどうやればよいのでしょうか?
484デフォルトの名無しさん:2006/05/21(日) 23:03:26
自分で書けば?
ハナクソヲクラエ(・3・)ノ===・
485デフォルトの名無しさん:2006/05/21(日) 23:09:57
>>483
今の時代Doja3.0は古いよ
486デフォルトの名無しさん:2006/05/21(日) 23:13:14
>>483
プログラム組んでるなら最低限APIリファレンスを確認してよ。
Graphicsクラスのメソッドを見ればそんな質問出ない。

drawImage()で画像を描いたり、
drawRect(),fillRectを駆使してそれらしく描いたり、
そんな方法がすぐに思い付くでしょ。
487デフォルトの名無しさん:2006/05/21(日) 23:33:22
>>483
まあ、パネルってのがPanelのことであれば、
そんなことできないから低レベルでがんばれってことになるな。
488483:2006/05/21(日) 23:40:50
Cambasクラスで書いてみます。
Graphicsで書くとすごく重くなる気がするので。。
489デフォルトの名無しさん:2006/05/22(月) 00:47:22
プギャーって書かれたいのか?
やってから言え
490デフォルトの名無しさん:2006/05/22(月) 01:14:56
ここは初心者スレなのか。初心者スレなのか
考える気がないならなんとかツクールでも使っててくださいよ
491デフォルトの名無しさん:2006/05/22(月) 11:30:44
向上心のある奴には教えたい。
向上心の無い奴には教えたくない。
わかるだろ?

まずは「iアプリ 初心者」でぐぐれば出るようなサイトくらい目を通して欲しい。
492デフォルトの名無しさん:2006/05/22(月) 16:46:04
>>485
お前は何も分かってないなw
493デフォルトの名無しさん:2006/05/22(月) 17:33:34
フレーム速度について質問させてください。

スレッドの最初に
count1 = System.currentTimeMillis();
最後に
count2 = System.currentTimeMillis() - count1;
if(count2 <= 50){
try{
Thread.sleep( 50 - count2 );
}
catch ( Exception e ) {}
}
として、端末ごとの速度の違いをなくそうとしているのですが、
どうしても速い端末は速く、遅い端末は遅くなってしまいます。
待ち時間はかわらないはずなのに。
どうしてでしょうか?
494デフォルトの名無しさん:2006/05/22(月) 17:41:13
Thread.sleepは精度が低いから
495493:2006/05/22(月) 18:22:13
>>494
そうですか、納得しました。
できるだけ近づけるということで進めようと思います。
ありがとうございました。
496デフォルトの名無しさん:2006/05/22(月) 19:25:49
>>493
そもそも、1フレームあたりの処理に50ms以上かかってるなら、遅い端末は
どうあがいても遅いままだよ。

あと、Thread#sleep() は使わずに、空ループをぶん回して待った方がいい。
電池とか気にスンナ(どうせバックライトに比べれば大したことない)

さらに言うと、System#currentTimeMillisの分解能も機種によって違うので、
そのへんもなんか考えて。
497デフォルトの名無しさん:2006/05/22(月) 21:28:07
>>496
> あと、Thread#sleep() は使わずに、空ループをぶん回して待った方がいい。

これ初めて知った。常識なの?
498デフォルトの名無しさん:2006/05/22(月) 21:40:23
そういうやり方もあるってだけでしょ。
数ミリ秒が致命的な影響出るゲームとかならやるべきってだけで。

Thread#sleep()使ったって機種依存しないメインループ作れるよ。
493は精度の問題がクリティカルに出るメインループってだけのお話。
499デフォルトの名無しさん:2006/05/22(月) 21:59:20
そうなのか。そういうフレームワークが苦手だorz
500デフォルトの名無しさん:2006/05/23(火) 01:19:26
>>496
空ループぶん回しても、コンテクストスイッチが発生することって保証されてるんだっけ?
501デフォルトの名無しさん:2006/05/23(火) 01:31:26
スリープ入れないとキー入力こぼさない?
502デフォルトの名無しさん:2006/05/23(火) 05:27:57
MediaImageのImageオブジェクトを複製して別のオブジェクトにしたい。
>>293-295のやり方ではcreateImageした時に背景色が透明色ではないので
透過GIFが無効になってしまう。
getRGBPixelsでコンストラクタにint[]を渡すコードも書いてみたけど
UnsupportedOperationExceptionが出てしまって使えない。
(MediaImage.getImage().getGraphics()でコケてるっぽい)
clone()があればすぐ済みそうな話なんだけど、どうしたら良い?
503デフォルトの名無しさん:2006/05/23(火) 08:31:02
>>502
透過gifのImageオブジェクトを透過を生かしたまま複製する方法はない。
透過gifのImageオブジェクトを複製して別のオブジェクトにする必要性を見直す。
504デフォルトの名無しさん:2006/05/23(火) 10:32:01
>>502
複製もできないし、getGraphicsして描画したりもできないので
安心して他の手段を考えてください。
505デフォルトの名無しさん:2006/05/23(火) 11:03:40
空ループ方法はVMがメモリを整理する時間すら奪うから注意がある。
一定処理でループできるようになるが強制的に内部でGC呼ばれると恐ろしく止まる機種がある。
あくまでなる機種があるってことでならない機種もある。
506502:2006/05/23(火) 11:42:55
>>503-504
マジッスカー!!('A`)

うーん、仕方が無いな。
ありがとう。
507デフォルトの名無しさん:2006/05/23(火) 21:19:11
Phone.call() って、色々悪用できそうで怖くね?
508デフォルトの名無しさん:2006/05/23(火) 21:38:51
>>507 かけるまえにダイアログでるから
509デフォルトの名無しさん:2006/05/24(水) 00:30:46
>>506
どうしても1つ作りたいなら
MediaManager#getImage()からやり直しだね。
510509:2006/05/24(水) 00:31:17
すまん。
1つ→2つ
511502:2006/05/24(水) 06:58:51
>>509
やりたかったのは、ベースとなる透過GIFに対して、
プログラム側で加工した状態(フォント描画等)で、
数種類のImageオブジェクトを持っておきたかったんだよね。
そういう意味で504の回答は痛恨の一撃だったなぁ。
512デフォルトの名無しさん:2006/05/24(水) 07:54:28
>>511
メモリ上に透過させたい画像の無圧縮GIFファイルを一度構築して、そこからMediaImage化してみるとか
513デフォルトの名無しさん:2006/05/24(水) 11:38:58
>>500-501
大丈夫。
むしろ空ループ式以外でやっている人がいることにびびった
514デフォルトの名無しさん:2006/05/24(水) 11:41:26
>>511
透過イメージは、それ専用のオプションAPIがある。
だが、サポートしている端末はまったくと言ってよいほど無い。

502がやりたいことは、現状不可能と考えていい。
512のアイデアは「パレットチェンジ」程度ならいいが、まともに画像を描きかえる(文字を重ねるなど)をするなら
GIFファイル化のアルゴリズムだけでアプリの容量をばっちり食う。
お勧めできない。
515デフォルトの名無しさん:2006/05/24(水) 11:46:50
>>511
よくアプリにある透過ウインドウみたいな奴?
516デフォルトの名無しさん:2006/05/24(水) 11:48:59
createImageで、透過色まっさらのImageを作れるだけでいいんだ。
それだけでいいから、標準APIに組み入れてくれないかねー。
517デフォルトの名無しさん:2006/05/24(水) 11:53:41
int配列をImage化する機能があるのだから、自前で
1ドットずつ処理していけばいいんじゃね?
518デフォルトの名無しさん:2006/05/24(水) 11:55:08
517の続き
もちろんスピードが要求されない場面での使い方だけど。
あと、int配列とImageの変換まわり、エミュレータがむちゃくちゃ遅いんだよな。

240*240の画像をint配列にして、Imageに戻して描画。
ってだけで30秒くらい固まる。
いつ直してくれるんだ。
519デフォルトの名無しさん:2006/05/24(水) 12:04:05
>>518
30秒も固まらんだろうwエミュは。
俺の環境ではエミュではさほど落ちないぞ。
ただ実機では実用に耐えれない速度だがな。

やりかた次第だろうか?
520デフォルトの名無しさん:2006/05/24(水) 13:02:47
901以降ならこれで出来ないの?
g.setColor(g.getColorOfRGB(rr,gg,bb,alpha));
g.fillRect(x,y,w,h);
521デフォルトの名無しさん:2006/05/24(水) 13:40:25
>>520
出来たらどうなるんだ??説明よろ
522デフォルトの名無しさん:2006/05/24(水) 15:59:42
>>520
おぉ。リファレンスを読む限りだと行けそうな気がするな。
523デフォルトの名無しさん:2006/05/24(水) 16:10:56
透過が出来る。
524デフォルトの名無しさん:2006/05/24(水) 16:30:43
背景が透明なキャンパスを作れない事が問題なんだけど。
525デフォルトの名無しさん:2006/05/24(水) 16:32:20
>>519
いや、真逆。
エミュだと30秒固まる。
実機だと、505iでもFPS8くらいは出る(リアルタイムアクションには無理だが)
526デフォルトの名無しさん:2006/05/24(水) 16:45:03
>>524
最後を0にすれば透明にならないか?
527デフォルトの名無しさん:2006/05/24(水) 16:48:40
>>526
「透過の色で上書きする」んじゃなくて
「指定した色を指定したアルファ値でブレンドする」だけなので
白のキャンパスの上にアルファ0の色でfillRectしたら白い色のまま。
528デフォルトの名無しさん:2006/05/24(水) 17:00:51
>>525
む、それはそっちの方が羨ましいな・・・。作り方の違いなんだろうか。
2Dのアプリでスポットライトみたいな演出(円を動かして内部の色を明るく変更する)
を作ったんだがあまりに実機で遅すぎて廃止した・・・。エミュじゃ早かったんだが。

>>520
>>526
524・527の答えが正解。
イメージを作成した段階で白で埋め尽くされている以上
アルファ値使おうが透明にはならない。
透明なイメージを作成できるだけでかなり違うんだがなぁ・・・なんでないのやら。
529デフォルトの名無しさん:2006/05/24(水) 17:12:29
>>528
俺も自作拡大縮小回転ライブラリ作ったこと有るけど、
Athlon2500+のマシンで処理速度は 902系>エミュ>900 て感じだったよ。
30秒も固まることはなかったので作り方の問題のヨカン
530デフォルトの名無しさん:2006/05/24(水) 18:10:38
>>528
そうなのかぁ。がっかり。
531デフォルトの名無しさん:2006/05/25(木) 09:23:30
>>529
作り方もなにも、Canvasから
getRGBPixels
して
setRGBPixels
するだけなんだが…。何も変更を加えなければ通算2行の動作プログラム。

エミュだとばっちりフリーズ状態。はて…。



今試した。おお。早くなってる。
いつのまにかDOCOMO直したのかな。505の頃のエミュでやってみた。
早い。

orz俺の以前の環境がおかしかったようだ(当時だってPen4 1.6GHzとかだったんだが…)
532デフォルトの名無しさん:2006/05/25(木) 16:01:27
getRGBPixelsが激遅ナンデショ
533デフォルトの名無しさん:2006/05/25(木) 20:24:29
AudioPresenterクラスで、setAttribute(SET_VOLUME,vol)って感じで
音量を変更させようと思ったのですが、何故か辺変更できない音があります。

N900i→音量変更できた。
F900i→MIDI系変更できた。ボイス系変更できない。

ボイス系の音ファイルの音量が変更できないのは、端末の依存によるものでしょうか?
それとも、プログラムの問題?もしくは音ファイルの問題?

いまチャンネルが2つでやっているんですが、チャンネルを入れ替えてもダメでした。
setAttrしてからplayさせてもダメでした。

いろんな状況を試したのですがうまくいかないので、知ってる人はアドバイスください。
534デフォルトの名無しさん:2006/05/25(木) 20:51:03
>>533
端末の仕様
最近のはだいたいMIDI系もボイス系も変更できるけどね
535デフォルトの名無しさん:2006/05/25(木) 20:59:51
流れに乗り遅れたんだけど、空ループについて質問!

スレッドA:ひたすら処理
スレッドB:数ms〜数sec指定で的確に動作

こんな場合、スレッドBでの待合にも、空ループが一般的?
(スレッドB処理時以外)可能な限りスレッドAに動作してもらいたくて、
sleep使ってたんだが(´・ω・`)

空ループが無駄にCPUを占有したりしないのかな?
それを防ごうとスレッドAのプライオリティを上げると、
スレッドBの動作が遅れたりしそうな予感。
536デフォルトの名無しさん:2006/05/25(木) 21:12:42
割り込まれたり多少遅れても平気なように作るのが一般的じゃないかと。

思うに、どーせズレるものはズレるからスレッドAのみにすりゃいい気がする。
スレッドBは毎回構築&削除でいかが?
537533:2006/05/25(木) 21:25:30
>>534

900でもそんな仕様あるのかぁ・・・。ほんと中途半端だな実装。。。
いまテストしてみたら、同じファイルをF701iで再生したらちゃんと音量変更できた。>>534の言う通りファイルが原因じゃなかった。

ところで、こんな端末依存どこにも書いてないんだけど一般的?
それともがんばれば別の方法で回避できる問題なの?
538デフォルトの名無しさん:2006/05/25(木) 21:45:41
質問です。
"#bimg.gif"というファイルをサーバーにアップして
プログラムでイメージを表示しようとしたところ、サーバーからエラーが返されました。
次に"bimg.gif"という名前に変えて実行したところ普通に表示されました。
htmlなどはハイフン、アンダーバー、半角英数以外は使えないことは知っていますが
"#"は使えない文字なのでしょうか、またプログラムからアクセスもできないのでしょうか?
539デフォルトの名無しさん:2006/05/25(木) 21:51:42
>>538
>htmlなどはハイフン、アンダーバー、半角英数以外は使えないことは知っていますが

# はハイフンでもアンダーバーでも半角英数でもない。
というか # は URL として特別の意味があるよ。
540デフォルトの名無しさん:2006/05/25(木) 21:56:21
失礼します。
フルブラウザを作ってみようと思っているのですが、
フルブラウザの作り方を解説しているサイトなどはありませんでしょうか?
ぐぐるさんで「フルブラウザ」調べても評価やレビューのサイトばかりで、作り方に触れているサイトが無かったので。
541デフォルトの名無しさん:2006/05/25(木) 21:59:22
http://aaaa/bbbb/#bimg.gif
↑が無理なことというのがわかりました。

ありがとうございます。
542535:2006/05/25(木) 22:18:18
>>536
ありがとう!
まさか処理の提案までもらえるとは思ってなかった
ので、状況の説明をサボってました。ごめんなさい。

あつかましいですが、以下の条件を追加させてください。

@スレッドAの処理はできるだけ動作して欲しい
AスレッドBの処理は、動作タイミングを守るという
  一点において、スレッドAよりも重要
B特に重要なのは、数msの動作タイミングではなく、
  数secの動作タイミングでの処理

つまり、Aには終始動作してて欲しいけど、Bのタイミングを
守った動作のほうが重要なんです。
そんな訳で、スレッドBは削除できない。
(というより、1スレッドで条件を満たす処理が思い
つつかない私のスキル不足のせいですが。。。)

535に上記条件を加えた場合でも、やっぱり空ループが
デフォでしょうか?
543デフォルトの名無しさん:2006/05/25(木) 22:39:36
>>542
珍しくマジレスするが、スレッドBでは:

Sleep( 目的の時刻 - 現在の時刻 - 20);
while (目的の時刻 > 現在の時刻)
; // 空ループ
目的の処理

とする。20のトコは調整して。
544535:2006/05/25(木) 23:02:33
>>543
めちゃくちゃありがとう!
まさに理想の処理だよ。
しかしまぁあっさりと。。。脱帽です。

自分の思考がsleepか空ループの2択に
なってたことに反省。
545デフォルトの名無しさん:2006/05/26(金) 00:07:54
>>541
別に無理じゃないよ。
http://aaa/bbbb/%23bimg.gif
でアクセスすればよろし。
546デフォルトの名無しさん:2006/05/26(金) 03:19:05
文字列が数値に変換可能かを調べたい場合、
Integer.parseInt() を NumberFormatException でキャッチするしか方法なし?

例外使うより軽い処理はないものでしょうか。
547デフォルトの名無しさん:2006/05/26(金) 09:53:46
>>535
空ループする側はyieldで積極的に別スレにCPUパワーを渡してあげないと
別スレ側がかなり遅くなっちまうぞ。気をつけろ
548デフォルトの名無しさん:2006/05/26(金) 09:54:36
>>546
一番軽いのはそれだと思う。
あとは0〜9-以外が含まれてるか文字列チェック
549デフォルトの名無しさん:2006/05/26(金) 17:58:46
GPSについて調べているのですが、
どうやらiアプリDXでないとできないようで、
あまり資料がありません。
どこかに、位置情報取得ができるようなサンプルとかないものでしょうか?
550デフォルトの名無しさん:2006/05/26(金) 18:18:56
iアプリはじめたばっかりなのですが、
定期的にWebからデータを取得して表示させようとしてます。
Timerをつかって、定期的に読むようにしてたのですが
上のほうを読むと processEvent で通信などするべきではない
とかかれてたのですが、では、定期的な通信など行う場合は
どういうイベントで行うのがベターなのでしょうか?
551デフォルトの名無しさん:2006/05/26(金) 18:20:24
>>550
イベントハンドラじゃなくて別スレッドで行うのが良いよ。
552550:2006/05/26(金) 18:31:56
なるほど、スレッドですか。
調べてみます。 ありがとうございました。
553デフォルトの名無しさん:2006/05/27(土) 21:50:01
>>549
APIリファレンス見れば、ある程度想像できると思うが。
全然難しくないよ。
554デフォルトの名無しさん:2006/05/28(日) 00:58:07
ちょいと欲しいiアプリが無いので、JAVAの知識もあることだし作っちまおうと
先ほど思い立った輩ですが、

Dojaは下位互換性はあるのでしょうか。
当方505iですがどうせならDoja4.1でやろうかなぁと。
問題無しですか?
555デフォルトの名無しさん:2006/05/28(日) 02:11:12
配慮されてはいるけど、細かいところでは互換性がないところもあるよ。
556554:2006/05/28(日) 02:21:11
>>555
なんか叩かれるかなぁってちょっとビクビクしてたので安心しましたw
細かいところくらいなら問題あったときに修正することにして、4.1で行きます。
ありがとうございました!

557デフォルトの名無しさん:2006/05/28(日) 02:32:39
リアルタイムにキー入力を監視しつつ、キー入力があれば入力結果を変数に代入して、
次のキー入力が発生するまでまたキー入力監視状態で処理を止めていたいのだけど、
実現するには何か良い手段ありますでしょうか?
558デフォルトの名無しさん:2006/05/28(日) 03:00:34
>>557
プログラミングの勉強をするとよいよ、
559デフォルトの名無しさん:2006/05/28(日) 03:05:30
>>558
ごめんなさいorz
560デフォルトの名無しさん:2006/05/28(日) 18:24:38
Eclipse 3.1.2でDojaプロジェクトを作成するにはどうしたらよいのでしょうか。

一応プラグインは組み込まれているようなのですが、プロジェクトの新規作成から
Dojaプロジェクトなどは出てこず、
ウィンドウ -> 設定
でもDojaに関する設定項目はなく、プラグイン開発のターゲットプラットフォームに
プラグインが表示されるのが確認される程度です。
仕方なく、そこからcom.nttdocomo.eclipseでワーキングセットを作成し「Doja」となづけ
このワーキングセットからJAVAプロジェクトを作成すればエラーチェック等は正常に行われるようになりました。

しかし、メソッド名の補完などは行われず使いにくく実行もできません。

どなたかご教授願えませんでしょうか。

こんな感じです↓
http://www.uploda.org/uporg402774.jpg
561六尺兄貴:2006/05/28(日) 19:12:37
まずDojaプロジェクトが出てこないことにはどうしようもないよ。
\pluginsフォルダ内には、ちゃんと「com.nttdocomo.eclipse_x.x.x」フォルダはある?
562六尺兄貴:2006/05/28(日) 19:19:32
失礼。上に「com.nttdocomo.eclipseワーキングセットを作成」とか書いてるから、
ちゃんと所定の場所にフォルダはあるんだろうなぁ・・・

バージョンの違いでちゃんとインストールされてないのではなかろうか・・・
Dojaのバージョンは4.0以降ですか?
563560:2006/05/28(日) 19:27:49
>>561
ありがとうございます。
あります。
Eclipseで読み込まれていることも確認できます。
http://www.uploda.org/uporg402847.jpg
564560:2006/05/28(日) 19:30:47
>>562
ありがとうございます。
Dojaのバージョンは4.1を使いました。
565六尺兄貴:2006/05/28(日) 20:12:01
ごめん、俺にはさっぱりわからなす。

正常にインストールすると、新規作成ウィザードダイアログの「Java」のツリー内に
「Doja-4.1プロジェクト」ってのが見えるはず。見逃してるかもしれないから、
一応確認しといて。

あとはもう一回Dojaのインストーラを起動して、再インストールするしかないかも。
566デフォルトの名無しさん:2006/05/29(月) 10:12:57
時々Eclipseがどうとかいう質問が出るな。
過去ログ探せばあれこれ書いてあるんじゃね?

俺はテキストエディタしか使って無いからわからんが(´・ω・`)
567デフォルトの名無しさん:2006/05/29(月) 10:37:29
俺はeclipseごとクリーンインストールしちゃう。
なんとなく、eclipseは本体とプラグインのバージョン間依存が激しい気がする。
568sage:2006/05/29(月) 10:47:31
俺はDoJaだけ削除してインストールしなおすと
出てきたが?
569560:2006/05/29(月) 23:45:12
ご迷惑をおかけしました。
既にこちら
http://eclipsewiki.net/eclipse/?Eclipse3.1.2%C6%B0%BA%EE%A4%B7%A4%CA%A4%A4%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3
にEclipse3.1.2ではDoja-4.1が動作しないことが報告されてましたorz

入れ直したところ正常に動作しました。

お騒がせしてすみません。
スレ汚し失礼しましたorz
570デフォルトの名無しさん:2006/05/30(火) 09:06:23
>>560
実は同じような状況で悩んでます。
Eclipse 3.1.2 + Doja-4.1 + java1.4で(1.5だとビルドが失敗するので sun.tool.javac.mainを使えばビルドできるけど・・・)
プロジェクトの新規作成から Dojaプロジェクトは表示され、
実行していくとスケルトンな様なものはできます。
それのビルドまではできるのですが、デバッグができません。
processEventなどにブレークポイントを張って、ボタンを押してもとまりません。
それ以前に、エミュレータの携帯端末は起動するのですが、
プロジェクトを実行していません。
ためしに、作ってみたiAppを携帯のほうに入れてみたところ
問題なく動作しました。

どうすれば、デバッグができるようになるのでしょう?
あと、560さんは「入れな直したところ正常に動作」といわれてますが
どういう風に入れなおされたのでしょうか?
571570:2006/05/30(火) 17:25:22
何とか自己解決です。
Eclipse 3.1.1 + Doja-4.1 + java1.4
ですべて再インストールを行ったら、うまく行くようになりました。
問題なくデバッグも行えます。
572デフォルトの名無しさん:2006/05/30(火) 17:38:02
質問です
GPSについて興味があったので、調べてたのですが
まず、Doja-4.0 API iappli Development Kit ユーザーズガイドをみて
dojaをインストールしたのですが、
Eclipseから設定のところに位置情報編集の項目や
トラステッドの設定のところにも同様なものが記述されているのですが、
私がインストールしたものにはそのような項目がありません。
また、開発者ガイドには
com.nttdocomo.device.locationパッケージを利用するように書かれているのですが
deviceのしたにlocation自体が存在しませんでした。
これは、通常NTT Docomoから配布されているDojaではないDojaが必要なのでしょうか?
573デフォルトの名無しさん:2006/05/30(火) 22:35:51
>>572
DoJa単体でサンプルアプリ作ってビルド通れば、
Eclipseの設定の問題ジャマイカ

GPSもEclipseも使ったことないから明言できない。。。
574572:2006/05/31(水) 10:48:41
>>573
DoJa単体でできないんです。
普通に DoJaインストールすると
com.nttdocomo.device.locationパッケージは入らないみたいで。
オプションAPIってどうやれば使えるのかなと。
575デフォルトの名無しさん:2006/05/31(水) 11:38:58
com.nttdocomo.device.location
は、DoJa3.0にあります。
3.0 入れてやってみてください。
ちなみに、3.0は
Eclipse 2.1
java1.3
なので、全部入れなおしてからやったほうがいいです。
576572:2006/05/31(水) 19:40:09
>>575
DoJa3.0入れなおしてみるとできました。
しかし、3.0ではできるのに4.1ではだめとは・・・。
4.1にオプションAPIって追加できないんでしょうか?
577デフォルトの名無しさん:2006/05/31(水) 21:42:55
>>576
実機はどうなん?
過去互換は考えてると思うのだが…
578デフォルトの名無しさん:2006/06/01(木) 03:42:11
>>576
開発ガイド for DoJa-4x 詳細編に、GPS(location)に関する記述はない。
DoJa-4.x各機種オプションAPI・拡張API実装状況(第3.0版)のpdfを見ると
GPS(location)のオプションAPIを実装してる端末はない。
EMU欄に(P)とあるが、これは50x用エミュレータであれば実装されているということ。

結局DoJa-4.xでGPSを制御する方法は実機、EMUともどもないということ。
579デフォルトの名無しさん:2006/06/01(木) 04:45:30
誰か暇があったらすぐできると思うし
桁数と秒数とその間に出てくる数字の数が指定できるフラッシュ暗算作って下さい><

とりあえずC#で作ったサンプル↓(.NETフレームワークが必要)
http://www.geocities.jp/i00305/flash.zip
580デフォルトの名無しさん:2006/06/01(木) 10:12:51
誰か902シリーズ以降専用で作ってやれw
581デフォルトの名無しさん:2006/06/01(木) 13:50:29
言い方が気に食わないから
たとえ1k出すと言われても作る気しね
582デフォルトの名無しさん:2006/06/01(木) 13:53:24
どういう動作するのか見たいけど、exe を実行するのは怖い。。。
583デフォルトの名無しさん:2006/06/01(木) 14:24:53
ホントだexeが入ってる((((;゚Д゚))))

・902専用
・毎回起動時に通信
・何故かアプリサイズ100K+スクラッチパッド400K

という条件でなら作ってもいい(゚∀゚)
584デフォルトの名無しさん:2006/06/01(木) 14:36:57
>579
スレ違い。
ここはアプリ作成を依頼するスレではないし、
そもそもフラッシュは対象外。
携帯コンテンツ板へでも行け。
585579:2006/06/01(木) 14:45:40
>>584
すみませんでした。やっぱり自分で作ることにします。

ちなみにフラッシュはそのフラッシュではなくて
フラッシュ暗算という暗算ゲームみたいなものの1分野です。
586572:2006/06/01(木) 14:48:24
>>577
トラステッドの契約まだ結んでないので、実機では試してないのです。

>>578
実装状況みるとたしかにDoJa4.xじゃ無理そうですね。残念
Doja-4.0 API iappli Development Kit
をみると、P.98のトラステッド動作設定に位置座標APIの許可とか
P208のプロジェクトの作成のところで
「DoJa-4.0GPS プロジェクトを作成します。」とか書かれてるんですよね。
なんとかすれば、4.0でも開発できるのかと期待してしまいました。
通常にDoJa4.0いれれば、こういったのはないんですが。
まぁトラステッドIDの設定のところも10桁とか記述ミス多いのでその類かもですが。
とりあえず、DoJa3.0でいろいろやってみます。
ありがとうございました。
587デフォルトの名無しさん:2006/06/02(金) 09:06:45
某所とマルチになって恐縮ですが質問です。
現在、Doja3.0以上の機種で動くアプリを制作中なのですが、
N902iで動作させると、アプリ実行中に動きが一瞬止まってしまうことがあります。
画像や音声のロードなど、時間のかかる処理はそこではやっていません。
N505iやN900i、他の902系などで動作させた際には、このような現象は確認されませんでした。

細かく調べてみたところ、描画(drawImage())に時間がかかることがあるようです。
1枚の画像を描画するのに数百ミリ秒もかかる場合があります。
同フレームでその前後に描画している画像や、前後のフレームでの同じ画像の描画は、特に時間がかからずに描画されています。
毎回アプリを実行するたびに、描画に時間のかかる画像やそのフレームも変わっています。

どのような原因が考えられるでしょうか?

ちなみにSystem.gc()の処理を加えても変化はありませんでした。
588デフォルトの名無しさん:2006/06/02(金) 09:50:21
>587
>細かく〜変わっています。
その様子はやっぱりGCが発動してるんじゃないかね。

>ちなみにSystem.gc()の処理を加えても変化はありませんでした。
System.gc()はソース内に書いたところのタイミングで即実行されるわけではない
ことは知ってるよね。大抵、実際にメモリが足りなくなってきたときに発動する。
描画処理はメモリを食うから、それでそのタイミングでGCが発動してる、と思われる。

例えば↓このように文字列の連結を乱発してないか見直したりしてはどうか。
for(int i = 0; i < 100; i++) g.drawString("Name" + i, 0, 0);
589588:2006/06/02(金) 10:30:42
自分にツッコミ。
>System.gc()は〜と思われる。
合ってるのか間違ってるのか微妙な説明だな。
GCが発動する切っ掛けや具体的な処理内容は実装依存だ。
590デフォルトの名無しさん:2006/06/02(金) 11:41:21
返答ありがとうございます。

試しにほとんどの描画処理を抜いた状態で実行してみましたが、
状況は何も変わりませんでした。
文字列の連結も、少なくともこの現象が発生する周辺ではやっていません。

その周辺でやっている、主な処理を記述してみます。
・画像の通常描画処理(10〜20枚程度)
・画像の拡縮描画処理(0〜2枚)
・擬似乱数取得(数フレームごとに1〜10回)
・キー状態の取得と判定(各数字キー、方向キー、SELECTキー、ソフトキー)
・フラグを判定してシーンの切り替え
591デフォルトの名無しさん:2006/06/02(金) 16:37:50
現象が発生する最小限のソースうp
592デフォルトの名無しさん:2006/06/02(金) 18:07:52
エミュだと実行できるのに実機では途中でエラーがでるのですが、
考えられる原因はないでしょうか。
593デフォルトの名無しさん:2006/06/02(金) 18:32:42
>>590
GCが発動するときってメモリ消費が蓄積された結果、発動するわけだから
その現象が発生する周辺だけが問題となるわけじゃないよ。

>・画像の通常描画処理(10〜20枚程度)
MediaImage、Imageをdisposeしてないとか。

>・画像の拡縮描画処理(0〜2枚)
自前の拡縮処理だったらピクセルデータを配列に格納してると思うけど、
配列を毎回newしてるとそれも結構影響あるんじゃないかな。
画像の大きさにもよるけど。
594587:2006/06/02(金) 19:05:19
>>591
ソースのアップは都合上できません。
使用しているライブラリ(?)の作成者に許可を貰わないといけませんので。
申し訳ないです。

>>593
解放はキッチリやっています。
解放うんぬん以前に同時にたくさんの画像を読み込みすぎ、というのならあるかもしれませんが、
505系でも問題なく動くので、その線も薄いかと思います。

あと、拡縮描画は、Graphics#drawScaledImage()を用いています。
この処理をコメントアウトして実行しても、同様に動きが止まったので、
これが直接の原因というわけではなさそうです。

>GCが発動するときってメモリ消費が蓄積された結果、発動するわけだから
>その現象が発生する周辺だけが問題となるわけじゃないよ。
アドバイスありがとうございます。
この線も含めて、引き続き調べていこうと思います。
595デフォルトの名無しさん:2006/06/02(金) 22:00:45
何回System.gc()呼ぼうともギリギリまでメモリが圧迫されるまで
メモリ回収しないって端末、過去になかったっけ?
>>587の端末もそんなんだったりして。
596デフォルトの名無しさん:2006/06/02(金) 22:42:24
半透明処理について教えてください。

エミュレータでも実機でもそうなのですが、
graphicsクラスのdrawString(String str, int x, int y) だけ
setRenderMode(int operator, int srcRatio, int dstRatio)の設定がききません。
これは仕様なんでしょうか?
文字列描画だけ半透明の対象にならないと、きいたことがないので、知ってる人いましたら教えてください。
597デフォルトの名無しさん:2006/06/02(金) 22:48:40
>>596
聞いたことないも何も、公式資料読んでないでしょ、君。
setRenderModeが適用されるメソッドは、機種依存。
F900iなんて、drawImageは半透明にできるのに、fillRectが半透明にならないんだぞ?
drawStringが半透明になる機種なんて、一つもなかったはず。
598596:2006/06/02(金) 22:55:13
>>597
機種依存なのは知ってますけどエミュでもできなかったもので・・。
半透明はImage以外は使えないってことですか?
そうなると画面フェードさせるのに黒か白のImageを用意しないとまずいですね。
こんどはdrawScaledImageで拡大させたImageが半透明きくのか不安になってきました。。
599デフォルトの名無しさん:2006/06/02(金) 23:09:09
>>598
>半透明はImage以外は使えないってことですか?

答えはNOだ。setRenderModeによる半透明は、事実上全く使い物にならない。
どうしてもフェードさせたければ、MascotCapsuleを使うがよい。
600デフォルトの名無しさん:2006/06/02(金) 23:13:41
>>599
それもちげえ。
機種依存はあるものの、D900を除けばそれなりの速度は出る。
問題はNとPが、なんとImageの半透明に対応していないということ。


まぁsetRGBPixelsとか使って自作するのが吉。
うちは起動時にsetRenderModeの働きを調査させ、対応していない部分は自作に切り替わるようにしてる。
601596:2006/06/02(金) 23:35:14
>>599
>>600
まとめると
文字列の半透明は無理
D900=半透明処理はOK。・・が重くて使えない
NP900=半透明処理がNG。
F900=半透明の実装が中途半端。Fillは(多分lineとかも)無理。

get/setPixelは実装は簡単ですけどいかにも速度が出なさそうですね。
この場合だと画面フェードはあきらめて、オブジェクトの描画のみで
半透明を使っていく方向が良さそうな雰囲気。。。。
602デフォルトの名無しさん:2006/06/03(土) 01:11:44
>>600
>機種依存はあるものの

これが嫌なんだよね…
603デフォルトの名無しさん:2006/06/04(日) 10:48:36
>>601
NP900はfillの半透明だったらできたはず。
Imageはできない。

900を切り捨てればい(ry
604デフォルトの名無しさん:2006/06/04(日) 10:59:51
キー入力を3秒だけ待つ、入力があれば変数に入力値を格納って実装、どうすればいいですかね
605デフォルトの名無しさん:2006/06/04(日) 12:09:05
ラベルの値を取得したいんだけど、どうしたらいいでしょうか

com.nttdocomo.ui.Label
にsetTextメソッドはあるのだがgetTextメソッドがない(´・ω・`)
606デフォルトの名無しさん:2006/06/04(日) 12:15:02
ageスマソ
607デフォルトの名無しさん:2006/06/04(日) 12:45:15
>>605
com.nttdocomo.uiは全体的にsetがあってもgetが無いので
呼び出し側で管理する必要があるかと思います。
608605:2006/06/04(日) 13:03:53
>>607
レスサンクス
609デフォルトの名無しさん:2006/06/04(日) 13:06:18
>>604
やめちまえ
610デフォルトの名無しさん:2006/06/04(日) 13:32:51
>>604
3秒間だけキー入力をチェックして、入力があればb変数に入力値を代入すればいい。
611604:2006/06/04(日) 13:38:11
>>609
ごめんなさいorz

>>610
ありがとうございます。
612デフォルトの名無しさん:2006/06/04(日) 13:38:50
b変数→変数
だ。
613605:2006/06/04(日) 17:32:55
無事iアプリが完成しまして、PC上のエミュレータでは普通に動いたのですが
実機(N504iS)でダウンロードしようとすると「ソフトに誤りがあります」と表示されて
ダウンロードできませんでした。

色々とググってみて、自分なりにチェックポイントを見てみたのですが、何が悪いかわかりません
■チェックポイント
・jamのAppSizeは正しいか
・jamをSJISで転送
・jamの必須項目(LastModified、AppClass、AppName、PackageURL、AppSize)を埋めたか
・jarはバイナリで転送

もしかしてiDKDoJa4.1で開発したのがマズかったのでしょうか。。
(N504iSではDoJa2.0まで対応)

ここに配置していますのでエロい方検証していただけませんでしょうか
http://larkmilds.com/slot/jugller/i_appli/
614デフォルトの名無しさん:2006/06/04(日) 17:50:20
>>613
浮動小数点使っちゃったからじゃない?
615605:2006/06/04(日) 17:54:07
ご指摘の通り、浮動小数点を使っていますorz
ちょっと試行錯誤してきますね

ありがとうございました
616614:2006/06/04(日) 18:14:19
>>615
当たって良かった。
自分はそれを探し出すのに4日間…
617605:2006/06/04(日) 18:19:44
>>616
無事ダウンロードして実行できました
自分にとって神
618デフォルトの名無しさん:2006/06/04(日) 22:54:29
浮動小数点?
619デフォルトの名無しさん:2006/06/04(日) 23:19:49
浮動小数点
620デフォルトの名無しさん:2006/06/05(月) 00:13:04
浮動小数点はDoja4.0のMIDP2.0以降だっけか?
621デフォルトの名無しさん:2006/06/05(月) 00:27:32
>>620
CLDC1.1
622デフォルトの名無しさん:2006/06/05(月) 11:35:07
CLDC1.1だと普通にMath.sqrtとか使えちゃうしな
DoCoMoもDoJaのダウンロードページを素人とか馬鹿向けに
何とかした方がいいと思う
623デフォルトの名無しさん:2006/06/05(月) 13:20:59
CLDC 1.1 API の日本語版はどこかでダウンロードできるだろうか
624587:2006/06/05(月) 18:27:12
どうも、>587です。

結論から言うと、まだ解決していません。
ですが、ある程度の進展はありました。

アプリ中、シーンAとシーンBがあるとして、
シーンBが、問題のアプリが一瞬停止してしまうシーン、
シーンAが、その前のシーンです。

(1)シーンAで「SELECTキー」または「5キー」を押す。
(2)シーンAで50フレーム経過する。

のいずれかでシーンAからBへ移行します。
問題の停止現象が起きてしまうのは、(1)でシーンを移行させたときのみのようです。
シーンAで、画像の読み込みが行われる前にシーンBに移行したのかとも思いましたが、
必要画像はそのシーンの最初に全部読み込むことになっているので、それもありませんでした。

試しに、シーンAからBへの移行を50フレーム経過のみにしてみました。
そうすると、キーを押しても(シーンの移行は発生しませんが)停止現象が起こることはなくなりました。

さらに試しに、25フレーム経過でシーンが移行するようにしてみました。
すると、キーを押さなくても停止現象が発生するようになってしまいました。

以上のことから、
「シーンAからシーンBへの移行時に、シーンAにおいてある程度の時間が経っていないと、
 シーンBで停止現象が発生する。」
という結論に至りました。

事象の発生する条件は解りましたが、肝心の原因と解決法が解っていません。
(「50フレームで移行」のみにすればいいのですが、仕様がそれを許してくれそうにありません。)
他にも同じような処理を行っている個所があるのに何故ここだけなのか、
何故N902iでしか確認できないのか、というのも謎です。
625デフォルトの名無しさん:2006/06/07(水) 00:07:04
N902iはある程度のタイミングでSystem.gc呼ばないと
1000msぐらい処理が戻ってこないときがある。
それまでのNだとそんなことないんだけどねぇ。
#呼びすぎは知らん。試してない。

単純ループでサイズの違う画像を何種か
ひたすらMediaImage.useしてImage表示する
プログラムでテストすればわかるはず。

F&Dの方がもっと止まるけどね…
626デフォルトの名無しさん:2006/06/07(水) 14:07:00
iαppli Development Kit for DoJa-4.1 を使っています。
アプリを作っているのですが、先輩からこれを使えと言われ
いくつかの class ファイルをいただきました。
どこのフォルダに置いても、シンボルを解決できないと
言われてしまいます。どうしたらいいのか教えてください。
お願いします。
627デフォルトの名無しさん:2006/06/07(水) 14:26:23
シンボルを解決すれば良いと思うよ
628デフォルトの名無しさん:2006/06/07(水) 15:07:40
もう忘れちゃったけど、DoJa4.1のエミュだったら
プロジェクトか設定のとこに「iアプリライブラリ」
とか言う項目があったはず、後はドキュメント読めば分かるよ
629デフォルトの名無しさん:2006/06/07(水) 15:27:33
>>626
その先輩にきけ
630デフォルトの名無しさん:2006/06/07(水) 17:35:13
>>627
フツーに import しているだけなのですが
解決できないようです。

>>628
もらったのが、class だけなので・・・
って、classだけでも大丈夫なのかな?
調べてみます。

>>629
ははは、まー、そうなんですが
それも含めて教育の一環だそうで・・・orz
631468:2006/06/07(水) 18:14:23
632デフォルトの名無しさん:2006/06/07(水) 18:33:29
>>630
とりあえず今週中ネットとか資料で調べて
駄目なら先輩に聞くのがいいね(´・ω・`)

つーか、俺も使ったこと無いwww
633デフォルトの名無しさん:2006/06/07(水) 18:46:05
>>630
先輩の言う勉強ってのは仕組みや動きとかを調べろってことでは?
決して2ちゃんで答えをもらって解決することを求めてるとは思えん。

たぶん簡単な間違いだよ。もう一度他のクラスを利用すると言うことの基本を見直してみてはいかがか?
634デフォルトの名無しさん:2006/06/07(水) 19:34:17
>>630
ググってもなかなかヒットしなかったもので
ここしかないと思って質問してみました。

>>633
ありがとうございます。先輩みたいです。


兎に角もうちょい調べてみます。
うまく行ったら報告させていただきます。
ありがとね、みんな。
635デフォルトの名無しさん:2006/06/07(水) 22:12:54
javaをかじったことない状態でiアプリ作成の勉強しても、無駄?
javaを基本から勉強するか、iアプリを作りながらjavaを勉強するか迷ってるんだが…
636デフォルトの名無しさん:2006/06/07(水) 22:32:54
>>635
無駄とは言わないが、癖があるよ>doja
一通りjavaに触れてからの方が良いと思う。
637デフォルトの名無しさん:2006/06/07(水) 23:22:46
おれは逆だ
DoJaのほうがJavaを勉強するのに良いっておもう
638デフォルトの名無しさん:2006/06/07(水) 23:28:37
まぁ、CLDCはシンプルだしな。
639デフォルトの名無しさん:2006/06/07(水) 23:55:22
でも初心者に固定小数点は厳しい気が。1.1ならば良いけども。
ってプログラミング経験が別にありゃ関係ないか。
640デフォルトの名無しさん:2006/06/08(木) 00:12:10
既出ですっごく下らない質問かと思うのですが、

「Linuxでiアプリの開発」って可能でしょうか?
Win/LinuxのEclipse使っています(Winでは動きます)
ググってもどうもそれらしき物が見付かりませんでした

どうかよろしく
641デフォルトの名無しさん:2006/06/08(木) 00:22:47
>>640
開発はできるんじゃね?DoJaライブラリをクラスパスに通すだけだし。
エミュが走るかどうかは知らん。
642640:2006/06/08(木) 00:33:29
Linux用のエミュって昔あったような
最近聞かないです。
確かにエミュ動かないと面倒ですよね
643デフォルトの名無しさん:2006/06/08(木) 00:43:13
>>639
すべてのアプリが小数点数を必要とする訳でもないだろう
644デフォルトの名無しさん:2006/06/08(木) 00:43:51
>>640
前にちょっと試しただけだけど開発ツール使うのは無理だと思う。
wineにJDKを入れられれば(またはLinux上のJDKが使う方法があれば)可能かもだけど。
俺はコーディングはLinux上のEclipseでやってビルドとかはVMware上でやってる。
645635:2006/06/08(木) 01:16:23
いろいろありがとです。
プログラムはCをそこそこ勉強しました。
ちょっとdojaから触れてみたいと思います
646デフォルトの名無しさん:2006/06/08(木) 02:41:04
>>645
Dojaは4.0から浮動小数も使えるよ
俺もまだ勉強中の身だけどgngr
647デフォルトの名無しさん:2006/06/08(木) 07:34:25
浮動小数点扱えると何か良いことあるの?
648デフォルトの名無しさん:2006/06/08(木) 09:02:22
>>647
浮動小数点の計算ができる
649デフォルトの名無しさん:2006/06/08(木) 09:43:09
なんで小数点数にこだわってんの?w
650デフォルトの名無しさん:2006/06/08(木) 11:59:45
携帯のjavaは最低限の機能しかつんでないから勉強には良いとは思う。
ただ実機で確実な動作をさせるのが目的であれば完全に難易度が上がるとも思うw
651デフォルトの名無しさん:2006/06/08(木) 14:06:19
>>650
携帯に慣れると、まともなプログラムが組めなくなるという側面もある(笑)
652デフォルトの名無しさん:2006/06/08(木) 15:32:26
>>651
ああ、それはわかるかもw
特にオブジェクト指向を意識した作りはあまり出来ないな、容量の問題で。
653デフォルトの名無しさん:2006/06/08(木) 15:35:17
できるだけ新人に携帯アプリはやらせたくないよなw
654デフォルトの名無しさん:2006/06/08(木) 16:48:35
ウィルコム向けのアプリを作りたいなのだけど、エミュってあります?
SUNの提供しているものだけですかね?
655デフォルトの名無しさん:2006/06/08(木) 17:40:32
656デフォルトの名無しさん:2006/06/10(土) 03:11:44
iアプリを作成中なのですが、クリアキーの取得が上手くいきません。
キー判定メソッド内で
if((1 << Display.KEY_CLEAR & getKeypadState()) != 0){
g.drawString("? ", 10, 0);
return -1;
}
としてあっても拾ってくれないのです。。。
むしろ「0」キーを拾う始末orz

環境はEclipse3.0+doja4.1です。
皆さんはどのようにして特殊キーの取得をしていますか?
アドバイスいただけないでしょうか…
657デフォルトの名無しさん:2006/06/10(土) 04:46:01
>>656
とにかく何にしてもAPIリファレンスをよく読んで。

Display.KEY_CLEARの定義値は0x20だからgetKeypadState(1)とするのが正解。
またDisplay.KEY_CLEARはあくまでオプションだということも忘れずに。
APIリファレンスでgetKeypadState()を調べよ。

>むしろ「0」キーを拾う始末
0x20=32、1を32ビットシフトしたらint型(getKeypadState()の戻り値)を越えて0。
0(すなわちDisplay.KEY_0)とgetKeypadState()の論理積をとってることになる。

>g.drawString("? ", 10, 0);
これだと文字は画面外に表示されるぞ。yはベースラインの座標。
APIリファレンスでdrawString()を調べよ。

if (((1 << Display.KEY_CLEAR) & getKeypadState(1)) != 0){
g.drawString("? ", 10, 50); //50は例として。フォントの高さより大きければよい。
return -1;
}
658656:2006/06/10(土) 12:40:35
>>657
丁寧なレスありがとうございました。
getKeypadState(1)ってそういうことだったのですね。。。
リファレンス読んでないのバレバレですね(汗)
しっかり読み込んでおきますm(_ _)m

>g.drawString("? ", 10, 0);
これはもうお恥ずかしい限りですorz
659デフォルトの名無しさん:2006/06/11(日) 22:08:21
初歩的な質問で申し訳ないのですが、気になってしまってしょうがないので教えていただけないでしょうか。
スクラッチパッド利用時のサンプルコードで、よく下記のようなコードを見かけます。
この場合、利用するスクラッチパッド領域はアプリごとに固有なものなのでしょうか?
例えば他のアプリを侵食するようなことはないのでしょうか?

try{
  int data=0;
  DataInputStream ds = Connector.openDataInputStream("scratchpad:///0;pos=0");
  data = ds.readInt();
  ds.close();
} catch(java.io.IOException i){
  System.out.Println(i.toString());
}
660デフォルトの名無しさん:2006/06/11(日) 22:26:31
>>659
固有です。公式資料くらい検索しましょう。
661659:2006/06/11(日) 22:45:13
>>660
リファレンス読んでいたのですが、見過ごしていたみたいです。
ありがとうございました。
662デフォルトの名無しさん:2006/06/11(日) 22:53:19
最初の頃の機種にそんなバグがあった気がする
663デフォルトの名無しさん:2006/06/12(月) 17:32:08
スレ違い臭いけど報告先週出たNとDの902is。
今まで以上に気になる点があったんで一応w

Nは音量がおかしい。今までの機種で通常mld再生音量100%で鳴らして
平気だったものを100%で鳴らすと音が割れるくらいの大音量で鳴る。
音量調節のないアプリは注意が必要くさい。

Dはアプリ動作中に無駄にボタンを大量に押すと理由が判らないが
処理落ちがかなり酷くなる。もともと動作の重いソフトなら判りやすい。
一応processEvent内で重い事をしていないのを付け加えておく。
664デフォルトの名無しさん:2006/06/13(火) 10:30:36
今その報告来ても対応してる暇無いな(´・ω・`)
665デフォルトの名無しさん:2006/06/13(火) 11:09:50
>>664
ま、気になったんでwここ職人とか多いしw

あれからDの処理落ちをもうちょっと調べてみたがハード的な仕様くさいかなぁ。
自作アプリだけでなくプリインストされてるアプリも関係ないキーを連打する事で
明らかに処理速度が落ちることを確認。内部でなにやっとるんだろうか・・・。
無論、関係のあるキーでも連打する事で処理おちるから連打系の操作がある
アプリには超きつい仕様くさい。

Nは仕様っていうより内臓スピーカーが酷すぎる感じだったけどw
666デフォルトの名無しさん:2006/06/13(火) 11:31:20
Dは前もキー入力激しくすると処理落ちする機械があったな。
Nは単純に端末の音量設定がでかすぎるのかもしれん。
667デフォルトの名無しさん:2006/06/13(火) 13:26:35
Dの差はスピードセレクター搭載での調整なんかな?
であればシステム側で弊害有りの最小限対応も考えられなくもないね
JAVA以外含む全アプリにイベント回り直させるのは面倒だろうし



つーか、あれ回すとPRESSのみでRELEASEは上がってこないで桶?
668デフォルトの名無しさん:2006/06/13(火) 14:36:38
スレッドの進行速度を、端末依存しないよにうにしたいのですが、
Thread.sleepを使っても、どうしても高スペックの端末の方が
速くなってしまいます。
何か良い方法ありますでしょうか。

ちなみに、落ち物パズルを作っているので、速度の差がはっきりしてしまうと
まずいと思うのですよね。
669デフォルトの名無しさん:2006/06/13(火) 14:52:53
あれ、D900って Content-Type 指定して通信しないと通信失敗する?

con = (HttpConnection)Connector.open(url, Connector.READ, false);
con.setRequestMethod(HttpConnection.GET);
con.connect();

これだけなんだが動かん(´・ω・`)
670デフォルトの名無しさん:2006/06/13(火) 14:54:54
>>668
メインループの描画以外の部分をスキップした分余計に回すか、
処理側で時間を計測して移動量を割り出す
671デフォルトの名無しさん:2006/06/13(火) 15:07:56
>>669
POSTでやってみたら?
672デフォルトの名無しさん:2006/06/13(火) 17:27:21
誘導されたのでこちらで質問させてください。
iアプリで自局(自分の電話番号)を
取得しようと調べているのですがみつかりません。
これって取得可能なのでしょうか?
com.nttdocomo.system や phonebookあたりが
怪しいと思ったのですが見つけきれませんでした。
673デフォルトの名無しさん:2006/06/13(火) 17:36:55
>>672
そんなのあったら恐くてアプリ使えない罠
674デフォルトの名無しさん:2006/06/13(火) 17:42:24
>>672
>>2の公式サイト行って
iアプリコンテンツ開発ガイド for DoJa-4.x 詳細編読め
あとFAQのとこでトラステッドiアプリについて調べて来い(゚∀゚)
675デフォルトの名無しさん:2006/06/13(火) 18:27:00
調べてみました。
自分の電話番号も電話帳経由で取得するということでしょうか。
com.nttdocomo.system.PhoneBook

public XString[] getPhoneNumbers()
index 指定しないで(引数無しで)呼び出せば自局の
電話番号かえってくということなのかな?
僕みたいなへたれにはもう少し詳しく説明かかれてないと、
理解できませんでした。タブンこれでいいですよね?
676デフォルトの名無しさん:2006/06/13(火) 18:42:42
>>675
へたれなら、急がずじっくり書類に目を通せよ・・・・。

ぶっちゃけると・・・個人レベルではトラステッドiアプリを動作させる事は不可能。
公式サイトに登録されてるIPにのみ許可されている機能だ。あきらめれ。
677668:2006/06/13(火) 21:24:17
>>670
ありがとうございます。
参考になりました。
678669:2006/06/14(水) 11:25:09
気になって調べてみたら、俺の作ったアプリの通信全部失敗するっぽい(´・ω・`)
例外をトレースしてみたところ以下のような感じに…

GETを指定:例外のルートに入っているはずなのに何も出力されず
POSTを指定:java.lang.IllegalArgumentException: Illegal request method for mode 1
Content-Type に"application/octet-stream" を指定
(ダウンロードしようとしてるのは独自形式のdatファイル)
 :com.nttdocomo.io.ConnectionException: Illegal header

で、経験者にお聞きしたいのですが
・D900iで上記は仕様通りか否か
・MIMEの問題?
・他でエラーが出てるんでねーの?
・むしろ俺のD900iがおかしい

どの辺疑えば良いでしょうか(´д`)
ちなみに全アプリ、他の端末では正常に動いております。
679デフォルトの名無しさん:2006/06/14(水) 11:36:34
D900iなんて端末はこの世に存在しません。忘れなさい。

ところで、サーバ側で Content-Length をちゃんと付けてる?
680669:2006/06/14(水) 11:41:06
>>679
Content-Lenthは見てないな…調べてみます。

今過去アプリ一通り動かしてみたら、
どうもappStartからwhileループしているアプリのみ失敗しているっぽい感触が。
timer使ったメインループのアプリだと動いてます。
これが原因だったら修正でっかいなぁ・・・
681デフォルトの名無しさん:2006/06/14(水) 14:51:07
スピードセレクターの設定をOFFにしても動くアプリがあるんだけどさ、
スピードセレクターってアプリ側からどうやって感知してるの?
偉い人、教えてください。
682デフォルトの名無しさん:2006/06/14(水) 15:33:13
>>669
> con = (HttpConnection)Connector.open(url, Connector.READ, false);
HTTPではtrueにしろとガイドに書いてある。
これが原因じゃないかもしれないけど、
少なくともガイドに明記されていることには従うべき。
683669:2006/06/14(水) 15:57:30
>>682
申し訳ない、そこテスト中のをコピッたのでコピペミス。
通常trueにしてます。
どちらにしてもNGなのでこれが原因では無いらしい。
それとContent-Lengthはサーバ側からちゃんと取得できてました。

現在簡単なサンプルでタイマーを使ったメインループと、
appMainのメインループで検証中。。。
684669:2006/06/14(水) 16:00:20
appMainとかappStartって手前でつけた関数名だった(´д`)
IApplication#start のことでつ
685669:2006/06/14(水) 16:12:24
荒らして申し訳ない。原因ほぼ特定できた。
フォントの問題っぽい。
通信できてるアプリはtinyフォントしか使っていなく、
NGなのはsmallフォントを使用してる。
もうちょい調べてみます
686669:2006/06/14(水) 16:31:30
ダメだったところ。
Graphics2 g2 = (Graphics2) getGraphics();

初回起動に限り通信が先に始まってしまうのが勘違いの元だったようで…
ご迷惑をおかけしました_| ̄|○
687デフォルトの名無しさん:2006/06/14(水) 16:48:32
現行の機種(505〜900i〜901iくらい)に対応出来るアプリを作るには
Dojaの何番をDLすればよいの?
688デフォルトの名無しさん:2006/06/14(水) 16:51:00
3.0以前だけどそれ以上でも非サポートAPIを使用しなければ問題無し。
689デフォルトの名無しさん:2006/06/14(水) 16:54:06
>>688
すばやい解答ありがとう
早速DLしてきまつ
690デフォルトの名無しさん:2006/06/14(水) 17:20:33
>プロジェクト Hello_iApp に、必要なライブラリー 'C:\iDKDoJa4.1\lib\profile\DoJa-4.1\classes.zip' がありません。
>プロジェクト Hello_iApp に、必要なライブラリー 'C:\iDKDoJa4.1\lib\profile\DoJa-4.1\doja_classes.zip' がありません。

こんなエラーが出たんだけども、DojaってD:にインストしちゃだめだった?
691デフォルトの名無しさん:2006/06/14(水) 17:36:52
↑解決しました、すいません
692デフォルトの名無しさん:2006/06/14(水) 17:56:56
Doja4.1のエミュ起動させっぱなしにしとくと
滅茶苦茶PCが重くなったりしない?
693デフォルトの名無しさん:2006/06/14(水) 18:07:03
>>692
なる
694デフォルトの名無しさん:2006/06/14(水) 21:44:06
iアプリの開発についてドコモに問い合わせたいのですが、
「作ろうiモードコンテンツ」のサイトを見ても
それらしいメールアドレスが見当りません。

問合せ先、問い合わせ方について、
ご存知の方がおられましたら教えていただけないでしょうか。
695デフォルトの名無しさん:2006/06/14(水) 21:47:10
>>694
俺に聞け
696デフォルトの名無しさん:2006/06/14(水) 21:49:57
106
697デフォルトの名無しさん:2006/06/15(木) 03:03:46
>>689
4.0と4.1は止めとけ
698デフォルトの名無しさん:2006/06/15(木) 07:37:47
>>697
なぜ?
699デフォルトの名無しさん:2006/06/15(木) 12:00:31
>>698
4.0はメモリ使用量ががんがん増えたことがあった
4.1は落ちることがあった
700デフォルトの名無しさん:2006/06/15(木) 12:57:20
確かに4.0以降のエミュは出来が悪い。
今でも3.5が手放せないなw
701デフォルトの名無しさん:2006/06/15(木) 16:44:46
Canvasで無限ループ回しながらゲーム画面描画しているんですけど
while(true)の中でprocessEvent()が呼ばれないことってありますか?
702デフォルトの名無しさん:2006/06/15(木) 16:56:43
>>701
質問の情報が少なすぎ。
何がどうなったからそう考えたのか判らん限りアドバイスなんて無理

ちゃんと作ってるならループとか関係なく割り込みはちゃんと発生する。
703デフォルトの名無しさん:2006/06/15(木) 17:18:12
失礼、メイン処理にwhile(true)使って書いていたんですが
メイン処理中にwhile(true)の記述があるとprocessEvent()が呼び出されないという現象が
空の無限ループでも呼び出されない状況です
他のテストアプリだとprocessEvent()が正常に呼び出されるので
IApplicationクラスの処理が問題だと思うのですが・・・
原因探してみます
704デフォルトの名無しさん:2006/06/15(木) 19:05:17
>>703
お前さんの問題。
必ず何処かで processEvent を止めてる。
705デフォルトの名無しさん:2006/06/15(木) 19:14:46
そういえば IApplication クラスの中で処理なんて
入門以外やってないなあ。
706デフォルトの名無しさん:2006/06/15(木) 21:53:47
>>687-689

↑ これがやがてこうなる ↓

>>613-617

よって>>697が正解
707デフォルトの名無しさん:2006/06/15(木) 23:49:40
>>703
IApplication.start()の中で無限ループに突入してないか?
Thread作ってその中でループまわしたほうが、機種依存の問題含めて回避しやすいぞ
708デフォルトの名無しさん:2006/06/16(金) 11:32:32
質問ですこのやろー
アプリの赤外線て何メートル飛ばせるのだ?
携帯同士をくっつけないと使えないのか?
おせーて
709デフォルトの名無しさん:2006/06/16(金) 11:36:25
携帯のマニュアル嫁(゚∀゚)
710デフォルトの名無しさん:2006/06/16(金) 11:38:18
>>709 書いてあんのかよ 機種により違うんじゃね?
最低何メートルとぶかおせーろ
711デフォルトの名無しさん:2006/06/16(金) 11:46:32
最低は電池が切れてる時の0mですw
712デフォルトの名無しさん:2006/06/16(金) 11:49:12
そうだね、ウンコおいしいね
713デフォルトの名無しさん:2006/06/16(金) 11:50:08
>>711  正解 
解決しました
ありがとう 2ちゃんの愉快な仲間たち
714デフォルトの名無しさん:2006/06/16(金) 12:10:05
>>704
ありがとうございます。どうやらそうらしいです。
ループの種類を問わず、ループの中に入ると processEvent が止まってしまうので。

>>707
無限ループ使ってるのはCanvasの中だけです。
IApplication#start() → MenuPanel → Canvas
と切り替えているのですが、この辺が原因かな・・・未だに分かってない。

別Threadを作ってその中に無限ループというのが、いまいちよく理解できてません。○| ̄|_
CanvasにRunnableを実装して、Canvasに切り替える時に new Thread() するのでしょうか?
715デフォルトの名無しさん:2006/06/16(金) 12:21:15
>>714
Canvasのどのメソッドに無限ループ作ってんだよ

普通は明示的に指定しない限り、Threadは1つしか存在して無いんだよ
その1つのThreadでprocessEventも呼び出されている
# メーカーや機種によっては違うのもあったけど

だからそのThreadで無限ループに入っちゃうと
processEventは送られなくなることがあるんだわ
716デフォルトの名無しさん:2006/06/16(金) 15:19:05
>>714
MenuPanel → Canvas のトコで
IApplication#start を呼んでるに100ガルガ

前にもそんなネタあったな・・・
717デフォルトの名無しさん:2006/06/16(金) 15:24:16
あった。
>>211-212
コレじゃね?
718デフォルトの名無しさん:2006/06/16(金) 15:49:37
えっ。
iアプリって、スレッド1つしかなくても、processEvent() は割り込みで処理されるの?
ということは、場合によっては何か描画中でも強制的にキャンセルされたりするわけ?
719デフォルトの名無しさん:2006/06/16(金) 16:49:34
>>715
無限ループのメソッドは描画と計算をまとめたメソッドに書いてます。paint()とは別のに。
一応CanvasにRunnable実装して、CanvasでprocessEvent()呼び出されるの確認しました。
でも他のCanvasクラスが複数使う予定なので、それぞれにThread使うと容量増えそうですね・・・
まだ改良が必要かな。

色々とありがとうございました。m(_ _)m
720デフォルトの名無しさん:2006/06/16(金) 17:45:44
>>718
そりゃそうだ。
だからキー押下に対する反応はメインの無限ループで行ない、processEventでは「キーが押されたよ」というフラグ変数を書き換えるのみにしなければならない。

>>719
絶対processEvent系のもので無限ループやってる。
IApplication#start()で無限ループやっていれば、processEventもちゃんと呼ばれる。
721デフォルトの名無しさん:2006/06/18(日) 22:47:41
質問 複数人&何通も送れるメーラー作りたいんだが
ソースどっかにないかね?
送れるだけのソースでもイィんだが
722デフォルトの名無しさん:2006/06/18(日) 23:04:41
通報しますた
723デフォルトの名無しさん:2006/06/19(月) 11:10:37
httpしかしゃべれないんだから無理だろ
724デフォルトの名無しさん:2006/06/19(月) 11:57:19
>>721
iアプリでは無理。間接的に言えばCGIでやれ。

そしてそれはiアプリの分野じゃないから他へいきなさい。
CGIの起動なら携帯のブラウザでいいわけだから。
725デフォルトの名無しさん:2006/06/19(月) 12:03:58
俺俺詐欺の業者に優しすぎだよおまいら
726デフォルトの名無しさん:2006/06/19(月) 13:10:21
CGIじゃ意味ないんだな
電話帳起動してチャット感覚にメーラー作りたいのよ
やっぱ無理な話?
727デフォルトの名無しさん:2006/06/19(月) 14:00:42
無理かもと思った時はサーバを使う。
iアプリの基本だな。
728デフォルトの名無しさん:2006/06/19(月) 14:14:24
かなり長旅になりそす ありがとう やってみますよ
729デフォルトの名無しさん:2006/06/19(月) 17:02:54
スクラッチパッドのデータ分割を、
100, 500, 30000, 180000, 70000, 30000, 20000
と、いうようにして、データを格納するように作ったのですが、
180000 と、指定したパーティションに格納したデータが読み取れなくて困っています

エラーは、com.nttdocomo.ui.UIException で、
getStatus() で参照すると、NO_RESOURCES が返ってきます。

180kの領域には、現在、70kほどの データを2つ格納して使用しているのですが、
どうやら、先頭バイトから書き込んだほうのデータが読み取れなくなってしまうようです
データは、画像データを連結させたものです

データを参照するアドレスも、SPサイズの制限を越えていないかも、確認しましたが、すべて正しい数値でした
もともと、別々のパーティションにわけていたのを1つにまとめた途端に起きるようになってしまったので、
何か、アプリ制限項目に触れているのだと思うのですが、リファレンスを読んでみても原因がわかりません

150kまでの、通信制限が適用されているのか、とも思って150k以下に変えてみたりもしたのですが、直りませんでした
どなたか、原因に心あたりがある方がいましたら、教えていただけませんか?

使用している環境は、Doja 4.1 J2SE 1.4.2_12 です。
730デフォルトの名無しさん:2006/06/19(月) 17:23:33
>>729
詳しいことはしらんが「NO_RESOURCES」返ってるんだろ?
まんまメモリーの使いすぎなんじゃね?リソースの確保の失敗だろう?
一度に使える量には限度があるぞ?

UNSUPPORTED_FORMATならファイルに異常があるんだろうけど。
731デフォルトの名無しさん:2006/06/19(月) 17:42:33
>>729
テストに700系を使ったに一票
732729:2006/06/19(月) 18:02:57
>>730
>>731
いえ、エミュレータでの起動でエラーが出てます
空きメモリは常に追えるような状態にしてあり、容量は十分確保されているはずなのですが。。。
ためしに、ヒープの設定を16000とかにして動かしてみたんですが、直りませんでした
733デフォルトの名無しさん:2006/06/19(月) 18:06:32
>>729
だったらバイナリエディタでxxxx3.srcファイル見てみりゃわかるでしょ
作られてなければjamの問題。
734デフォルトの名無しさん:2006/06/21(水) 23:00:55
eclipse3.1.2とdoja3.5、jdk1.4.2で開発してんるんだけど、
どうしてもADF設定のAppSizeが「0」になってしまってエミュが起動しません。
回避策は無いものでしょうか?

735デフォルトの名無しさん:2006/06/22(木) 00:39:17
doja3.5で範囲の決まっている乱数を生成するときってどうしてる?
doja4.1だと
Random rnd = new Random();
int tmp = 0;

tmp = rnd.nextInt(100);
で出来るよね?
736デフォルトの名無しさん:2006/06/22(木) 01:05:06
>>734
プロジェクトのプロパティでコンパイラのバージョンを1.3に
>>735
Math.abs(rand.nextInt())%100
737デフォルトの名無しさん:2006/06/22(木) 01:07:58
厳密な値にはならないけど、

/**
* 0〜n-1までの乱数を返す
* @param n 期待する乱数の最大値+1
* @return 生成された乱数
*/
private static int random(int n)
{
return (rnd.nextInt() & Integer.MAX_VALUE) % n;
}

/**
* min〜max-1までの乱数を返す
* ただし max > min であること。
*
* @param min 期待する乱数の最小値
* @param max 期待する乱数の最大値+1
* @return 生成された乱数
*/
private static int random(int min, int max)
{
return random(max-min)+min;
}

みたいにするのはどうだろうか。
738734:2006/06/22(木) 07:38:53
>>736
ありがとうございます。
仰る設定で無事に起動しました。
739デフォルトの名無しさん:2006/06/23(金) 09:48:41
>>739
それ、精度悪すぎる。
0〜15億の値が欲しい時にそれやると、0〜6億のほうが、6億〜15億より2倍も出やすくなるぞ
740デフォルトの名無しさん:2006/06/23(金) 10:17:54
>>739
アンカーはちゃんとつけようぜ。


自分好みの乱数にしたかったら自作しろってことだな。
741デフォルトの名無しさん:2006/06/23(金) 10:38:10
0〜15億の乱数って一体どんな局面で必要なんですか('д')?
742デフォルトの名無しさん:2006/06/23(金) 10:59:26
理解するのに3分かかった俺はオバカ


必要なら、Integer.MAX_VALUE - (Integer.MAX_VALUE % n) 以上の値が出たら
振りなおしとかしなければならんのか。
携帯Javaでどの程度出番があるのかはわからんが。
743デフォルトの名無しさん:2006/06/23(金) 16:13:09
iアプリのゲームを作っているのですが、スクラッチパッドから画像を読み込むのがうまくいきません。

下のコードは2つの画像(image.gif、image2.gif)をダウンロードしてスクラッチパッドに書き込んだ後、
スクラッチパッドから画像取得してそれを画面に描画するというものですが、データ1(image.gif)読み込み時にエラーが出るらしく
それを通知するエラーダイアログが出て終了してしまいます。
どうすればいいのでしょうか?

http://newsstation.info/up/img/ns10375.txt
744デフォルトの名無しさん:2006/06/23(金) 16:43:53
httpCon.getLength()
があやしい。
745743:2006/06/23(金) 17:14:05
2つ目の画像のバイトサイズをsizeに入れてました。
指摘されたところを修正したら直りました。ありがとうございます。
746デフォルトの名無しさん:2006/06/23(金) 23:30:43
サンプルのソースコードを公開しているサイトでお勧めのサイトってありませんか?
特に知りたいのはメニュー関係とphpを使ったDB連携あたりなのですが。
747デフォルトの名無しさん:2006/06/24(土) 12:43:08
>746
メニュー関係…
そんな抽象的なサンプルはない。
パネルなのかキャンバスなのか、文字なのか画像なのか、数字選択なのか方向キー+セレクトキーなのか。
UIの設計なんて十人十色。自分の好きにやれ。

phpを使ったDB連携…
これはiアプリと関係ない。
強いて言えばhttp通信のやり方を調べればいい。

あんたが探してんのはサンプルじゃなくて自分の都合にあった答えばかりだな。
748デフォルトの名無しさん:2006/06/24(土) 13:19:41
>>742
Math.abs(rand.nextLong())%n
これでいいじゃん
実際0〜15億の乱数が必要な機会があるとは思えないけどw
749デフォルトの名無しさん:2006/06/24(土) 14:42:43
清々しいまでの力技解決吹いたw
まったくもってごもっともだ。
iアプリJavaでrandom#nextLong()って使えたのにビビった。
750デフォルトの名無しさん:2006/06/24(土) 15:46:31
>>586さん、その後はいかがですか?
Doja-3.0入れてみたらGPSアプリも作れそうな感じですが、
トラステッド契約しなければ、SA700iSなどでGPSを動かせないのでしょうか?
751デフォルトの名無しさん:2006/06/24(土) 21:58:06
なにも言わないけど
http://milky.geocities.jp/pino8886/
ココおすすめ
無料アプリあるよ
752デフォルトの名無しさん:2006/06/25(日) 00:45:10
>>751
すまんな、iもVもBREWも開発をしているが、
俺自身はアプリの動かない携帯使ってるんだ(´・ω・`)
753デフォルトの名無しさん:2006/06/25(日) 01:06:48
Eclipseでiアプリ作成を始めた初心者ですが、実行しようとしたら
「AppSize(=0)<1 なので NG です」ってエラーがでました・・・んでぐぐったら
解決法が見つかって(コンパイラー準拠レベルを1.3にする)無事起動できたんですが
皆さんこの設定でやってるんですかね・・・?
754デフォルトの名無しさん:2006/06/25(日) 02:12:10
皆さんその設定でやっています。
安心しれ。
755デフォルトの名無しさん:2006/06/25(日) 02:26:46
>>754
そうですか、安心しました
756デフォルトの名無しさん:2006/06/26(月) 14:13:32
>>752
586じゃないけど、SA700でGPS使ってる。
トラステッドじゃないと動かんよ。
iエリアと同じ感じでhtml側でGPS起動させれば一般でも使えると思われ。
757デフォルトの名無しさん:2006/06/26(月) 17:42:18
>>756
ブラウザから起動ならGPSが使えるで桶?
あってるなら903楽しみだ
758デフォルトの名無しさん:2006/06/26(月) 19:00:20
ブラウザでならauで出来るのは知ってるけど
ドコモだと一回一回操作が必要だったんじゃないかな
759デフォルトの名無しさん:2006/06/30(金) 03:02:55
D900iでGraphics.FLIP_ROTATEは使用可能でしょうか?

FLIP_ROTATEは基本APIに移行しているはずなので、実装していると思うのですが
「 iアプリコンテンツ開発ガイド for DoJa-3.5 各機種オプションAPI・拡張API実装状況 」
を読むと、Graphics2.FLIP_ROTATEがD900iでサポートされていないようです。
Doja2.0と互換性を維持するために実行できないようにしているのも変な気もしますし、
ちょっと、心配になりました。

実機が手元に無いためテストできないので困っています。
760デフォルトの名無しさん:2006/06/30(金) 10:39:32
>>759
基本APIなので問題なく使用できる。
761デフォルトの名無しさん:2006/07/03(月) 16:24:36
糞D900iの仕様ぽいの発見した。
DataInputStreamのインスタンスを生成するときに
コンストラクタにInputStreamを放り込めなかったりするぽい。
誰か、同じ症状出た人、いる?

ダイヤモンド氏ね。
762デフォルトの名無しさん:2006/07/03(月) 16:37:03
携帯アプリ作る時はなるべく
コンストラクタに重い処理は置かないのが基本(´・ω・`)
763デフォルトの名無しさん:2006/07/03(月) 16:49:48
ダイアモンド市ねで1000目指すスレとか立てたら、それなりに書き込む奴がいそうな気がしないでもない。
D902とか人気機種らしいけど、アプリ的に相変わらずDはガンのままなの?
764デフォルトの名無しさん:2006/07/03(月) 16:54:41
D902は性能いいよ。
何故なら902からはOSが統合されたから、D特有の妙な重さがなくなったからね。

それよかN市んでほしかっ"た"でなら1000目指せるかもしれん。
液晶サイズが一人だけ違かったり、時間解像度がいつまでも100msだったり…
765デフォルトの名無しさん:2006/07/03(月) 16:57:52
>>761
放り込めてますが。
766デフォルトの名無しさん:2006/07/03(月) 17:02:21
>時間解像度がいつまでも100msだったり

マジカ!
Nの中の人は脳沸いてるのと違うか。
767デフォルトの名無しさん:2006/07/03(月) 17:02:27
糞携帯をいくつか挙げろって言われたら個人的には
D900がぶっちぎりで、次いでN504、N、P900だな。
768デフォルトの名無しさん:2006/07/03(月) 17:12:12
D900iは 900D に改名するべきだな。
769デフォルトの名無しさん:2006/07/03(月) 17:27:26
N504 はヤバかったなあ。
遅いわ遅いわメモリ無いわで以下省略。
770デフォルトの名無しさん:2006/07/04(火) 07:16:49
時給1000円でJava教えてくれるヒトを募集します
場所 所沢(池袋・高田馬場から直通)
よろしくおねがいします
i−want−to−study−java@hotmail.co.jp
(メールまたはMSNメッセでご連絡ください)
771デフォルトの名無しさん:2006/07/04(火) 07:19:08
こりゃまたすごい釣りだ
772デフォルトの名無しさん:2006/07/04(火) 09:13:29
しかも何故Javaの死亡遊戯塔iアプリスレに。
773デフォルトの名無しさん:2006/07/04(火) 11:17:41
あえて釣られてみるがプログラミングは人から教わるより
自分でとりあえずなんでも組んでみるほうが100倍早く身につくよ。
それが無理っていうならプログラマに向いてない。
774デフォルトの名無しさん:2006/07/04(火) 11:31:36
>>773
プログラム教室の求人広告でしょ
775デフォルトの名無しさん:2006/07/04(火) 17:50:06
高田馬場ってゲイの集まるところでしょ
776デフォルトの名無しさん:2006/07/04(火) 18:30:46
ゲイは新宿2丁目じゃね?
高田馬場は朝鮮人とか中国人だった気がする。
777デフォルトの名無しさん:2006/07/04(火) 19:42:56
携帯エミュで開発しています。
javadocにMailAgent.getLastIncoming()メソッドで
最新未読メールがMailクラスで取得できると書いてあるんですが、
受信フォルダにあるメールをMailクラスで取得するにはどうするのでしょうか?
778デフォルトの名無しさん:2006/07/04(火) 23:20:06
セキュリティや個人情報に関することはトラステッドiアプリじゃないとできない。
779デフォルトの名無しさん:2006/07/04(火) 23:31:32
エミュレーターならDXモードが使えるってのに
糞知識で話す馬鹿がいるな
780デフォルトの名無しさん:2006/07/04(火) 23:56:30
エミュレータではメールの受信も送信もできないけどね。
781デフォルトの名無しさん:2006/07/05(水) 00:06:34
↑メール送受信のエミュレート出来たんじゃない?
めんどくさいからドキュメント読み返さないけど
782777:2006/07/05(水) 00:33:43
>>778
設定でトラステッド用のクラスは扱えます。
受信フォルダにアクセスするメソッドはわかりませんか?
783デフォルトの名無しさん:2006/07/05(水) 07:16:55
よく知ってそうな>>779が教えてくれるんじゃない?
784デフォルトの名無しさん:2006/07/05(水) 10:04:27
>>770
1対1なのか、複数の生徒を教えるのか ソレが問題だ
785デフォルトの名無しさん:2006/07/05(水) 10:55:58
誤情報を流す上に質問に回答できなくて情けなさ過ぎるから困らない
786デフォルトの名無しさん:2006/07/05(水) 11:13:03
おまいら何の話をしてるんだ。

時に受信Boxなんてアクセスできたっけか?
MailAgentに関連機能が無い以上不可能だと思うが。
787デフォルトの名無しさん:2006/07/06(木) 02:05:04
>>786
うん。MailAgentで受信Boxにはアクセスできないよ。
788デフォルトの名無しさん:2006/07/06(木) 08:04:41
つまり>>777は不可だと?
789デフォルトの名無しさん:2006/07/06(木) 23:04:31
>>788
そうだね。
getLastIncoming()で、受信BOXの最新未読メールは取得できるけど。
790デフォルトの名無しさん:2006/07/08(土) 22:47:58
どなたかオススメのピンボールゲーム教えてください
できれば落としきりで
791デフォルトの名無しさん:2006/07/08(土) 22:53:19
最高にド低脳な発言してください in ム板(XIII)
http://pc8.2ch.net/test/read.cgi/tech/1148297648/
792デフォルトの名無しさん:2006/07/11(火) 18:08:57
>>789
Mailクラスの意味がほとんどないね
793デフォルトの名無しさん:2006/07/12(水) 15:22:57
超遅レスなんだけれど
>>720
>絶対processEvent系のもので無限ループやってる。
>IApplication#start()で無限ループやっていれば、processEventもちゃんと呼ばれる。

IApplication#start()で無限ループやって、Canvas#paint()をIApplication#start()から呼ぶってこと?
素で分からん
794デフォルトの名無しさん:2006/07/12(水) 15:48:11
>>793
お前はprocessEventからCanvas#paint()をどうやって呼んでいるんだ?
795デフォルトの名無しさん:2006/07/12(水) 16:01:38
わり、思考が飛んだ

IApplicationの方で無限ループ回してもCanvasには影響しないよな
キー処理や再描画のタイミングはどう計ってるのかなと
796デフォルトの名無しさん:2006/07/12(水) 16:40:30
いくらでも作りようがあるのだけれど・・・
俺はキー処理はprocessEventとgetKeypadStateの両方をマージしてメインループで処理、
再描画もメインループの中で直接paintを呼んでる。
797デフォルトの名無しさん:2006/07/12(水) 16:53:20
>>796
感謝
IApplication#start()の無限ループからそういうことしていいのか分からんかったもんで
798デフォルトの名無しさん:2006/07/13(木) 16:31:48
すげーアフォなこと聞くけど、

iアプリの基本的な作り方って、ロジックは全部 IApplucation#start() で無限ループ作って処理して、
イベントハンドラは各拡張クラスの Canvas#processEvent() でフラグ立てるのが定石?

すると、Canvas#paint() が描画するときは、
フラグは全部IApplicationクラスにあって、それをみながら自分が描画すべき画面を書くと。

いや、むしろ Canvas クラスを2個作ったりしてはいけないのか?
アプリとしては、IApplication と、Canvas クラスの拡張クラスが1つづつが理想型?

う〜ん、いまいち定石が見えない。。。
799デフォルトの名無しさん:2006/07/13(木) 16:54:17
CanvasにRunnableをimplementsしてrun()にメインループを入れてIApplication#startでthread.start()
するのはイレギュラー?
800デフォルトの名無しさん:2006/07/13(木) 17:19:23
>>798>>799
何が基本で何がイレギュラーかはさておき、俺は>>799の方法でやってる。
Canvas拡張クラスじゃないとイベント関係がややこしいし。

>すると、Canvas#paint() が描画するときは、
>フラグは全部IApplicationクラスにあって、それをみながら自分が描画すべき画面を書く

変数は全部Canvas側に持たせる。
あと、Canvas#paint()は使わない(Canvas#repaint()が暗に呼ばれることがあるので)。
初期化時にgetGraphics()で取得したGraphicsオブジェクトを保持しておいて、ループ内で
描画処理もやっちゃう。

>アプリとしては、IApplication と、Canvas クラスの拡張クラスが1つづつが理想型?

その通り。
801デフォルトの名無しさん:2006/07/13(木) 17:36:23
それだとソフトバンクの移植が面倒ジャマイカ?
802デフォルトの名無しさん:2006/07/13(木) 18:12:10
>>801
>Canvas#paint()は使わない(Canvas#repaint()が暗に呼ばれることがあるので)。
>初期化時にgetGraphics()で取得したGraphicsオブジェクトを保持しておいて、ループ内で
>描画処理もやっちゃう。

この辺の事か。
あ、俺は>800じゃないけど、作りは>800と同じかな。

ソフトバンクはsetCurrentでpaintコールされないんだっけか。
あんまり気にしなかったけどメインループの描画関数を
repaint()に変えるだけですんなり動いたけど、どーなんだろ。
803デフォルトの名無しさん:2006/07/13(木) 19:58:58
RunnableをimplementsしたCanvasを2つ作るくらいなら、関数化して1つにまとめちゃった方がいいのね
804デフォルトの名無しさん:2006/07/13(木) 20:11:10
1つで足りるわけだが
805デフォルトの名無しさん :2006/07/13(木) 23:23:22
Graphics3DでWizardryのようなダンジョンを作成したのですが、
処理が重く、軽量化も捗らないので意見を聞かせて下さい。

現在考えているのは、
・1回の前進、及び回転に6回描画を行う
 (滑らかにできる程よいですが、大体こんなもんだろうと思ってます)
として、下記処理を行っています。

・Primitive1個のサイズ;180x180
 テクスチャのサイズ;60x60
@1壁につき、Primitive1個として、画面上に見える平均10枚を描画。
 各Primitiveは1度だけgetVertexArray()で位置を指定。
APrimitive1個で壁1枚描画する度にgetVertexArray()で位置変更して
 画面上に見える平均10枚を描画。

いずれも前進はTransformのlookAt()、回転はrotate()で視点を変更しています。
携帯はP901、SH901で試しました。
ソースを書くと長いのでかなり要約してますが、
何かお気づきの点があればレス頂ければと思います。
806デフォルトの名無しさん:2006/07/14(金) 08:26:03
>>805
・getVertexArrayには、1回ごとに設定するのではなく、全部の壁を1度に設定して
まとめて描画するようには出来ない?
・描画するときは、手前側の壁から描画するのがセオリー。奥の隠れる箇所の処理が省かれるから
・901の3Dは速くないから、全画面描画のようなのをやるのは辞めといた方がいいと思う。特にSH
807デフォルトの名無しさん:2006/07/14(金) 10:17:34
>>805
基本的に、Primitiveはまとめて描画しないと遅い。
1枚を10回描画するんじゃなくて、10枚を1回描画するほうが圧倒的に速い。

あとは描画するPrimitiveの数を減らす工夫だね。
完全に画面外に出てるものはそもそも描画しないようにしましょう。
808デフォルトの名無しさん:2006/07/14(金) 11:50:11
そもそも2Dにした方が速い('з')
809798:2006/07/14(金) 13:39:15
メイン画面、タイトル画面、オプション画面 とかの画面を、
3つのCanvasクラスを使って書くのはもしかして主流ではない?
810デフォルトの名無しさん:2006/07/14(金) 14:04:22
ない
811798:2006/07/14(金) 14:25:33
やっぱりそうなのか。。。

どうやってコードの可読性をあげるの?
むしろ、慣れればなんてこたーないってやつ?
812デフォルトの名無しさん:2006/07/14(金) 14:32:08
KIAI
813デフォルトの名無しさん:2006/07/14(金) 14:33:16
可読性上げたいならイベント管理のクラスを別に設けるべきでは?
Canvasを継承する必然性が理解できない。
814デフォルトの名無しさん:2006/07/14(金) 14:47:06
>>813
容量の制限が厳しい以上、クラスの数を最小限に抑えるべきだ、という圧力は
常に感じる。
815デフォルトの名無しさん:2006/07/14(金) 14:50:34
816デフォルトの名無しさん:2006/07/14(金) 15:13:02
Display.setCurrentすると一瞬真っ白になってカコワルイからCanvasは1つ
それにいくつもCanvasを作るとメモリの無駄だし、OOP的にもおかしいと思うけど。あくまで描画するためのクラスなんだから。
817デフォルトの名無しさん:2006/07/14(金) 17:31:53
>>816
Display.setCurrentした直後に発生するpaintを処理すれば
真っ白にならなかったような。
818798:2006/07/14(金) 18:18:08
>>813 >>816

なるほど。目から鱗。
イベントハンドリングしたいだけならそれ専用のインターフェイスを作って継承しろってことか。
わざわざCanvasを継承する意味は全くないね。

さらに、>>814 の言うことももっともで、クラスや関数を増やすとアプリサイズがぁぁ。ってのは俺も理解はしているつもり。
でもそれでも、可読性が下がるってのは俺みたいなアフォプログラマだとバグの温床になるので避けたいジレンマ。
819デフォルトの名無しさん:2006/07/14(金) 18:47:03
携帯やるならN504で鍛えるべきだよなw
820デフォルトの名無しさん:2006/07/14(金) 19:43:01
はいはいそうですね
821デフォルトの名無しさん:2006/07/14(金) 23:53:22
NECちょっと来いで1000目指すスレとか立てていいですか。
822デフォルトの名無しさん:2006/07/15(土) 00:25:06
N504もN900もそのうち忘れ去られる存在だし
823デフォルトの名無しさん:2006/07/15(土) 01:27:05
メトロノームを作ってるんですけど、テンポを速くするとかなり苦し
いみたいです。なんか良い方法はないでしょうか。少なくとも80ms、
できれば50ms間隔くらいで音が鳴らせれば最高なんですが。。

どうもAudioPresenterは短い時間でplay、stopをするのは苦手なようですね。
現在のソースはこんな感じです。トリッキーなことも特にやってないっす。

// 変数
MediaSound ms;
AudioPresenter audio[];
int current; // 再生するポート
int port; // ポート数
int time; // 間隔(ms)

// コンストラクタ
audio = new AudioPresenter[port];
for(current=0;current<port;current++)
{
audio[current] = AudioPresenter.getAudioPresenter(current);
audio[current].setSound(ms);
}

// 音を鳴らすスレッド
Thread.sleep(time);
audio[current].play();
current++;
if(current >= port) current = 0;
824805:2006/07/15(土) 08:27:05
>>806
>>807
レスありがとうございます。

壁描画については
PrimitiveをrenderObject3D()で壁枚数分描画した後、
一回flushBuffer()していますが、
まとめて描画とはこの事とは違いますでしょうか?
描画方法@で実行する場合はPrimitiveをGroup化していますが、
Groupをまとめて描画するメソッドは見当たらなかったので・・・
後、メインキャンバスに全画面描画してましたので、
createImage()した120x120に対して描画を行い、
メインキャンバスでdrawImage()するようにしましたが
特に速度は変わりませんでした。
全画面描画の捕らえ方が間違ってたら教えて下さい。。

壁描画は見えない所は描画していませんが、
まだ削れる所がないか見直してみます・・・。
825デフォルトの名無しさん:2006/07/15(土) 13:01:00
3D描画してない時はどれくらい速度出てるん?(´・ω・`)
実は根本的に遅いとかいうことは無い?
826デフォルトの名無しさん:2006/07/15(土) 15:46:23
壁描画はどっちでやっているか、ということだよ。
俺や807が言ってる一般的に速いというのは上のほう。

三角形を3枚書くとき(細かいパラメータ類はや正確な添え字は省略するよ)
new Primitive( PRIMITIVE_TRIANGLES , 0 , 3 );
vb = getVertexArray();
vb[ 0 ... ] = 1枚目の座標を設定
vb[ 1 ... ] = 2枚目の座標を設定
vb[ 2 ... ] = 3枚目の座標を設定
renderObject3D( primitive , mat );
flushBuffer();

とやってるか

new Primitive( PRIMITIVE_TRIANGLES , 0 , 1 );
for( i = 1 ; i <= 3 ; i++ ){
vb = getVertexArray;
vb[ 0 ... ] = i枚目の座標を設定
renderObject3D( primitive , mat );
}
flushBuffer();

とやってるか。
つまり上の方法のrenderObject3Dを実行する回数を減らせば速くなるんじゃないの、という事。
そういや壁等の状態で描画したいPrimitive数を変えたいときってメソッドで指定できたっけ?

まあなんだ、とにかく俺はマスコットカプセルのヘボ仕様に嫌気がさして使うの止めたけどさww
827デフォルトの名無しさん:2006/07/15(土) 16:40:04
行列とか三角関数とかすっかり忘れちまったぜ('A`)
828デフォルトの名無しさん:2006/07/15(土) 23:23:16
マスコットカプセル、あれが正式採用だって絶対おかしいよね。
普通にJava3DでもOpenGL ESでも積みなおして欲しいくらいだ。
829デフォルトの名無しさん:2006/07/16(日) 00:19:36
Vectorって使える?
830デフォルトの名無しさん:2006/07/16(日) 00:28:58
>>823
どうでもいいことかもしれないけど
50ms間隔で鳴るメトロノームってテンポ1200じゃまいか
831デフォルトの名無しさん:2006/07/16(日) 00:46:55
拍子によっても違うんじゃないの?
832823:2006/07/16(日) 01:00:08
ちなみに50msは4分音符を300とした16分音符です。
それくらいあると色々嬉しいのです。そのくらい細かい支えの上で演奏して
こそ良いリズムが出るとか云々。

ちなみに、今日考えてみたところ、テンポを指定したら、1分間分のデータ
をメモリ上にmld形式みたいな感じで作成して、それをロードしたりできると
いいなぁ・・・とか思いました。Javaは初心者なもんで、メモリをいじるのを
どんくらい柔軟にできるか分からんけど、やってみようかなぁ、と。

できそうかどうか分かる方いらっしゃいましたらアドバイスお願いできます
か?メモリ上に配置されたデータをMediaSoundが読み込めるかどうかetc
833デフォルトの名無しさん:2006/07/16(日) 01:02:20
失礼、>>830は4/4拍子の例です
拍子云々は置いておいて
実用性を考えると、せいぜい200msくらいで十分とおもたよ。
個人の要望だろうから、いらんお世話でしょうけど

834デフォルトの名無しさん:2006/07/16(日) 01:14:21
ちなみに50ms間隔の音ってピピピピの「ピ」が1秒間に20回鳴るんだよ
正直誰も聴き取れないと思う

ちなみにmldのテンポ部分をプログラムで変更すれば再生可能。
ただし音声ファイルは使えないから携帯のプリセット音を使う必要がある
wavじゃなくてmidiってことね




835823:2006/07/16(日) 01:15:20
ちなみに俺の持ってるメトロノームはテンポ250の16分まで刻めるんで、
6,70msってとこでしょうか。ただ、細かく刻むと、1拍目と2拍目の音色が
変わってしまうなど、色々不都合があるもんで、自作にいたったわけです。
836823:2006/07/16(日) 01:25:15
>>834
ミュージシャンは割りとそのくらいは聴き取りますって言うか、
きいてる限り、3〜5ms精度を基準として演奏しますよ。それに作ってみれ
ばわかると思いますが、ズレに関しては10msもずれたら素人にもばれますし。

実は昨日DoJaインストールしたばっかで、まだあまり調べてなかっただけな
んですが、mldってのはmidiとwavを足したようなものなんですね。まぁ結局
自分が使えればいいし、携帯のプリセットでも問題ないっすw ありがとう><
837デフォルトの名無しさん:2006/07/16(日) 01:40:59
3〜5ms精度
それはスイング感のことであって、メトロノームに求める値ではないと思たよ。
これ以上スレ違いなので、去ります。
838823:2006/07/16(日) 01:55:13
ま、単音で聴き取るという意味での3〜5msです、とりあえずメトロは50msあ
れば十分ですね。それはおいといて。

>mldのテンポ部分をプログラムで変更
この方針でやってみようかと思います。mldの仕様に関しては、色々ネットに
あるようなので、まずはどうやっていじるかを検討しようかな。JAVAって使い
やすいようにデータを管理されてるから、実体がどこにあるか分からんですね
・・・。
839823:2006/07/16(日) 02:02:33
あ、バイト配列を指定してのGetSoundってあったんだ。。なんだ、簡単じゃんか。
503iの仕様書読んでたよ・・・orz つーわけで、俺も去ります。
840デフォルトの名無しさん:2006/07/16(日) 04:59:57
>>468みたいなことやってるんだけど
エミュ(4.1)のStorageDevice#getFolderがIOException吐くんだわ。

で、エミュのDevGuide.pdfやbin\doja.exeの中をみると
lib/storagedevice/ext0/SVC0000あたりにディレクトリを作らないとダメそうなんだけど
いろいろ名前を変えてもうまく行かないんだわ。
何か知ってる人いない?
841デフォルトの名無しさん:2006/07/16(日) 10:53:30
>>823
MLDのテンポは最高250までだったと思うし、分解能も四分音符の
48分解能で指定したと思うから、50msならOKだと思うが
あまり細かい時間だと難しいやもしれぬ
842デフォルトの名無しさん:2006/07/16(日) 15:13:18
>>828
確かにクソだ。
採用した奴は、ワイロ貰ってそう。採用理由がわからん。
843デフォルトの名無しさん:2006/07/16(日) 15:19:49
3Dなんて表示できれば何でも良いよ(・3・)
と思う俺二次ヲタ。

採用当時は権利関係とかで一番安くてリスク低かったんじゃね?
844デフォルトの名無しさん:2006/07/16(日) 18:18:23
3D機能には拘らないけど

脳の容量が小さいだけで二次ヲタとか自称するのに語られるトコをみると
気の毒に思えてくる
845デフォルトの名無しさん:2006/07/16(日) 18:50:13
3Dさっぱりわからん
846デフォルトの名無しさん:2006/07/16(日) 19:56:24
>>844
某キャリアの公式資料とか見ても、結局アプリの大半はゲームだから
仕方ないだろう(・3・)

3Dは納期とコストとクオリティーの問題で割りにあわねぇんだよ。
ただ表示するだけなのに、3Dはちょっと・・・とか言い出す奴も多いしな。
んで、クソ3Dゲーの企画書が二次ヲタの俺に回ってくるわけだ(・3・)

こだわらずに出すだけならmicro3Dでいいよw
847流れ者:2006/07/16(日) 20:00:43
使用してないFOMAの携帯がありましたら1000円〜3000円で売ってください。
売ってくださる方がいましたらアド入れといたんで連絡下さい。
848805:2006/07/16(日) 22:04:07
>>825
>>826

本当に申し訳ありません。
自分は>>805で書いた描画方法@の処理で
Primitiveのコンストラクタ生成時に
Primitive[] p = new Primitive[壁枚数]
と宣言した配列に対して、壁枚数分の
new Primitive( PRIMITIVE_TRIANGLES , 0 , 1 );
としていた為に描画方法@とAとで描画速度が
変わっていない事が発覚しました・・・。
new Primitive( PRIMITIVE_TRIANGLES , 0 , 壁枚数 );
として描画してみると格段に早くなりました。
描画処理は幾度となく見直しましたが、
コンストラクタ生成部分に目がいかなかったのは
恥ずかしい限りです。

移動部分の描画処理に関しては大幅な修正になりますが、
これで作成が進みそうです。
本当にありがとうございました。
849840:2006/07/16(日) 22:47:14
う〜ん やはり実機だと動くのにエミュで動かない…なんじゃこりゃ(苦笑
850デフォルトの名無しさん:2006/07/17(月) 04:15:40
メトロノームはやめとけ。

プログラミング歴・ピアノ歴25年の俺様があらゆるテクニックを駆使しても
実用に耐える安定再生はできなかった。mld使っても駄目。
Java&DoJaはこれだから困る。
851デフォルトの名無しさん:2006/07/17(月) 10:13:14
1拍子ごとに鳴らすんじゃなくて、あらかじめいろんな種類の拍子の、1小節分の長さのmld or MIDIを用意するのはどう?
某ループ機能つき着メロアプリは入力された値からMIDIを生成するのだが、そんな感じで作ればできそうだけど。
852デフォルトの名無しさん:2006/07/17(月) 11:01:01
確かにそれならいけそうだな。
基本的にプログラムもハードも立ち上がり部分が遅いから、
そこさえ乗り切っちゃえば期待通りのはずなんだよね。
853823:2006/07/17(月) 16:10:22
851さんの方法に近い方法でやろうとおもいます。

リズムマシンみたいに、何小節目の何拍目の裏を自由に消したりできる
仕様にするので、リソースをあらかじめ用意すると足りないって事で、
リズムパターンを指定されたら、mld形式のバイト列を作成して、
それを読み込む事にしようと思います。

テンポをかえる毎に、バイト列を毎回作り変える必要があるので、
その辺がどのくらい高速にできるかは、やってみないとわからないかな。

MFi(mld)についての詳しい仕様ってDocomoから出てたりはしないんですか
ね。個人のページは見つかるんですが、ちょっと古いみたい。
854デフォルトの名無しさん:2006/07/17(月) 17:03:01
非公開。
いいかげん公開しろ糞ドキュモ。
855デフォルトの名無しさん:2006/07/17(月) 20:16:29

着メロ業者の陰毛です
856デフォルトの名無しさん:2006/07/17(月) 20:50:34
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)
よろしくおねがいします
i−want−to−study−java@hotmail.co.jp
教える対象は超初心者です。

専門学校などでJavaを勉強されていて夏休みだけ教えたいという方も歓迎です
857デフォルトの名無しさん:2006/07/17(月) 20:53:49

監禁されてSPAMメール送信の手伝いさせられそうだな
858デフォルトの名無しさん:2006/07/17(月) 21:45:33
>>851
>某ループ機能つき着メロアプリ
kwsk
859デフォルトの名無しさん:2006/07/17(月) 22:24:41
iMusia
860デフォルトの名無しさん:2006/07/19(水) 01:54:14
リソースにテキストファイルを入れたとき、
そのテキストの文字列はどうやって取得すればよいでしょうか?
DataInputStream in = Connector.openDataInputStream("resource:///BankingDemo/txt/test.txt");
↑の後、どうやればいいか分からず詰まってしまいました。
よろしくお願いします。
861デフォルトの名無しさん:2006/07/19(水) 02:23:06
>>860
APIリファレンスのDataInputStreamの説明は読んだか?
862デフォルトの名無しさん:2006/07/19(水) 03:00:00
>>860

DataInputStreamは、DojaのAPIじゃなくてCLDCのAPIリファレンスマニュアルに載ってるから、
そいつを参考にするとわかるよ。
863デフォルトの名無しさん:2006/07/19(水) 14:07:35
>>860
リソースにデータ入れるなんてそんなもったいないことしたことないけど、
スクラッチパッドと同じようにbyte[]で読んでStringにすればいいでそ
864860:2006/07/20(木) 01:04:54
>>861-863
返答ありがとうございます。
DataInputStreamの方ではあらかじめリソース内の文字列の
大きさが分からないのでreadFully(byte[] b) ができず、
ByteArrayInputStreamにつっこみながら入力を読み取っていく、
ということでよいでしょうか?


865デフォルトの名無しさん:2006/07/20(木) 02:40:53
>>864

DataOutputStream#writeUTFで書き込んだ文字列(修正UTF-8)なら、
そのままDataInputStream#readUTFで読めばひとつずつ取れる。

普通にメモ帳とかで書いたテキストファイルなら、
InputStreamReaderで一文字ずつ読んでいく。
で、なんかの区切り文字で分け分けする。

ひっかかってるのは、↑部分であってる?
866デフォルトの名無しさん:2006/07/20(木) 11:12:01
実機では動作するのですが、
Doja3.5のエミュレータでOutOfMemoryErrorが出て困っています。
エミュレータで使用するメモリサイズの指定とかは出来ないのでしょうか?

867デフォルトの名無しさん:2006/07/20(木) 11:49:28
>>864
文字列長も保存すればいいじゃん

>>866
エミュで動作しない理由を調べるのが先
868866:2006/07/20(木) 12:02:54
>>867
OutOfMemoryErrorが出るのでメモリ不足なのでは?

869デフォルトの名無しさん:2006/07/20(木) 13:02:26
>>868
とりあえずエミュにメモリ設定はないと思うぞ。
で、エミュだけでるってのは正直おかしい、逆ならありえるが・・・。
よっぽど弱いPCつかっているか、アプリ同時に立ち上げすぎか・・・。
でも普通ありえないしな・・。
870デフォルトの名無しさん:2006/07/20(木) 13:17:38
>>866
公式ドキュメントに指定方法が載っています。
871デフォルトの名無しさん:2006/07/20(木) 13:20:38
エミュのメモリ設定ってデフォで5Mくらいじゃなかったっけ?
872デフォルトの名無しさん:2006/07/20(木) 15:29:00
3.5は6MB
873デフォルトの名無しさん:2006/07/20(木) 17:13:05
64bitマシンで動くアプリの登場か。
すげーの作ってるんだろうな、きっと。
874デフォルトの名無しさん:2006/07/20(木) 23:37:19
皆様、こんにちは。質問させてください。
Eclipse2.1.3 + DoJa_0.0.1プラグインという環境でiアプリ作成をしてるのですが
"resource:///test.txt"でリソースを指定してもそのファイルを見ていないようなのです(同じコード内容でエミュレータからの起動は確認済み)。
フォルダ構成としましては、
eclipse\workspace\プロジェクト名 下にresフォルダを作成してその中にリソースファイルを置いているのですが、
なにか参照設定のようなものが必要なのでしょうか?
どなたか教えていただければ幸いです。
875823:2006/07/21(金) 01:24:28
どうも、ようやく実用スピードで動くようになりました♪

UIはまだ作ってなくソースコードを直接いじってテンポ設定なんで、
公開レベルではないですが、普通に20〜30msまで安定して動作可能な
メトロノームができそうです^^ ・・・そこまでは使わないと思いますが。

みなさま、ありがとうございましたm(_ _)m
876デフォルトの名無しさん:2006/07/22(土) 13:23:59
(;´Д`)いや、是非公開してくれよ
877デフォルトの名無しさん:2006/07/22(土) 13:25:31
いやです^^
878デフォルトの名無しさん:2006/07/22(土) 14:08:31
1拍で「あっ…」1小節で「いやん…」と喋るメトロノームきぼんぬ
879デフォルトの名無しさん:2006/07/22(土) 15:59:21
>>878
テンポ250ですがよろしいですか?
880デフォルトの名無しさん:2006/07/22(土) 23:00:35
1拍で「ごしゅじん…」1小節で「さま〜ん…」と喋るメトロノームきぼんぬ
881デフォルトの名無しさん:2006/07/22(土) 23:02:24
16拍子限定ですがよろしいですか?
882デフォルトの名無しさん:2006/07/22(土) 23:06:24
いつからここは「こんなメトロノームはいやだ」スレになっちまいやがりましたか?
883823:2006/07/23(日) 01:48:37
忙しくてUI作ってる暇が無いや。明日の夜にでも頑張ります。
てか、公開するよーなもんでもないっすよ。

byte data = new byte[400];
data[0] = 0x〜〜みたいにしてるだけですわ。

>>878
>>880
今度、彼女の声でも録音しておきますw
884デフォルトの名無しさん:2006/07/23(日) 01:55:20
「ごしゅじん…」で止まるとメイドガイを思い出すな。
885デフォルトの名無しさん:2006/07/23(日) 02:18:40
期待age
886デフォルトの名無しさん:2006/07/23(日) 03:57:27
既出なら本当に済みません。

もともとVB、ASP、PHPで仕事をしておりまして、
今度携帯アプリの話が出始めていることから勉強しようと思い、
NetBeansIDE 5.0にてJavaを一通りデスクトップPCで勉強しました。

次にと思い、iアプリに挑戦しようと思ったのですが、
NetBeans用のモジュールが見つかりません。
ネットの掲示板(控えるのを忘れて閉じてしまったのですが・・)では
Doja4.1の拡張モジュールを入れて開発をやってます的な記事も見たのですが
昨日から探し続け、過去ログも一通り見たつもりですが分からなかったです。

NetBeansの日本語ページにも有りませんでした。
なにか情報をお持ちの方、宜しくお願いいたします。
887デフォルトの名無しさん:2006/07/23(日) 09:46:32
確実に好きなタイミングでgcを行う方法ってないのでしょうか?
888デフォルトの名無しさん:2006/07/23(日) 10:22:51
System.gc呼べ。
889887:2006/07/23(日) 11:22:46
呼んでも、すぐにgcされないよね?
890デフォルトの名無しさん:2006/07/23(日) 12:03:15
勿論実装依存なんでなんとも言えんが、iアプリに限ってなら、されると思ってほとんど問題ないんじゃないかね。
gcを裏で回す様な端末の存在は寡聞にして知らない。
問題になるのは、gc自体の性能が劣悪で、断片化が起こったりする端末があることで。

なんで疑問に思ったの?
891デフォルトの名無しさん:2006/07/23(日) 12:09:11
>>886
Eclipse使ってればphpもJavaもこれ一本だったのに・・・
回答になってないけど、IDK使っとけと。
892デフォルトの名無しさん:2006/07/23(日) 12:24:57
VB.NET
893デフォルトの名無しさん:2006/07/23(日) 15:26:30
うのみとばし、やっと解読できた。
色々改造してみよう
894デフォルトの名無しさん:2006/07/23(日) 15:50:38
>>890
> 問題になるのは、gc自体の性能が劣悪で、断片化が起こったりする端末があることで。

ガベージコレクションとメモリコンパクションは別物です
895デフォルトの名無しさん:2006/07/23(日) 15:56:04
なら何を求めると
896デフォルトの名無しさん:2006/07/23(日) 22:05:02
gcのタイミングに何も期待するな、とあれほど言っただろ。from SJC-P
897デフォルトの名無しさん:2006/07/23(日) 22:23:40
俺のターン!
N903を攻撃表示!
898デフォルトの名無しさん:2006/07/23(日) 22:47:53
N903の特殊効果、GPSの精度に難有りを発動!!
899デフォルトの名無しさん:2006/07/23(日) 22:49:32
フッ‥甘い!
トラップカード「Dの呪縛」発動!
これで貴様の処理速度は最低でも100msかかるぜ!!
900デフォルトの名無しさん:2006/07/24(月) 00:36:28
音楽を切れ目なくループして再生したい場合はどうしたらいいですか?
901デフォルトの名無しさん:2006/07/24(月) 01:02:25
音楽を切れ目なくループして再生してください
902デフォルトの名無しさん:2006/07/24(月) 04:35:37
903デフォルトの名無しさん:2006/07/24(月) 04:57:05
カメラの画像って自動取得できないの?
904デフォルトの名無しさん:2006/07/24(月) 09:23:43
あんな過激なシーンや、こんなウホッなシーンで勝手にカメラ撮られたら恥ずかしいでしょ?萎えるし。
905デフォルトの名無しさん:2006/07/24(月) 20:28:22
iアプリからメールの件名や本文を書いて送信って出来るんでしょうか
出来るなら勉強始めようと思うんですが・・・
906デフォルトの名無しさん:2006/07/24(月) 20:33:19
一般人には無理。
907デフォルトの名無しさん:2006/07/24(月) 20:35:41
サーバーサイドスクリプトを組み合わせれば可能
iModeメールは無理
908デフォルトの名無しさん:2006/07/24(月) 20:35:48
>>906 ラジャ 撤退します

って、とりあえずテキストボックスに入れた値を加算してラベルに表示って程度は作れたのですが、その程度じゃダメ?
909デフォルトの名無しさん:2006/07/24(月) 20:38:20
>>907
サーバーサイドスクリプトってCGIとかのことですか。
だったらCGIだけで処理したほうが手っ取り早いか。
910デフォルトの名無しさん:2006/07/24(月) 20:47:37
>>908
技術云々じゃなくて企業じゃないとダメ。
CGI経由なら可能だけど迷惑メール対策されると届かない可能性有りなのと、
ご存知の通り全部formにしたほうが早い。
911デフォルトの名無しさん:2006/07/24(月) 20:51:12
>>910
>CGI経由なら可能だけど迷惑メール対策されると届かない可能性有りなのと、
このあたり、form にするのもiアプリからCGI経由でmailするのも全く変らんと思うが・・・
912デフォルトの名無しさん:2006/07/24(月) 22:40:10
DSブラウザ買って思ったんだけど、Wi-Fi通信できる素敵なiアプリとか作れ
ないかなぁ。まぁ普通に無理か。
913デフォルトの名無しさん:2006/07/25(火) 03:09:38
IrDAなら
914デフォルトの名無しさん:2006/07/25(火) 03:43:10
IrDAは範囲せまいよね。せめて10m飛んでくれればなぁ。
モデム - PC - 赤外線アダプタ - 携帯
みたいにすれば、無料で外部と通信できる・・・?
LAN上にデータを送れれば色々楽しいんだけどね。

ところで、こんなん見つけたんだけど、こういうの使ったりしてできるかな。
mini SDIO WLAN Card
http://k-tai.impress.co.jp/cda/article/news_toppage/30168.html
両方持っている人がいたら・・・と思ったら、まだ発売されてないね。
他社からもminiSDのLANカードは出てるから、試してみたい・・・けど高い。
915デフォルトの名無しさん:2006/07/25(火) 04:09:29
携帯のスロットはSDIOに対応してないんだった。
916デフォルトの名無しさん:2006/07/25(火) 04:13:49
LAN - PC - 赤外線アダプタ - 携帯

じゃないところが泣ける
917デフォルトの名無しさん:2006/07/25(火) 15:10:21
落ちものパズルのような、
多くの画像を同時に描画しなければならないものって
どのように描画の高速化を図れば良いでしょうか。
低スペックの端末だと、どうしても処理速度が遅くなってしまいます。
918デフォルトの名無しさん:2006/07/25(火) 15:18:11
>>917
普通に差分描画してダメなら対象外とするとか動く部分を減らすとかじゃね?
919917:2006/07/25(火) 15:36:30
>>918
一応最低限描画すべきものだけしか再描画をかけていのですが、
すべての要素を全て再描画しなければならない時などの対処のしようが
ちょっとわからないもので。
920デフォルトの名無しさん:2006/07/25(火) 15:45:08
マジレスすると諦めろ
921917:2006/07/25(火) 16:07:43
>>920
やはり諦めですか。
少しでも軽くなるように努めて、それで良しとするようにします。
ありがとうございました。
922デフォルトの名無しさん:2006/07/25(火) 23:59:42
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllll/ ̄ ̄ヽlllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllll /      ヽllllllllllllllllllllllllllllllllllllll
iiiiiiiiiiiiiiiiiiiiii  試 そ あ .iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
iiiiiiiiiiiiiiiiiiiii|  合 こ き  |iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
;;;;;;;;;;;;;;;;;;;;;|  終 で ら  |;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;|  了  め  |;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;:;:;:;:;:;:;:;:;:;:;|  だ  .た  |:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:
;:;:;:;:;:;:;:;:;:;:;|  よ   ら  |:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:
:.:.:.:.:.:.:.:.:.:.:ヽ、      /.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:
:. :. :. :. :. :. :. :. ‐‐--‐‐':. :. :. :. :. :. :. :. :. :. :. :.
: : : : : : : : : : : : : : : : : : : : : : : : ,.‐- 、 : : : :
                  廴ミノ
                 ///¨' 、
                 y':;:;:;:/⌒i!
                J:;:;:;:;};:;:/;},
      ;il||||li'       t`'---‐';:;:;:l
     ,.r'"''、,┘        7;:;:;:;:;:;:;:;「
    ノ4 (⌒i        .}:;:;:;:;:;:;;/
   /..,__彡{, |         `i:;:;:;:;:;}
   (  .ミi!} l、         .」:;:;:丿
  クュ二二`Lっ)        `==='
923デフォルトの名無しさん:2006/07/26(水) 11:09:39
>>919
最初からゲームのフレームレートを落とすってのも手。
20fpsで作ってるなら10fpsにするとかね。
あとはゲーム設計そのもののを作る時から差分描画が
出来る事を前提の仕様で作れるように心がけるのも重要。

プログラム的に負荷がかかるようなルーチンになってないかも重要。
waitのかけ方や音の再生部分やgcのかけているタイミングとか。
小さい事も積み重なれば重いからね。
924917:2006/07/26(水) 16:16:17
>>922
がんばります。

>>923
ありがとうございます。
心がけます。
925デフォルトの名無しさん:2006/07/26(水) 22:59:30
>>917

描画範囲外に全てのアイテムをあらかじめ描いておいて
必要なときに必要なものを転送するとキャッシュみたく速くなります

926デフォルトの名無しさん:2006/07/27(木) 00:15:01
描画命令の発行数が露骨に足引っ張るもんね。
一括描画は必須。

しかし、考えてみれば携帯Java走ってる端末って、どいつもこいつも
フレームバッファ完備のフルグラフィック機なんだよな。
ちっこい図体で本当よくやる。
927デフォルトの名無しさん:2006/07/27(木) 01:01:27
ネットから画像用のjarファイルを読み込もうと思うのですが、
一度に読み込めるjarファイルの容量に制限とかってありますか?
928デフォルトの名無しさん:2006/07/27(木) 01:22:39
一度に持ってこれるサイズに制限がある。
Doja3.0で20KBとか。
なので、ファイルを適当なサイズでぶった切っておいて、順次読み込んで
メモリに持つなりスクラッチパッドに書き込んじゃうなりしてから展開することになる。
929デフォルトの名無しさん:2006/07/27(木) 01:42:29
>>928
やっぱり制限あるんですね、ありがとうございます。
930デフォルトの名無しさん:2006/07/27(木) 10:13:14
スルーされてるけど>925ってマジ?
こんな機能聞いた覚えが無いんだが…
931デフォルトの名無しさん:2006/07/27(木) 10:21:52
>>930
D機種だけだな。
D機種は「new Imageしても即座に作成されず、実際に(drwaImageやgetPixelsなどで)そのImageが必要になった時、初めてImageを生成する」
という癖がある。
932デフォルトの名無しさん:2006/07/27(木) 10:46:39
>>930
屯クス
VBか何かの冗談かと思ったよ(゜▽゜;)
933デフォルトの名無しさん:2006/07/27(木) 14:59:43
D機種といえば、D901iとisでほかの端末よりもあきらかに速度が出ずに困ってます。
1フレにかかる時間は16msくらいで、それは他の端末も同じくらいなんですが、
なぜか、速度が遅い。さらにキーレスポンスも悪い。
なんででしょうか?
934デフォルトの名無しさん:2006/07/27(木) 16:18:07
>>933
ちょっとは読み返せw

1フレームにかかる速度が16msで他と一緒。
なのに遅いって何が遅いんだよ・・・・フレーム速度が遅いというなら
フレームレートの計測が間違ってるんじゃないのか?

あとキーレスポンスが悪いのはDの伝統。
レスポンスというより仕様が違うんだよな。
今回のでは連打するとシステムに負荷がかかり
見るからに速度が落ちる。
935デフォルトの名無しさん:2006/07/28(金) 00:16:51
Dの中の人には、その辺のフィードバックは行ってないのかなあ。
いつまで経っても劣等生のまんまじゃん、それも特級の。
新機種だろうと何だろうとDってだけでやだよもう。
936デフォルトの名無しさん:2006/07/28(金) 00:27:07
D機種は・・・って話が出てるけど
901i以降はFも中身一緒じゃないの?
937デフォルトの名無しさん:2006/07/28(金) 02:18:19
パンダゲームを作るので忙しい
938デフォルトの名無しさん:2006/07/28(金) 14:01:36
Java、Doja何も知らないんだけどアプリ作成のための良い本ありますか?
Java基礎から学んだ方が良い?
最初からiアプリ作成の本はきついですか?

スレ違いすいません。
939デフォルトの名無しさん:2006/07/28(金) 14:04:34
npaka でぐぐれ
940デフォルトの名無しさん:2006/07/28(金) 14:06:33
941デフォルトの名無しさん:2006/07/28(金) 14:12:01
Javaの勉強がしたいのか、
iアプリさえ作れればどーでもいいのか。
それが問題('д')
942デフォルトの名無しさん:2006/07/28(金) 14:14:45
iアプリの場合なんでもかんでも一つの関数に入れまくりだからなぁ
Javaの勉強になるとは思えない
943デフォルトの名無しさん:2006/07/28(金) 14:18:03
>>938
プログラム自体の理解度による。
つまりは他の言語でそれなりに
プログラミングした経験があるかないか次第。
まったく無い場合はiアプリの本を買っても
恐らくわからない。JAVAの勉強が先。

経験があるならまずは開発関係の資料に目を通してみる。
いきなり理解は出来ないだろうけど一通り目を通したら
ネットでサンプルコードを探す。そのコードを解読してみて
判らなかったら初めて本を買えば良い。そこまでやれば
自分にどの本が合うのかある程度わかるはず。
944デフォルトの名無しさん:2006/07/28(金) 14:23:48
>>942
関数じゃなくてメソッドね。
945デフォルトの名無しさん:2006/07/28(金) 16:03:18
みなさん親切にありがとうございます。
iアプリが作れればいいのですがプログラミングは何もした事無いのでJavaの本から買ってみます。
どの本が良いかは探してみます。
後気が向いたらお勧めを教えてください。向かなければスルーで
946デフォルトの名無しさん:2006/07/28(金) 16:11:05
すいませんiMonaでしたのでリンクに飛んでませんでした。
ありがとうございます。
947デフォルトの名無しさん:2006/07/28(金) 17:08:24
iアプリツールに付属してくる「カーレース」ゲームは、
メソッドどころか、細かくクラス分けしてあるんだよな。
948デフォルトの名無しさん:2006/07/28(金) 17:32:03
docomo で動くように作れば
auとかでも動く?
949デフォルトの名無しさん:2006/07/28(金) 17:45:54
ちょっと変えれば動く。
そのままじゃ無理。
950デフォルトの名無しさん:2006/07/28(金) 18:09:48
>>947
昔のサンプル「テトリス」も同じような感じだった。
Java初心者には難解な。
951デフォルトの名無しさん:2006/07/28(金) 18:41:11
大概ちょっとじゃすまねぇな。
表示系と保存周りはかなり変えないと。
952デフォルトの名無しさん:2006/07/28(金) 18:50:48
BREWを期待してなければまだ救われるが……。
953デフォルトの名無しさん:2006/07/28(金) 18:56:10
スレッド一切立てないで、尚且つnewも殆ど使わないで、
Vectorもアレやコレも論外・・・にしてもムズイなw
954デフォルトの名無しさん:2006/07/28(金) 19:38:52
まるでJigletだなw
955デフォルトの名無しさん:2006/07/29(土) 00:54:39
Javaの極北だからなあ。
いっそC++使えた方が楽かも知らんと思わないでもないでもない。
956デフォルトの名無しさん:2006/07/29(土) 01:22:33
Write Once, Run Anywhere っていうキャッチコピーで
一度書けばどんな環境でも動作する汎用性がJavaの売りだったのに、
携帯会社ごとに、微妙にパッケージが変わってしまうともうなんか…。

携帯のボタンや機能なんて限られてるんだから、
本当にその機種特有の仕様をいじる場合のみ、独自パッケージを用意すればいいのに。
957デフォルトの名無しさん:2006/07/29(土) 01:36:39
>>956
同一キャリアならほぼWrite Onceが実現できてるだろ。

これは一昔前なら考えられないことだぞ。
958デフォルトの名無しさん:2006/07/29(土) 01:45:52
だなあ。
っつってもまあ、その半分はコード書く奴の努力の成果なわけだけど。
結局みんな最大公約数戦略とってるもんなあ。
どうにもならないで個別対応ってのも少なくはないし。
959デフォルトの名無しさん:2006/07/29(土) 09:20:34
>>950
サンプルの手とリスは難解以前に
まともに動作しない機種があってワロタ
960デフォルトの名無しさん:2006/07/29(土) 10:09:41
古い機種だとメモリ不足になるよ

クラスやメソッドが多すぎると動かないらしいから

結局一つのメソッドにずらずら書くケースが多い
961デフォルトの名無しさん:2006/07/29(土) 13:26:21
クラスが多いと異常に遅くなる機種なんてのもあったなあ。

いや、本当にクラスのせいなのかはわからないんだけど、
何も知らないで定数類の読み込み&取り出しを別クラスにまとめといたら
時々気味が悪いほど遅くなるようになっちまった。
これを1クラスにまとめた瞬間普通に動くようになって、首をひねったことがあるんだ。

クラス名の解決とかにそれなりのコストがかかるのはわかるのだけれど、
目に見えて(数秒とか)固まってしまってたのは…。

記憶があいまいなんだけど、N505あたりだったかなあ。
確認した限りでは、その機種に限った問題だったと思う。
962デフォルトの名無しさん:2006/07/29(土) 13:59:35
個人で作ってる場合、
気軽に多機種で検証できないからなぁ。
企業アプリではそういうのを全部専門部署で検証したりするんだろか。

俺の場合は、自分用の資格試験問題集をアプリで作るくらいだからいいけど。
公開したら著作権法違反になっちまうよなぁ…。
963デフォルトの名無しさん:2006/07/29(土) 14:54:07
問題集の著作権の持ち主にお伺い立てるしかないよなあ。
むしろ買ってくれって売り込んでみるのはどうよ。
964デフォルトの名無しさん:2006/07/29(土) 15:05:34
企業アプリではそういうのを全部専門部署で検証したりします
965デフォルトの名無しさん:2006/07/29(土) 19:22:49
>>963
出版社とかにメール送ればいいのかな。

最初は、自分だけが便利に使える問題集でいいって思ってたんだけど、
少しずつ機能加えてくうちに、ドコモの公式ページに登録されてるのよりも
俺の作ったやつのほうが全然使いやすいじゃんとか思ってきて。

別に金とかいらないから、みんなにも使ってもらえたらなぁって思うようになった。
市販の色んな資格試験問題集をまるまる写したものばっかだけど、かなりの量たまってんだよね。
ちょっと中身替えたくらいじゃ著作権法にひっかかるだろうし…。

966デフォルトの名無しさん:2006/07/29(土) 19:58:54
>>965
プレゼンして恥ずかしくない程度にはデザインを向上させてから持ち込んでみ。
どんなに使いやすくても、目を引くものがなければ壁を作られちゃう確率アップだよ。

問題集+出版社+iアプリの例だと
http://plusd.itmedia.co.jp/games/gsnews/0408/16/news05.html
こんなのがある。
967デフォルトの名無しさん:2006/07/29(土) 20:26:47
無償でいいから見栄えがよくなくても使ってもらいたい
って考えていたらデザインに労力を割くのはどうなのかね
968デフォルトの名無しさん:2006/07/29(土) 20:59:35
>>967
普通の企業の心理からするとたとえ無料でエンドユーザが使いやすくても
見栄えが悪ければ社のイメージの悪化にも繋がるからコンテンツは提供したくないの。

相手が「見た目はちょっと修正すれば大丈夫」と判断できればOKかもしれないけど
そういう風に考えることのできる人が出てくることはマズ無いと思ってかからなきゃ。
969デフォルトの名無しさん:2006/07/29(土) 22:09:37
見せたものをまんまリリースするわけじゃないんだから…
970デフォルトの名無しさん:2006/07/29(土) 22:11:15
965ではないが目的と手段に齟齬が出るから
966は底から無意味
971デフォルトの名無しさん:2006/07/29(土) 22:12:29
本とかのデータを利用するんなら無料というわけには行かないだろ
金取るならそれなりにってなるかもな
972デフォルトの名無しさん:2006/07/29(土) 22:55:01
見栄えは大事
973デフォルトの名無しさん:2006/07/29(土) 23:29:44
DoJa-4.1の開発キットをダウンロードしたのですが、
APIのソースはどこにあるのでしょうか?
4.0のときはxxx-src.zipとかいうファイルで同梱されていました。
974デフォルトの名無しさん:2006/07/30(日) 00:23:16
うはっ萌え単かw
俺には、そっち系の絵の才能もないし、ホントにただの問題集なだけだから到底無理だw
グラフィックとか見た目の魅力のほうが重要なのかな。

>>973
これのことかい?
http://www.nttdocomo.co.jp/service/imode/make/content/iappli/about/index.html#004
975デフォルトの名無しさん:2006/07/30(日) 00:51:40
>>974
え?ど、どれですか?
マニュアルとJavadocしか見当たらないのですが。
976デフォルトの名無しさん:2006/07/30(日) 01:14:14
あ、APIじゃなくてAPIのソースのほうか。ゴメ間違えたよ。
977デフォルトの名無しさん:2006/07/30(日) 01:20:25
>>975
stubなソースなんかなんに使うの?
978デフォルトの名無しさん:2006/07/30(日) 02:21:12
持ち込みで正面から企画持って行くときは見栄えが重要。
なんらかのコネでちょっと裏から接触できるなら敷居はさがるけど
それでも結構気にされる。人が食いついて来ないんだ。

# まぁそれでも普通、萌絵は無しだと思うが。
979デフォルトの名無しさん:2006/07/30(日) 09:19:33
萌え絵なんか出したらPGからイラストレータに飛ばされる。
980デフォルトの名無しさん:2006/07/30(日) 10:46:39
> 萌え絵なんか出したらPGからイラストレータに飛ばされる。
それはPGから見たらある意味で出世、もしくは脱出なんじゃなかろか。
981デフォルトの名無しさん:2006/07/31(月) 14:39:41
ちょっと質問です。
最初のstart()のなかで
Display.setCurrent(new MyCanvas());
とCanvas指定して
final class MyCanvas extends Canvas implements Runnable {
見たいなのはありですか?
時間がかかる処理があるので Canvasのなかで別スレッドつくって
その値を画面表示させたいので、こういう風にしたのですが。
作法的に悪いんでしょうか?

あと、そのスレッド(run)から
thread.sleep(1000);
みたいに、wait入れたいのですが、
threadからstaticメソッドsleepにはstaticにアクセスしてくださいといわれるのですが
これはどうしたらいいのでしょう?

982デフォルトの名無しさん:2006/07/31(月) 15:03:19
>作法的に悪いんでしょうか?
別に
>これはどうしたらいいのでしょう?
Thread.sleep(100);
983デフォルトの名無しさん:2006/07/31(月) 18:13:56
次スレ立てたよ。

iモード携帯電話用Java(iアプリ) Part12
http://pc8.2ch.net/test/read.cgi/tech/1154336955/l50
984デフォルトの名無しさん:2006/07/31(月) 18:33:56
>>981
メインスレッドはそのままでサブスレッドを作りゃいいと思う。

new Thread() {
public void run() {
// 時間のかかる処理
}
}.start();

この記述だとアプリサイズがかなり大きくなるので
別の工夫が必要だとは思うけど、
スレッドを立てたいがためだけにわざわざMyCanvasクラスを作って、
その上メインスレッドがあちこちに動くような構造よりかは100倍マシかと。
985981:2006/07/31(月) 18:42:39
レスありがとうございます。
>Thread.sleep(100);
static ってこういう意味だったんですね。
うまくいきました、ありがとうございました。

>>984
重い処理の結果を画面表示したいので、
Canvasからスレッドを作ったわけでした。
そしたら、そのまま変数を共用できますので。
Cみたいにグローバル変数みたいなのが使えればいいのですが、
Javaの場合異なるクラスでのデータのやり取りの仕方がわからなくて。
986デフォルトの名無しさん:2006/07/31(月) 21:03:10
iアプリ作ったんですけどサーバーを借りないとダウンロード出来ないんでしょうか?
AN HTTPD使えるのかなと思ってぐぐってみたんですけど
どうやらうまくないみたいで
987デフォルトの名無しさん:2006/07/31(月) 21:09:08
>>986
yahooとかのフリースペースでも良いし、自前でapache立てても出来たよ。

>AN HTTPD使えるのかなと思ってぐぐってみたんですけど
>どうやらうまくないみたいで

とりあえずjamの設定を見直せ。
988デフォルトの名無しさん:2006/07/31(月) 21:11:45
>>987
レスありがとうございます
AN HTTPD使えるなら借りなくてもいいし自分で立てなくてもいいと思ったんですけどね

もうちょっと悩んできます
989デフォルトの名無しさん:2006/07/31(月) 21:18:11
AnHTTPDはバグが多いからやめとけ
990デフォルトの名無しさん:2006/07/31(月) 21:55:57
>>988 IPでのアクセスは無理。ドメイン名が必要だから。
991975:2006/08/01(火) 00:00:12
>>977
デバッグとか、Javadocの代わりとか。
992デフォルトの名無しさん:2006/08/01(火) 08:48:15
>>990
DHCPでもグローバルIP割り当てられてるならDynamic
使えばいいよ。
993デフォルトの名無しさん:2006/08/01(火) 12:58:34
>>991
実装がないのにデバッグに使える?
Javadoc 代わりだったら、doc2java で javadoc から変換できるかも。
[doc2java] ttp://doc2java.berlios.de/
994デフォルトの名無しさん:2006/08/01(火) 15:08:47
iアプリはpng使える?
995デフォルトの名無しさん:2006/08/01(火) 15:24:32
無理
996デフォルトの名無しさん:2006/08/01(火) 16:31:42
埋めよか
997デフォルトの名無しさん:2006/08/01(火) 16:35:16
生め
998デフォルトの名無しさん:2006/08/01(火) 16:53:09
産め
999デフォルトの名無しさん:2006/08/01(火) 17:00:15
1000デフォルトの名無しさん:2006/08/01(火) 17:00:39
1000ならJアプリと富樫が次世代iアプリ
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。