トップページ⇒tech
1001コメント330KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/03/16(金) 18:13:16
NTT DoCoMoのiモード携帯電話用Javaに関する話題を扱うスレッドです。

※DoCoMo以外は下記スレへ。
CLDC+MIDP+携帯電話用Javaスレッド part 6
http://pc11.2ch.net/test/read.cgi/tech/1155174514/

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

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

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

過去スレ
Part13 ttp://pc11.2ch.net/test/read.cgi/tech/1164168601/
0159デフォルトの名無しさん2007/04/12(木) 14:24:35
>>158
解決おめでとう。
結局、static変数は期待通りに変化していたのかな。
0160デフォルトの名無しさん2007/04/13(金) 15:58:14
対応機種は
Doja3.5以上なんですが、
フォントサイズを設定するときsmallにすると
12*12になると思うのですが
全角って全機種等幅フォントでしょうか?
それとも機種依存なのでしょうか?
0161デフォルトの名無しさん2007/04/13(金) 23:31:55
>>160
505以降は全機種共通で、12*12と24*24の等幅フォントがサポートされている。
そのほかの大きさは機種依存
0162デフォルトの名無しさん2007/04/14(土) 01:55:35
まぁauとかキャリア対応まで考えると

面倒くさいわけだが・・
0163デフォルトの名無しさん2007/04/14(土) 02:11:19
>>160
>>3のん・ぱか工房のiアプリベンチを見ると、機種ごとのサイズが詳しく載ってる。
0164デフォルトの名無しさん2007/04/14(土) 20:26:13
スクロールバーを付けたいんですけど、どうやってつけるんでしょうか?
0165デフォルトの名無しさん2007/04/14(土) 21:06:02
>>164
そんなAPIはないからスクロールバーっぽく見えるようなものを自分で考えて実装する
01661652007/04/14(土) 21:08:55
補足
Panelを使って1画面に収まらないほどのコントロール(テキストボックスやラベルのこと)
を貼り付けた場合は勝手にスクロールバーが現れる
0167デフォルトの名無しさん2007/04/14(土) 23:10:54
>>165
それが難しい
01681652007/04/15(日) 01:05:07
方向キーを押したら画面内容をずらした位置に再描画して、
ずらした量に合わせた位置にバーのツマミを再描画する。

これだけのことだけど、難しいようならこれ以上はもう
アルゴリズムを思い付くことができるかどうかって話で、
プログラミングの勉強頑張ってな、ってことに。

もっとも、何か特殊な操作方法や考え方のスクロールバーなら
最初にそれを説明してもらわないと。
0169デフォルトの名無しさん2007/04/17(火) 19:02:09
age
0170デフォルトの名無しさん2007/04/17(火) 21:26:06
age
0171デフォルトの名無しさん2007/04/18(水) 01:13:11
アプリから、(通信ケーブルの)USBを制御する手段はありますか?
(PC⇔携帯で有線通信するイメージです)
唯一関係ありそうなクラス「PhoneSystem」では不可能みたいですが、
Javaからでは不可能なのでしょうか。
0172デフォルトの名無しさん2007/04/18(水) 02:15:04
>>171
不可能。
0173デフォルトの名無しさん2007/04/19(木) 01:28:28
jdk 1.6.0_01を入れたら、Dojaでビルドできなくなりました...アタタ。
0174デフォルトの名無しさん2007/04/19(木) 02:47:24
ポンポン新しいものをいれるからだよ。
なんていってる俺様は未だに jdk 1.3.1
0175デフォルトの名無しさん2007/04/19(木) 07:25:06
sun.tools.javac,
0176デフォルトの名無しさん2007/04/19(木) 07:26:31
>>173
メニューから「設定」、「sun.tools.javac.Mainを使用する」にチェックしてからコンパイルしてみ
0177デフォルトの名無しさん2007/04/19(木) 10:01:06
P902でバイブしたいんですが、全然震えてくれません。
エミュだとブルブルマークが出るので、コードは間違ってないはずなんですが・・・。
何かコツが必要なんでしょうか?
トレースも何も出てないので、どうしていいのかさっぱりです。
0178デフォルトの名無しさん2007/04/19(木) 10:11:47
携帯端末自体の設定とかは確認した?
0179デフォルトの名無しさん2007/04/19(木) 10:11:47
>>177
携帯の設定じゃね?
メニュー>設定>iアプリ設定の欄を調べてみれば?
振動は結構機種依存が多いから動作は色々な機種で試すべきだよ。
機種依存って言っても揺れないとかではなく、揺れ方がとかね。
機種によっては着信時の振動設定が適用されたりするから
バイブ完全に切ってある設定だと動かない機種もあったりする。
0180デフォルトの名無しさん2007/04/19(木) 11:14:36
>>173
jre 1.6.0, jre 1.3.1 を併存させているんですが...。
もちろん、eclipseでは1.3.1を設定してます。
0181デフォルトの名無しさん2007/04/19(木) 11:18:10
>>180
書き足りませんでした。とにかくEcliplseでbuildができません。
別のPCにjre 1.5を併存させているのもあるのですが、こちらは、正常に
buildして、エミュレータまで起動してくれます。
01821772007/04/19(木) 11:46:16
>>178,179

すいません、おっしゃるとおり、設定の見逃しでした。ありがとうございました。
着信設定は試してたんですが、アプリの設定でデフォルトでオフになってるとは思わなかった・・・。
揺れ方は着信時の揺れ方で、気持ち悪いですね。
0183デフォルトの名無しさん2007/04/19(木) 12:08:11
>>181
環境変数JDK_HOMEに、1.4以前のJDKのインストールパスを設定してみ。

    C:\Java\j2sdk1.4.2_13

こんな感じで。
0184デフォルトの名無しさん2007/04/19(木) 12:35:55
携帯ウイルスで死ぬ?
http://news.ameba.jp/2007/04/4306.php
0185デフォルトの名無しさん2007/04/19(木) 13:54:01
jdk1.4ってもうセキュリティーアップデート対象外だろ?
0186デフォルトの名無しさん2007/04/19(木) 18:57:40
>>181
プロジェクトのプロパティーのJava Compiler開いて
Compiler compliance level を1.4で出来ないかな
0187デフォルトの名無しさん2007/04/20(金) 13:48:04
iアプリでflash liteのswfを生成したいんだけど、サーバを介さずに表示する方法あるかな?
画面メモにファイルを書き出せたらいいんだけど…
0188デフォルトの名無しさん2007/04/20(金) 16:57:11
無理
0189デフォルトの名無しさん2007/04/20(金) 19:10:17
何らかのテクニックがありそうな気はするけど
画像フォルダに強制的に出力しても無理なの?
0190デフォルトの名無しさん2007/04/20(金) 19:48:23
>>189
無理だって言ってんだろ
しつこいんだよ
ボケが!!
0191デフォルトの名無しさん2007/04/20(金) 20:31:56
>>190
もちつけ、俺は187じゃねーよw
0192デフォルトの名無しさん2007/04/20(金) 22:13:22
>>190
てめーボケっていったやつがボケだ!

あ、やべっ、ボケッって言っちまった…



うわ、また言ったし(;´д`)
これじゃボケボケじゃん・・・





やべ2回m
0193デフォルトの名無しさん2007/04/20(金) 23:33:48
>>183
レスありがとうございます。残念ながら、buildできませんでした。
pathを通してみたり、いろいろやってみましたが、ダメみたいですね。
jdk 1.6を併存してiAppliをeclipseでbuildできた方はいらっしゃるんでしょうか?
0194デフォルトの名無しさん2007/04/20(金) 23:39:38
普通にできてるよ
0195デフォルトの名無しさん2007/04/21(土) 01:49:13
>>193
逆にどうやったらできなくなったのかが知りたいくらいなのだが…。
0196デフォルトの名無しさん2007/04/21(土) 03:44:13
>>195
ま、それが分かれば苦労はないわけでして...。
Jdk SE 1.6.0_01+Jdk2 EE, とjdk 1.3.1_16を入れています。
後から、1.3.1を入れたため、コントロールパネルにplug-inの設定iconが表示されて
いません。順番が逆なら、うまく行ったのかもしれません。別PCの方は、1.5.0で問題は
出ていません。
0197デフォルトの名無しさん2007/04/21(土) 04:53:19
>>195
うまく動いていた方に、JDK 1.6をインストールするとeclipseの設定画面がうまく
でなくなりました。やはり無理があるのでは? アンインストールすると正常に
戻りました。
0198デフォルトの名無しさん2007/04/21(土) 10:10:43
最近アプリでゲームをすると止まって動いてとカクカクに動く
んですがばぐってるんですかね?アプリには2つゲームが
入ってるんですが、2つともそんな動きです。
0199デフォルトの名無しさん2007/04/21(土) 10:49:52
>>193
俺はコンパイルは出来るがエミュレータが速攻落ちる。
start()後にSystem.out.printlnしてもプリントされない。エラーや例外は何もなし。
0200デフォルトの名無しさん2007/04/21(土) 12:45:12
>>189
ローカルのファイルを指定してブラウザ起動できないからな
0201デフォルトの名無しさん2007/04/21(土) 14:42:58
1.6ってクラスファイルの構造変わったの?
0202デフォルトの名無しさん2007/04/21(土) 15:09:01
>>197
1. 何かすごいレアなバグに当たった。
2. すごく寒いミスをしている。
3.ハードウェアの故障。

…のどれかかなあ?
分かんないわ。
0203デフォルトの名無しさん2007/04/21(土) 19:47:59
>>198
iチャネルに加入すると断続的に通信が行われるので
そのときに画面のカクカクが起きるね
でもたまにだけど
頻繁に起こるなら携帯の電源を一度切ってまた入れなおすと
余計なメモリーが解放されて動きがよくなることもある
0204デフォルトの名無しさん2007/04/21(土) 20:45:43
メモリリーク起きてるの?
0205デフォルトの名無しさん2007/04/22(日) 02:38:56
>>202
jdk, jre 1.6.0をインストールするだけで、Dojaの作動が不安定になるようですね。
0206デフォルトの名無しさん2007/04/22(日) 04:16:57
基本的な質問なんですが、全く同じアプリでもDLするサイトが違うと「バージョンアップ」と
は見なされないんでしょうか?
全く同じサーバの全く同じフォルダからDLすると「バージョンアップしますか?」と表示され
既にDLしてあるアプリに上書きされるんですが・・。
しかも同じサーバ内でもフォルダが違うだけで新規でダウンロードしてしまいます。
どのサイトからDLしてもスクラッチパッドの内容を使いまわしたいのですが、不可能でしょうか?
0207デフォルトの名無しさん2007/04/22(日) 10:44:28
一度電源を切ってやってみたら普通にできるようになりました!
ありがとうございます。
0208デフォルトの名無しさん2007/04/22(日) 14:22:10
>>206
たぶん無理じゃないかなぁ

たとえば違うアプリなのに(サイトが違うのに)
同一ファイル名というだけでダウンロードが重なってしまうのは
それこそ重篤な携帯そのものエラーになるわけだから


0209デフォルトの名無しさん2007/04/22(日) 18:45:39
>>205
このスレでは現象出てる人の方が圧倒的少数で、まともに動いている人の
書き込みもあるのに、憶測とはいえその一般化した書き方はどうかと思うが。
0210デフォルトの名無しさん2007/04/22(日) 18:52:44
>>206
>全く同じアプリでもDLするサイトが違うと「バージョンアップ」とは見なされないんでしょうか?
みなされない。全く無関係でたまたま同名のアプリがあったらどうなるのさ。
端末にとってはURL+jamファイル名が一致するものだけが同じアプリ。

>全く同じサーバの全く同じフォルダからDLすると「バージョンアップしますか?」と表示され
>既にDLしてあるアプリに上書きされるんですが・・。
1つのアプリを同じ場所から2回DLするってことでしょ?
だったらバージョンアップ(すでにDLされています)の確認が出るのは当たり前。
それに上書きは強制じゃなくてユーザーの判断で決められるでしょ。

>しかも同じサーバ内でもフォルダが違うだけで新規でダウンロードしてしまいます。
繰り返すが、端末にとってはURL+jamファイル名が一致するものだけが同じアプリ。

>どのサイトからDLしてもスクラッチパッドの内容を使いまわしたいのですが、不可能でしょうか?
端末にとって別アプリと扱われる以上、不可能。
0211デフォルトの名無しさん2007/04/22(日) 21:28:07
カーソルキーの右下にあるボタンをeventで拾いたいんですが、
PhoneSystem.setAttributeによる定義で、
左下のMAILやCLEARキーは拾えるようになったものの、HONE_BOOKだけなぜか拾えません。

PhoneSystem.setAttribute(PhoneSystem.DEV_KEYPAD,Display.KEY_PHONE_BOOK >> 5 );
PhoneSystem.setAttribute(PhoneSystem.DEV_KEYPAD,Display.KEY_MAIL >> 5 );

こんな感じでやってます。
上記のコード以外にも色々試してみたんですが、
MEMOやCLEARは拾えても、なぜかPHONE_BOOKが拾えません。

上手くやる方法をご存知な方いらっしゃいませんか?
0212デフォルトの名無しさん2007/04/22(日) 23:03:59
↑機種依存で使えないんじゃない?
0213デフォルトの名無しさん2007/04/22(日) 23:09:45
言葉足らずですみません。
エミュレーター上でとりあえずやってみたんですが、
無理だったので質問させていただきました。

エミュレータがダメな可能性ってそういえばあるのかな・・ちょっと実機でやってみます。
0214デフォルトの名無しさん2007/04/23(月) 10:41:03
>>211
KEY_PHONE_BOOKってリファレンスにのってないな4.0と5.0見たが。
3.5までならあるっぽいがそこにはこの定義でイベントを発生させるなと書いてある。
何に使うのか知らないけど使わない方が良いかと思われるぞ。
0215デフォルトの名無しさん2007/04/23(月) 10:41:06
・CドライブがIDKでうじゃうじゃするのがウザいので別パスにインストール
・カスタムでEclipseプラグインインストール
・Eclipseのウィンドウ→設定→DoJaのインストール先を修正

『C:/iDKDoJa5.0[lib[bluetooh.propertiesの保存に失敗しました。』

(ノ ゜Д゜)ノ ==== ┻━━┻
0216デフォルトの名無しさん2007/04/23(月) 10:45:34
iDKも派遣の素人が作ってんのか?w
02172152007/04/23(月) 10:57:59
Eclipseを再起動したら使えますた。

('д')ぇー
0218デフォルトの名無しさん2007/04/23(月) 14:15:09
>>206
何がしたいのかな。
サイト1からDLしたアプリAと、サイト2からDLしたアプリAが
別アプリとして扱われて何か困ることでも?

それともサイト1からDLしたアプリAのスクラッチパッドを、
サイト2からDLしたアプリBで引き継ぎたいとか?
02192062007/04/23(月) 14:58:12
色々とご回答ありがとうございます。
やっぱり不可能ですよね。
なぜ別々のサイトからDLしたアプリを同アプリと見なしてほしかったかというと
218さんの仰る通りで、スクラッチパッドに保存したデータを引き継ぎたいからなんです。
ちょこちょことバージョンアップをしていく予定なのですが、バージョンアップを
するたびにそれまで保存したデータが使えなくなってしまっては意味がありませんので…。
他の方法を考えてみます。ありがとうございました。
0220デフォルトの名無しさん2007/04/23(月) 14:58:48
206じゃないけど思い当たる所はあるな。
可能性ありそうなのが

サイト移転した時
HPのフォルダ構造の変更
サーバー側でドメインが変更になったとかでも起こる?

とかかな。継続的にデータを使用し続けるアプリで
バージョンアップでデータ消えるのは確かに辛いな。
そういう意味では機種変更はもっと辛いことになるがな・・。
0221デフォルトの名無しさん2007/04/23(月) 15:49:30
偽造GIF
0222デフォルトの名無しさん2007/04/23(月) 16:09:29
ユーザが何度もバージョンアップしてでも使ってくれるアプリになって、
サイト移転に巡り合ってから悩むんでも遅くなくね?
0223デフォルトの名無しさん2007/04/23(月) 16:39:50
バージョンアップ版を同じURLで公開するのはダメなの?
0224デフォルトの名無しさん2007/04/23(月) 17:38:56
データ構造を変更しなければOKだと思うけど。
0225デフォルトの名無しさん2007/04/23(月) 22:15:17
セーブデータにそのデータのバージョン番号入れればいい。
構造変えたらデータバージョン番号変更。
保存されてるデータバージョン番号と、アプリ側のデータバージョン番号が違ったらコンバート。
0226デフォルトの名無しさん2007/04/24(火) 10:17:35
>>224
>>225
質問の内容とレスが異なってるべw

質問内容はなんらかの理由でアプリのダウンロードのURLが
変更になった場合アプリのバージョンアップでは対応できず、
ダウンしたら別アプリ扱いになってしまい以前のセーブデータを
どうにかして引き継げないか?だと思うが。

上で出てるけど偽造GIFで無理矢理持っていくか
同じサーバー上であるならば限定だが(移転には対応できず)
サーバーにデータをアップして管理するシステムをつくるかぐらいしか思いつかんな。
0227デフォルトの名無しさん2007/04/24(火) 11:12:10
素直に、サーバー側にセーブもてよとしか思えんぞ
0228デフォルトの名無しさん2007/04/24(火) 22:35:12
まさかとは思うけど、バージョンアップするたびにurl変えるの?

一応
・引き継ぐデータが小さいこと(文字列で250文字くらい)
・引き継ぎたい(バージョンアップ前の)urlがわかる
なら、アプリ連携利用で引き継ごうと思えばできなくはない
0229デフォルトの名無しさん2007/04/25(水) 00:17:24
アプリからアプリを起動するんだと同一ホストでないとパラメータ渡せないから、
旧アプリ→ブラウザ起動(パラメータを url に仕込んで)→ブラウザ連携で新アプリ起動
って回り道すればできそうか。
0230デフォルトの名無しさん2007/04/25(水) 01:46:56
902iS以降でいいんだったらSD-Binding使えるんだがな。
0231デフォルトの名無しさん2007/04/25(水) 13:31:40
doja-5.0 の bluetooth.properties に登録機器を登録したいのですが、どーやればよろしいのでしょうか?
0232デフォルトの名無しさん2007/04/25(水) 14:04:22
>>231
DoJa5.0開発キット付属の
「DoJa-2007_1st_Emulator_DevGuide3.00.pdf」
258ページ参照。
0233デフォルトの名無しさん2007/04/25(水) 14:45:09
>>228-229
ちょっとディレクトリ構成が変わる程度ならmod rewriteで十分。
ドメイン変更なら偽装gifかサーバ経由で引継ぎ。
この程度できないなら外に出せって事でもうこの会話止めにしない?
02342312007/04/25(水) 16:57:05
>>232
見逃してました、すいません。
0235デフォルトの名無しさん2007/04/25(水) 22:34:59
ADFのPackageURLにaspファイルを指定して
jarファイルを取得したいんだけど、
肝心のaspの書き方がよくわからんのです...

知ってる方いたら、教えてくれませんか つД`)
0236デフォルトの名無しさん2007/04/25(水) 23:44:20
HTMLを書いて拡張子を.aspにする
0237デフォルトの名無しさん2007/04/26(木) 01:07:02
tintin
0238小額性2007/04/27(金) 00:24:13
厨房以前の質問かもしれないのですが、
以下のプログラムをエミュにて実行したら
OKなんですけどなぜか携帯では動作しない理由が
わかりません。(TдT)
限界ですぽ・・・。
誰か愛の手を・・・。
ttp://www.geocities.jp/takerururu/key001.html
まだiアプリを制作1日目なので全く素人の
童貞レベルですが・・・。
0239デフォルトの名無しさん2007/04/27(金) 00:46:57
Graphics.がひっかかるけど、AWTもしくはAppletViewerなくても動くのかな、ケータイならMIDlet?
com.nttdocomo.ui.Graphicsかぁ、ブラウザ・ヴューアか、もしくはAWT、どっちだろう。
アプレットヴューアの場合、WEBサーバにアクセスするとWEBサーバからアプレットクラスは落ちてくるけど、スタンドアローン内での動作でしょう?、その場合だとアプレットクラスは入れてないと動かないけれど。
的外れだったらゴメン。
0240デフォルトの名無しさん2007/04/27(金) 02:18:09
>>238
動作しないって、具体的にどうなるのよ?
それを説明しないで何をしてほしいんだかw
0241デフォルトの名無しさん2007/04/27(金) 03:52:49
起動したら直ぐ落ちるのでは?
仕事でも、脳のブレーカーも一緒に落ちる人がよくいるw
0242デフォルトの名無しさん2007/04/27(金) 04:41:19
try{
Thread.sleep(100);
}catch(Exception e){
}
0243デフォルトの名無しさん2007/04/27(金) 04:54:48
public void paint(Graphics g) {
 …
 while(true){
  …
 }
}

この構造が問題なんじゃねーの
0244デフォルトの名無しさん2007/04/27(金) 04:57:43
もしかしてマジレス禁止ですか?
0245デフォルトの名無しさん2007/04/27(金) 05:04:46
言いたいことがちょっと違った
public void paint(Graphics g) {
 …
 while(true){
  …
  try{ Thread.sleep(100); }catch(Exception e){}
 }
}

paint内でsleepしながら無限ループって構造が問題なんじゃねーかと思う
sleepと無限ループをやめてprocessEventでrepaintすればとりあえず動くかも?
0246デフォルトの名無しさん2007/04/27(金) 10:04:36
paint内でループってすげーな…。
昔仕事で、paint内で通信しているソース提出してきた会社があったが…。
0247デフォルトの名無しさん2007/04/27(金) 10:09:15
既に実装されてて定期的に呼ばれる部分が
paintだったんだろうな('A`)y-~~
0248デフォルトの名無しさん2007/04/27(金) 10:39:13
百歩ゆずってたまたま動いてたとして
そもそも paint の中の sleep で例外発生してただろうに
その原因を考えずに単純に握りつぶしてるんだもんな

0249デフォルトの名無しさん2007/04/27(金) 12:07:05
>>238
paintは処理抜けないとprocessEventが呼ばれなかったと思う。
こんな感じでどう?

public class KeyTest003 extends IApplication {
public void start() {
MainCanvas main = new MainCanvas();
Display.setCurrent( main );
main.start();
}
}

class MainCanvas extends Canvas {
public void start() {
Graphics g = getGraphics();
while(true){
// paint内のループをココへ
}
}
public void paint(Graphics g) {
// この際何もしなくていい。
}
}

IApplication#start()はiアプリの場合スレッドなので
そこにメインループを作っても大丈夫。
0250デフォルトの名無しさん2007/04/27(金) 12:25:53
paintの中だけでどれほどのことができるかの挑戦と見た(`・ω・´)
0251デフォルトの名無しさん2007/04/27(金) 13:27:02
昔のSOならpaintとprocessEventが別スレッドで実装されてたから動くかもね。
今のは知らんが。
0252デフォルトの名無しさん2007/04/27(金) 15:40:46
>>249
あー、うちの会社それだわ。
やっぱりその形が安定する。

しかしRunnable継承したときのこと考えると、名前がstartなのはいただけないな。mainとかにしておこうぜ
0253デフォルトの名無しさん2007/04/27(金) 18:02:17
mainもエントリポイントの意味があるからやめたほうが
0254デフォルトの名無しさん2007/04/27(金) 21:07:17
paint内でループしてても全然問題ないと思う
repaintしてもpaintの先頭からじゃなくループ内の処理が継続されるから
なぜかは分からないが
0255デフォルトの名無しさん2007/04/27(金) 22:42:37
>>238はまず機種を書くべきだったな
0256デフォルトの名無しさん2007/04/28(土) 20:53:19
iアプリをパソコンでやれるようにってできねぇかな
iモード自体は簡単にできるけど結局ダウンロードすると使えないじゃん
どこをご認識させたら動くようになるのよ?
0257デフォルトの名無しさん2007/04/28(土) 21:48:41
ソースをもらってくる
0258デフォルトの名無しさん2007/04/29(日) 01:18:17
>>256は板違い。
家電製品−携帯コンテンツのとこでも行けばいいよ。
■ このスレッドは過去ログ倉庫に格納されています