CLDC+MIDP+携帯電話用Javaスレッド part 3 at TECH
[2ch|▼Menu]
[前50を表示]
150:デフォルトの名無しさん
04/08/28 17:13
>>148
スプラッシュウィンドウってそういうもの(それが当たり前)だから放っておくしかない。
起動が遅いアプリ(Vエミュに限らず一般的に)が、起動完了まで画面に何も出ないと
ユーザーは「あれ?起動してるのかな?固まってるのかな?」と不安になるので、
ただいま起動中ですよ、の印代わりに1枚絵の画面を出しておく。
そしてアプリ本体が起動すれば消える。
これがスプラッシュ(ぱしゃっと水がはねる→現れてすぐ消えるの意味)ウィンドウの役目。
アプリの作りでスプラッシュウィンドウからフォーカス外せたり最前面から後ろへ回せたり
できないようにしてあるなら、ユーザーはどうしようもない。

151:デフォルトの名無しさん
04/08/28 21:40
>>149-150
スプラッシュウインドウでしたねw

やはりどうしようも無いんですねぇ--;
我慢します。ありがとうございました。

152:デフォルトの名無しさん
04/08/29 02:39
>>139
その記事は妄想ではないですよ。

アプリは国内外問わずに流通されるようになる。のかなぁ。




153:デフォルトの名無しさん
04/08/29 16:55
>>139
ただ、ライブラリがMIDP準拠のとか、
Vオリジナルとか出来ちゃって動作検証で泣くカモ知れない。

1Mアプリやるからには定額制導入するだろうケドも、
テスト面倒と思われ。

154:なっち(○´ー`○)
04/08/29 18:00
キャリア・端末でマチマチになっちゃうと
国際標準である意味が曖昧になるよね。
完全準拠であうとがんばってくれたら
市場活性化すると思うんだけど。
あうはどうなんだっけ、Javaとは決別の方向性なのかな。

155:デフォルトの名無しさん
04/08/29 19:02
URLリンク(www.itmedia.co.jp)
にあるような JSRが導入されれば、互換性もある程度は保証されるかも。
でも、今年でる端末に互換性を求めるのは難しいかも...。



156:デフォルトの名無しさん
04/08/29 19:41
auはJAVA捨て。今売られてるもの以降は出ない。
アプリ目的でキャリア換えする人は少ないから、BREWがよっぽどこけない限り、
JAVAを積極的にやろうとは思わないはず。
BREWにして困るのはCPだけだし。

157:なっち(○´ー`○)
04/08/29 23:58
なるほど。ということは、
docomoはDojaで制約がないので好きにできる。
auはBREWでパフォーマンスを追及できる。
VodafoneはMIDP2.0とJSRで自らに足かせ。


・・・ん?

158:155
04/08/30 02:01
足かせ じゃなくて、コンテンツの流通市場が広がる。
と好意的に解釈しなくちゃ。

同じアプリを世界中にバラまけるようになるはずだし...。


159:デフォルトの名無しさん
04/08/30 20:40
HttpConnection con = null;
con = (HttpConnection)Connector.open(url);

この時点で例外が投げられるってのはどういう場合に考えられますか。

ADFの設定の

MIDlet-Network: Y

MIDlet-X-AllowURL-1: URLリンク(localhost)

は書いてあります。

ブラウザでURLにアクセスするとちゃんと見れます

160:デフォルトの名無しさん
04/08/30 21:59
>>159
例外の内容を書かないのはなぜ?

161:デフォルトの名無しさん
04/08/30 22:02
すいませんでした、エラーの内容を書きます。


catch(Exception e){
System.out.println("HTTP接続に失敗しました");
System.out.println(e);


HTTP接続に失敗しました
java.lang.SecurityException: access denied

162:デフォルトの名無しさん
04/08/30 22:15
>>160
例外の内容を書いたのに答えが無いのはなぜ?

163:デフォルトの名無しさん
04/08/30 22:27
それが分からないから質問してるんですけども

164:デフォルトの名無しさん
04/08/30 22:33
access denied って言われたって

ブラウザから全く同じアドレスで確認できる

ADF設定は上に書いたとおりに行っている

その上でエラーになるので質問をしているんです。

165:デフォルトの名無しさん
04/08/30 22:51
MIDlet-X-AllowURL-1: URLリンク(localhost)
この意味判ってる?

MLでも聞いてるみたいだが‥

166:なっち(○´ー`○)
04/08/31 00:36
質問者本人のレスかわからないけど
例外を教えてやったんだから
答えろって態度はおかしくないかい?
実行環境すら書いてないし。

例外が
java.lang.SecurityException: access denied
とわかっていれば、
この場合はezplusエミュで
MIDlet-X-AllowURL-1属性とマッチしないホストへ
接続を試みているのではないか、
早い話、接続先のURLがおかしいのではないか、
なんて見当もつけられるけど。

167:デフォルトの名無しさん
04/08/31 00:50
質問者は端末(エミュレータ)がauなのかvなのか、それとも他のMIDP端末なのか、
auならPhaseいくつか、vならC4型かP4型かP5型かとか書かないと
回答者も困ると思うんだが。

>>159を見てもそれがわからん。
>MIDlet-Network:  …これはvでは書くがauでは書かないもの。
>MIDlet-X-AllowURL-1:  …これはauでは書くがvでは書かないもの。
と俺は認識してるんだが、回答できる人はこれを見て何の端末か分かるもんなの?

168:なっち(○´ー`○)
04/08/31 01:47
>>167

>>159だけだとエミュとしか。
定義されてない属性をつけてはいけないわけではないから
WTKすらありえるし。

>>161の情報があればこの場合に限っては

接続先がlocalhostなので普通に考えたら
ローカルサーバを接続先にしたエミュ。

Vの場合MIDlet-Network: Y が設定されてない場合に、
auの場合MIDlet-X-AllowURL-n: で指定されていないホストの場合に、
SecurityExceptionを吐き、前者は指定済みなので後者の可能性が高い。

auが通信に対応したのがPhase2以降とどこかに書いてあったので、、、

結論:多分phase2以降のezplus Emulatorじゃないかなぁ?

とかかなんとか推理はできるけど、
無駄な過程だし回答が不正確で遅くなるだけと思いますわん

169:デフォルトの名無しさん
04/08/31 02:02
JavaHzで同じような時間帯にそっくりの質問がソース付きで投稿されてる
同じ香具師かどうかはわからんが
>>166 多分正解
>>168 ezplusらしい。ナイス勘

170:167
04/08/31 04:06
>>168
さんきゅ。そういう推理の仕方、俺も参考にしてみる。

171:159
04/08/31 10:22
お騒がせしました。
通信の方はなんとかなりました。
大変ご迷惑をかけたことをお詫びします


実行環境はphase2のezplus Emulatorです・・

172:159
04/08/31 10:44
原因は

tool→default envのotherkeywordだけしか設定してなかったためです

project→edit envの設定したら動きました。。。

173:なっち(○´ー`○)
04/08/31 16:44
ezplusの設定はまぎらわしいからねぇ。
とりあえずよかったね。

174:デフォルトの名無しさん
04/08/31 21:18
なんか、質問のためのテンプレでも用意しなきゃいけないような話題が続くとイヤだな。

175:デフォルトの名無しさん
04/08/31 22:19
うお、MIDPリファレンスの日本語版を
紹介しているサイトが存在したのか・・・。
ないものだとあきらめてからマジで嬉しい。


176:なっち(○´ー`○)
04/08/31 22:44
>>175
さかきけいさんが書いてるやつ?

177:デフォルトの名無しさん
04/08/31 23:29
>>176
うん、そう。
J2SEとVodafoneの日本語版リファレンスは
持ってたけど、MIDPのは持ってなかったから
ゲットできてよかったあるよ(○´ー`○)


178:デフォルトの名無しさん
04/08/31 23:38
そこの機種別スペック表も重宝するよね。
ありがたいことです。

179:なっち(○´ー`○)
04/09/01 00:03
急になくなったりしたらピンチなのです。。。

せっかく話題に出たので
有名かつ既出とは思うけどリンク張っとくね

日本語によるMID ProfileのAPIリファレンス
URLリンク(godwood.allnet.ne.jp)

180:デフォルトの名無しさん
04/09/01 00:26
>>なっち
wgetとかでローカルに保存しとけばイイ

181:なっち(○´ー`○)
04/09/01 01:08
んーそうだねぇ。そうしようかな。

182:デフォルトの名無しさん
04/09/01 14:53
902SHがJATE通過したね。

MIDP2.0に乗り換えるかな。

183:デフォルトの名無しさん
04/09/01 21:00
URLリンク(www.eclipse.org)
携帯電話/PDA向けのJava環境に関して、MotorolaとNokiaがSunを
無視してIBMにすりよるらしい。しかし携帯でRCPするってことは
SWTだけじゃなくてJFaceまで動かすつもりなんだろうか。

184:デフォルトの名無しさん
04/09/01 22:56
まぁ、モトローラもノキアもVoda向け3G端末出してくる訳だが。

185:デフォルトの名無しさん
04/09/02 16:06
質問です

ezplusの2.0でアプリを作っているのですが


aクラス→bクラス→cクラス
               ↑
↑              ここで再生している音楽を調整したい
ここで音楽を再生

この場合aクラスからbに移るときはMIDlet本体ごと渡しているのでカレントも完全に移動しています
cクラスからaクラスで再生した音を操作したい場合はどうすればいいのでしょうか
たとえば再生を停止したり、ボリュームを調節したり

186:デフォルトの名無しさん
04/09/02 16:18
やっぱり全てのクラスにMediaPlayerBoxのインスタンスをわたさなきゃダメでしょうか

187:デフォルトの名無しさん
04/09/02 20:12
>>185
>この場合aクラスからbに移るときはMIDlet本体ごと渡しているのでカレントも完全に移動しています
説明がまるで意味不明なんだがMediaPlayerBoxのインスタンス(mとする)を
オブジェクトa,b,cからいじりたいってことか?
だったらa,b,cでmの参照を保持するのが妥当だろう。(多分>>186で言ってること)
a,b,c,mを包含するオブジェクトxを用意してそこで制御するって案もある。

ていうか別にこのスレ向きの質問でもないような気が。

188:なっち(○´ー`○)
04/09/02 20:24
>>186
インスタンスを渡せない複雑な家庭の事情でもありまっするか?

操作するためには、なんらかの形でインスタンスを渡す必要は
あるんではないですかね。

コンストラクタが長くなって嫌だというのであれば

○専用のデータ保持クラスを用意して渡したいものはまとめて渡す
○abcがDisplayableで
必ずMIDletのインスタンスを渡しているというような設計なら
MIDletの中でMediaPlayerBoxを宣言・生成してやる。
○専用の初期化メソッドで渡す。
○staticでなんとかかんとかする。

というとこですかねぇ
結局は渡すわけですけど。
ひねってあまり珍妙なことをすると実機でトラブルかも。

189:デフォルトの名無しさん
04/09/02 20:40
>175
英語版見てから日本語版見たほうがいいよ。日本語版は情報が欠落しているから。


190:デフォルトの名無しさん
04/09/02 20:58
EZアプリ(java)で、赤外線通信はできますか?
プログラミングガイドで見つけれなかったけど、バンドルアプリで赤外線リモコンやってるみたいなんで。
できるときは、どこに資料がありますか?

同様に、VodafoneのVアプリで赤外線通信できますか?

191:190
04/09/02 22:02
Vアプリの方は、すぐ資料がみつかりました。

192:デフォルトの名無しさん
04/09/02 23:12
さっきまで動いていたアプリがバージョンアップした途端に起動すると

ezplusを続行できません

となって起動できません

ソースを元に戻して再アップしてみたのですがそれでも動きませんでした

193:デフォルトの名無しさん
04/09/02 23:32
という大変な話があったとさ。
とっぴんぱらりのぷぅ。

194:デフォルトの名無しさん
04/09/03 00:22
>>190
そもそもEZアプリ(Java)が使える機種の中に
赤外線通信機能を持った機種がない。

195:デフォルトの名無しさん
04/09/03 01:05
ワロタ

196:デフォルトの名無しさん
04/09/03 10:56
>>194
スレ違いになりますが、BREWアプリだとできますか?

197:デフォルトの名無しさん
04/09/03 13:37
知的障害者がいるスレはここですか

198:デフォルトの名無しさん
04/09/03 13:46
>>197のこと?


199:デフォルトの名無しさん
04/09/03 16:13
>>196
スレ違いって分かってるなら面倒でもそっちのスレへ行って。
スレリンク(tech板)

200:デフォルトの名無しさん
04/09/03 16:16
>>199
すでにそっちでも質問してるんですが・・・

201:デフォルトの名無しさん
04/09/03 18:15
>>200
あっちで質問していればここで聞いてもいいってもんじゃないだろ

202:デフォルトの名無しさん
04/09/03 18:42
>>200
単なるマルチポストかよ。

203:デフォルトの名無しさん
04/09/03 22:09
>>186-188
話それちゃうけど、
オレの場合は、すべてのインスタンスへの参照を記憶する専用のクラス(インスタンス)を作って、
そいつへの参照を全員が知ってる、っていう形で適当に仕上げちゃうことがあるなぁ。

勝手に操作されちゃ困るほどの規模のアプリ組んだことがないからこそなせる技ではあるけど。


204:なっち(○´ー`○)
04/09/03 23:19
>>203
共通して参照するデータをまとめて扱うのって
むしろ定跡なんじゃないかなぁ。
ゲームのプログラムとか読んでると
ポコポコそういう構造体でてくるでそ。

メモリとかサイズ節約できるなんて副作用もありえるし
MIDPでは積極的にやった方がいいのかなってチラっと思いましたワ。

205:デフォルトの名無しさん
04/09/03 23:22
3個以上のクラスを作る余裕のある藻前らがうらやますぃです。

206:なっち(○´ー`○)
04/09/03 23:37
オシゴト ゴクロウサマデス・・・

207:203
04/09/03 23:40
オナヂク ゴクロウサマドス
某ビューア5クラスドス

208:なっち(○´ー`○)
04/09/03 23:51
本音を言うと仕事で携帯アプリ作れる人がうらやましいです。
MIDletとCanvasだけで我慢するので誰か雇ってください。

209:デフォルトの名無しさん
04/09/04 00:07
なんでプロの人はオブジェクト指向したらいけないの?

210:デフォルトの名無しさん
04/09/04 01:06
>>209
そんな容量の余裕はありません。
あと、クラスを定義しないからオブジェクト指向ではない、というわけでもありません。

211:デフォルトの名無しさん
04/09/04 02:06
なるほど。


212:デフォルトの名無しさん
04/09/04 03:47
ちょっと待って。
仕事でやってる人誰もが容量で苦しんでるわけじゃない。そこら辺勘違いしないで。
iアプリの30KB制限のやつでもクラス3つ4つ定義してたりする。
結局作るものによる。(それを言っちゃぁおしめーか)

213:デフォルトの名無しさん
04/09/04 11:16
容量との戦いは1Mアプリになっても続くのだろうか(;´Д`)ハァハァ

214:203
04/09/04 18:30
ちょっと想像したんだが、
状態変数やらフラグやらが山盛りあって、
状態をそこら中でチェックしまくりで、
しかも変数名が2文字とか、
そんな世界なんだろうか。。。

keyPressedの中身が5重ifとかで、
「横に長いディスプレイほすぃ」とか・・・

変数名が10文字から2文字に変わったとしても、
ちっさなpngファイル1つで埋まっちゃう。
ゲームアプリは、しょせん
グラフィックデザイナ>>>(越えられない壁)>>>プログラマ
とか。


215:205
04/09/04 18:39
変数名の長さ切りつめは流石に……
そこを削りたければProGuardとかオブファスケータ
噛ませればいいだけだから気にしてないでつ。
メソッドを手動インライン展開するのも可能な限り最後の手。
でも、

>状態変数やらフラグやらが山盛りあって、
>状態をそこら中でチェックしまくりで、

これはそのたうりです、はい。漏れがヘボなだけってこともありえるがOTL

> keyPressedの中身が5重ifとかで、

これはキープレス・キーリリースのイベントハンドラでは
それこそビットフラグ立て下ろしするだけにして、
必要なときにフラグ見て処理、で何とか片付けてますた。

216:デフォルトの名無しさん
04/09/04 21:32
スレッドの数に制限ってあるの?

217:デフォルトの名無しさん
04/09/04 22:09
>>215
メソッドのインライン展開などは、Eclipseにやらせなさい

グラフィックデザイナっていうか、ドッターも、圧縮のこと考えて点打つ必要あり。
メモリ割り当てに関しては、プログラマの方が発言権が強いし。

ようするにゲームアプリ・ビジネスアプリ関係なく
金出す人・旗振り役 >>>(越えられない壁) >>>>しもじもの手動かす人

218:なっち(○´ー`○)
04/09/04 23:31
>>215
キー入力の話なんだけど
すぺて押下状態チェックで済ませてるの?

つまり、いついかなる状況でもキーを離すと
フラグが倒れて、押していると立っている感じ?
自前リピートチェックというか。

あんまり上手に説明できないけど。


219:デフォルトの名無しさん
04/09/05 00:10
>>218
> いついかなる状況でも

んなわけないだろ。

220:デフォルトの名無しさん
04/09/05 00:11
>218
実は前任者のソース使い回しだからあんまし理解できてないんだけどw
Pressのときは「押された」フラグを上げる。そのとき「押し離し」フラグは下げる。
Releaseのとき、「押された」フラグを下げて、「押し離し」フラグを上げる。

で、実際にキーの状態で処理を分けるときは、
・押したor押しっぱなし -> 「押された」フラグを見る
・押したけど押しっぱなしではない -> 「押し離し」フラグを見る

てな感じですた。あと、「離し押し」フラグとかもあったけど使わなかったので忘れた(爆)
あ、RepeatはPCのキーと一緒で最初のPressのワンテンポ後に発生するので
「押しっぱなし」の判定には使えないっす。

221:なっち(○´ー`○)
04/09/05 00:38
>>220
ああ〜「押し離し」は離したときに反映されるわけだね。
やっぱりリピートタイミング制御できない以上
みんなだいたい同じような処理してるのかな。
キーイベントとポーリングの折衷式というか。

222:デフォルトの名無しさん
04/09/05 23:04
最近Vodafone(P5型)のVアプリ作り始めて、
やっとJPEG画像(データフォルダ内)を
表示するところまで作れました。JAVA自体
触るの初めてなので、ここまで作るのにかなり
時間を使ってしまった・・・。しかしJPEG画像は
表示されたのですが、QVGAサイズの画像を
表示させると、もろに携帯ディスプレイから画像が
はみ出してしまいます。

Imageファイルを携帯のディスプレイサイズで表示
する簡単な方法はないでしょうか?


223:なっち(○´ー`○)
04/09/05 23:19
>>222
jadに
MIDlet-Application-Range: 0,0
記述してますかいな?


224:222
04/09/05 23:34
>>223
はい、記述しています。
というかこれ、エミュレータ側のDisplaySize設定が
240×260の場合なら、画面いっぱいにQVGA画像が
表示されるということですか?
しかしどちらにせよ、「MIDlet-Application-Range: 0,0」
を記述していても、記述していなくても見た目変わらない
ように見えるのですが。

225:デフォルトの名無しさん
04/09/05 23:39
>>224
> MIIDlet-Application-Range: 0,0
の記述は確かに、エミュには関係しないな。実端末で影響する。

いわゆるQVGAサイズとは240*320(W*H)のこと。
画面サイズは240*260なので、はみ出して当然。
Javaから扱える画面はQVGAマックスではないので注意。

226:222
04/09/05 23:45
>>225
エミュでは「MIIDlet-Application-Range: 0,0」の
記述は関係しないのですか。謎は全て解けました。
Javaから扱える画面はQVGAマックスではないのは
もちろん知っていましたが。

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


227:デフォルトの名無しさん
04/09/06 17:58
ezplus からブラウザの起動ってどうやるんですか

phase2.1

です

228:デフォルトの名無しさん
04/09/06 19:23
アプリ自体を停止しないでスレッドの停止って出来たっけ?

たとえば
app1からthread1 thread2を開始させる
そしてthread2を停止してthread3を開始。 みたいな。

229:なっち(○´ー`○)
04/09/06 22:08
>>228
run()を抜けた状態が安全な停止にあたるので
実装したrun()の最後で
次のスレッドを開始すればいいんでないですかね。
CLDC/MIDPにstopに類するメソッドは定義されていないと思う。
ついでにスレッド違いでゴンス。

参考
URLリンク(www.gimlay.org)

230:デフォルトの名無しさん
04/09/06 22:26
>>228
オレも、他のスレッドを直接停止させることはできない、ってどっかで見たような気がする。

thread2は常時自分が生きるための権利を表すフラグをチェックしつつで、
app1がthread2を生かすためのフラグを下げて、
てな感じで対処すればいいと思う。

231:デフォルトの名無しさん
04/09/07 00:37
MIDP2.0使えるようで使えねーーーーーーーーーーーーーーーーー

232:デフォルトの名無しさん
04/09/07 16:21
>>227
(ノД`)ノ

233:なっち(○´ー`○)
04/09/07 23:12
>>232
EZアプリ(Java™)プログラミングガイドの
5−2(3)ではアカンの?

URLリンク(www.au.kddi.com)

234:なっち(○´ー`○)
04/09/07 23:14
まちがいた(2)だね

235:デフォルトの名無しさん
04/09/08 11:09
(ノД`)ノ かいけつしましたなっちありがろー

236:デフォルトの名無しさん
04/09/08 23:55
au 5407CAで、テキストフィールドに入っている改行がすべて
空白に変換されて表示しまうのですが、どうすれば良いでしょうか。

同じソースコードでvodafoneの601SHでは改行が反映されて
表示されました。

問題の部分のソースは、
textbox =new TextBox("コピー",stringdata,200,TextField.ANY)
Display.getDisplay(aapaste).setCurrent(textbox)

stringdataは、改行入りstring型データ(5文字×5行程度)

例)
hogehoge
aaaaaa
bbbbb
って入れたはずデータが、「hogehoge aaaaaa bbbbb」と
改行がすべて空白になって表示されます。

237:なっち(○´ー`○)
04/09/09 01:54
>>236
例)のデータってどうやって入力してるの?
Phase3のエミュだとエスケープシーケンスで
普通に改行されて表示されるけどん。

なお、実機依存の話だと
なっち(○´ー`○)には
手のほどこしようがありません。

238:236
04/09/09 08:30
>>237
テキストファイルから読み込ませてます。

kjx作成ツールと一緒についてきたエミュレータ上では、
問題なく改行が表示されています。
もしかしたら実機依存の問題かもしれません。

239:デフォルトの名無しさん
04/09/09 11:04
>>238
確かに改行できない実機はいくつかありますよ。
A5403CAでも改行できなかったから、その後継(?)の5407も同様かも。
ちなみに5403では文字入力画面に入る際に、
 使用できない文字があるのでスペースに置き換えます
とかいうダイアログがでて置換されます。

自分の場合、頻度の少ない記号(~とか)を改行文字の代わりに使ってます。
byteデータの段階で改行コードに当たる数値を代替記号のコードに入れ替えて
その後でStringに変換して使ってます。
実際の改行を含んだデータにしたい場合は逆の操作で。
結局入力画面では改行されないので解決と言えるかはわかりませんが・・。

240:なっち(○´ー`○)
04/09/09 12:14
\nエスケープも効かず?
まぁ効いても同じことかな。

241:デフォルトの名無しさん
04/09/09 12:59
auのテキストフィールドの改行は機種依存だってJavaDocに書いてあるよ。

242:236
04/09/09 21:41
>>239-241
返事遅くなりました。ありがとうございます。

やはりカシオ機の機種依存ですか。レスを読んだ後、気になったので、
実機を貸して貰って、テストしましたが、上に書かれているように
「使用できない文字があるので、、」となりました。

>>241
そうだったんですかorz

代替記号を使ってなんとかしてみるかなあ。

243:デフォルトの名無しさん
04/09/10 14:41:41
TextBoxとかラベルとかをGUIベースで配置できる
フリーの開発環境ってありますか?

前はJBuilderでしこしこ手書きしてたんですが。
ちなみにKDDIPです

244:デフォルトの名無しさん
04/09/10 15:36:01
そんくらい手書きしろ。

245:デフォルトの名無しさん
04/09/10 20:27:01
>>243
配置も何も、上から順に並んでくだけなのに必要ないだろ。

246:デフォルトの名無しさん
04/09/10 21:21:00
URLエンコードってどうにかしてVodaとAU
同じアプリで動かす方法ってないですか?



247:なっち(○´ー`○)
04/09/10 23:20:35
>>246
誰かしら作ってそうだけど、自前で実装ですかな。

248:デフォルトの名無しさん
04/09/10 23:58:26
ちょっと、お聞きします。
m3DPrgV_201.pdfにある

First3D.java
siba.mbac
siba.mtra
siba.bmp
siba_sphere.bmp

...はどこかでダウンロードできますか?

249:248
04/09/11 01:49:15
自己レスです。
SDKに.javaファイル以外はありました!
.javaファイルはpdf見ながら打ち込みます。

250:デフォルトの名無しさん
04/09/11 11:19:38
>249
……おーい。PDFって大概コピペできるの知らないのかー?
まぁ久々にタイピングの練習をしようってんなら止めないけどさ……

251:デフォルトの名無しさん
04/09/11 11:58:45
そういや、VodaのPDFはセキュリティでコピー不可に設定されてるな。
不便だろ。

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

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

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

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

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

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

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

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

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

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

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



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


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

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

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

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


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

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

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

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

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

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

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

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

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

269:266
04/09/15 09:01:47
レスありがとうございます。

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

281:277
04/09/17 23:15:23
一応

MIDlet-Resident: Y

MIDlet-Resident: S

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

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

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

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

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

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

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



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

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

288:デフォルトの名無しさん
04/09/18 23:40:02
>>286
DoCoMoの例だけど、参考になるはず。
スレリンク(tech板:258-262番)

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

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

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

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

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

291:285
04/09/19 11:39:57
できました!
多謝 多謝!

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

302:デフォルトの名無しさん
04/09/22 22:16:52
URLリンク(k-tai.impress.co.jp)

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

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

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


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

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


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


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

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

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

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

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

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

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

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

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

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

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

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

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

CCanvas() {
}

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

317:313
04/09/25 09:30:01
315ミスっぽ

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

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

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

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

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

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

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

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


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

classpathでstubclasses.zipを指定してないというオチでは?
>322も。
URLリンク(www.saturn.dti.ne.jp)

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

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

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

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

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

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

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

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

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

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

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

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

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

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


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4900日前に更新/320 KB
担当:undef