CLDC+MIDP+携帯電話用Javaスレッド part 6
>1 乙
おまんこ
おちんこ
AUだけどPCブラウザでjavaアプレットも動かないの?
Flashもアプレットも動きますん
12 :
デフォルトの名無しさん :2006/08/11(金) 18:43:45
知っている香具師いたら教えて欲しいのだけど… バグとかそういうのではないんだけど、 ボダの3GC で、自分の知らない Thread が8つも立ち上がっていて、 一時停止すると、2つ減る状況があって、この2つのスレッドって 何なのか気になって夜も眠れません。 もちろん、それ以外の6つのスレッドも気になるんだけど、 だれか教えて!プリーズ!
ソフトバンクの携帯はjblendのライブラリが使えるJavaなのかな.....?
Vodafoneの開発ガイドにopenInputStream("resource:///〜");は 端末実装依存、なんて書いてあったんだけど、 getResourceAsStream("/〜");は全機種保証ですか? 世代によってソース分けるのがイヤなのでStorageConnection();は 使いたくない、なんて軟弱プログラマーの戯言なんですけれども、 その辺は毛唐の仕切りの悪さがそもそも悪い、てことで勘弁してちょ。 教えてエロい人。
>>12 javaでスレッド何個立ち上がってるか確認出来るAPIなんてあったっけ?
あ、釣りですかすいません
スレッドのIDか何かで数を推測することはできるよ
具体的にスレッド数みたいから 方法書いてくれ。
>>15 12とは別人だが。
Thread.activeCount();
>14 getResourceAsStreamでおk
>>19 12 ですが、フォローサンクス
>>15 Thread.activeCount();
で、現在のアクティブなスレッドの数を
知ることが出来るようです、
ただ、、、803 T は、俺が説明した感じの現象が起きるんだけど、
803N は、そういった現象が起きなかった。。。
気にしなくてもいいのかな・・・
元々気にする必要無いんじゃね?
問題が起きないなら気にしなくてよし
24 :
14 :2006/08/18(金) 01:50:53
>>20 サンクス!
どこにも書いてなくてサッパリだったもんだから
openInputStreamをcatchしてその中でgetResourceAsStreamして、
なんてソース書いてたよw
25 :
デフォルトの名無しさん :2006/08/22(火) 04:31:53
いまさらながら、Ezアプリ(Java)でプログラムを組もうと思っているのですが、 SDカード内のテキストファイルをGrepできるようにしたいと思っています。 ところがSDカードへのアクセス方法がわかりません。 どなたかご存じの方がいましたらご教授お願いします。
>>25 使ったこと無いけれどコレ↓らしい。
com.kddi.io.MemoryConnection
com.kddi.system.FileSystem
vodafoneのアプリを作成しているんですけど、 携帯電話の機種を特定するためのメソッドとかありませんか? よろしくお願いします。
>>27 ちゃんとドキュメント読め。
開発ガイドTips編
1.11 プラットフォーム名称
System.getProperty("Platform")
>>26 レスありがとうございます。
公式もネット上も情報が見つからないので助かります。
使い方もわかりませんが、なんとか試してみたいと思います。
>>29 >公式もネット上も情報が見つからないので助かります。 使い方もわかりませんが、なんとか試してみたいと思います。
だから
>>28 が言ってる通りドキュメント読め
その言い方じゃ何も調べてないようにしか聞こえない
まったくわかってないな・・・
これは酷いwwwwww
お前らイライラばっかしてると早死にするぞ。
bakanoaitewosututobakagauturukorehashoumeizumidesu
36 :
デフォルトの名無しさん :2006/08/27(日) 15:14:14
私用EZアプリでZIP圧縮がしたいのですがMIDP1.0にはjava.util.zipパッケージが無く Deflaterクラスが使えないのでjzlibかjazzlibを使おうとしています。 jzlibだとimport com.jcraft.jzlib.*;みたいにするようですが どこにjzlibパッケージを入れればいいかが良く分かりません。 srcフォルダにcom\jcraft\jzlib\を入れれば出来るのかと思ってやってみても無理で パッケージをjavacでコンパイルしてclassファイルをmidpapi.zipを入れて コンパイル成功させてできたアプリのjarの中にclassいれても無理でした。 ググってみたんですがどうも見つかりませんでした。 どのようにすればパッケージを追加できるのでしょうか?
37 :
36 :2006/08/27(日) 15:16:29
あれ、メ欄空にしてもIDでないのか >.zipを入れて →.zipに入れて
質問です。 J2ME WirelessToolKitについてなんですが、 これのJarファイルのサイズ制限(?)てのはいくつなんでしょうか? Doja4.0なら100k以下、みたいに決まってます?
「〜ます?」って気持ち悪い語尾だな。 「〜でしょうか?」は言えているのに、「〜ますか?」と言えないのが謎。
決まってません。
決まっていますん。
決まってないついでにスレ違いじゃね
44 :
デフォルトの名無しさん :2006/09/06(水) 22:01:24
アプリゲットでVoda用のアプリを開発テストとしてアップロードしようとしたら、 「API審査に通過できませんでした」ってエラーが出る。 理由が「ネットワーク接続を行っている」になってるんだけど、ネットワーク接続なんて機能は付けていない。 よく調べると、QRコードを使うところで↓みたいなコードを書いたのが引っかかっているっぽい。 >BarCodeConnection reader = (BarCodeConnection)Connector.open("barcode:"); QRコードは禁止されてないと思うんだが、なんでだぜ?
>>44 やあマリサ
もしかして有料(?)の登録しないとバーコードのAPI使えないんじゃないかなと思った
46 :
44 :2006/09/08(金) 11:17:49
>>45 なんか調べたら、Connectorは使用出来ないんだけど、
代わりにJConnectorとかいうのを使え場おkって話みたい。
そのJConnectorとやらが何処で手に入るか不明なんだが、
2chの過去ログ見るとベクターから手に入るとかいうレスがあって、
恐らくここでいうベクターってのはゲームチャンネルの事かな?と思って登録し、
確認メールが来るのを待っているところ。
長文乙、俺
47 :
デフォルトの名無しさん :2006/09/08(金) 23:54:38
willcom SHARP W-ZERO3の実機を使ったJAVAアプリ上で Image img = Image.createImage("/hoge.jpg"); をやるとNullPointer Exceptionを返してくる 画像がpngだとOK MIDPはPNGしかサポートしていないのでしょうか? JPHONE等のMIDPはアプリ上でGIF、JPEGは扱えるのでしょうか? ちなみにPC上でのエミュレータではJPEGはちゃんと表示しています。 お忙しい所誠に申し訳ございませんが、経験のアル方お返事よろしく程 お願い申し上げます。
48 :
デフォルトの名無しさん :2006/09/09(土) 00:16:36
今はJPHONEなんてなかった vodafoneだった あれまた代わるだった
MIDP の API grep しても JPEG も JPG もみつからないな。
png/jpegは正式対応だけどgifは機種依存だったかなような希ガス
>>49 エミュのライブラリをgrepしただけだろ?
あれは関数とかはあるけど中身は無い
まぁ端末のを引っこ抜いて見たならどうなってるのか知らないが。
>>47 Willcomの310SAはJPG表示できてるみたい。
よくわからんけど某教本にあったサンプルで表示できてる。
52 :
49 :2006/09/09(土) 09:41:33
>50 grep したのはMIDP1.0 と 2.0 の javadoc 。 javadoc でも spec の PDF(P271) でも、 PNG サポートしか書いてない。
>>47 あ。よくjpegって一くくりにするけど、いろんなフォーマットが混在してるから
注意してね。
最近の画像を昔の画像ブラウザとかで開くとエラーになる例はいくらでもある。
54 :
デフォルトの名無しさん :2006/09/09(土) 10:52:42
49-53の皆様ありがとうございます ちなみにiアプリの方は古いJPEGでもサポートしてました 皆さんのご意見を元にもう少し調査してみます。 もしかしたら、JPEG特許の問題がらみかな・・意識的にJPEGとGIFはずしたとも考えてみたり とにかくありがとうございました
現在、サウンドにPhraseを使用したP型・3GC対応のVアプリを開発しています。 今までP型でPhraseを使用する場合、1チャンネルに4和音を割り当てることができ、 最大で4チャンネル(16和音)を同時再生できると認識していました。 しかし、YAMAHAの公式HPには「P型はMA-3に対応している」 「MA-3は最大32和音」とのっていました。 つまりP型では1チャンネルに8和音を割り当てることができ全4チャンネル (又は4和音を割り当てることができ全8チャンネル)、 最大32和音まで同時再生できるのでしょうか? また、3GC型では最低でMA-3に対応しているようなので、 こちらも最大32和音と考えてよろしいのでしょうか?
実装は対応してないなあ。
>>55 出来ない。それはSMAFの仕様でPhraseとは関係ないよ
Phraseは1チャンネル4和音でOK
まあ言いたいことは判るw
>>57 返答ありがとうございます!
つまりPhraseを使用する場合、
P型、3GC共に1チャンネル4和音、4チャンネル、全16和音。
MA-3で最大32和音というのはSMAFの場合、
ということですね?
サウンド周りの資料がなくピンチでした。
非常に助かりました!
60 :
58 :2006/09/12(火) 20:05:13
>>59 すみません、スレ違いで最初に向こうで聞いてしまいました。
以後注意します。
SMAF Phrase ファイルの後ろに無音をくっつけるとか ちょん切るとかして、再生時間を変えることってできますか? ある2つのPhraseを同期再生させたいのですが、再生時間が違って 同期させられないので、揃えたいのです。
無理
>>61 単純にファイル読み込んで後ろちょん切るなり無音データ加えてPhraseにセットすればおk
>>63 SMAF/Phraseって最後にCRCついてね?
切ったり貼ったりできんのかよ?
>>63 ありがとうございます。
やっぱそれしかないんですかね。
バイナリエディタで色々いじくってみたところ、
チャンクサイズと最後のCRCを正しく書き換えれば
まっとうに読み込まれるようですが、肝心の、
シーケンスデータにどんな値を突っ込めば無音時間が
延びるのかわからない……。
試しに0xFFFFとかで埋めてみたらエンドレスループ。
>>65 CRCはわかるんだが
チャンクサイズってどこのことよ?
>>64 CRCぐらい自前で計算しろ
Phraseに使ってるデータの構造ならどっかに書いてあった希ガス
>>62 おいおい複数のSPFをロックかけて同時再生させるAPIってそんな感じのやつが
PhrasePlayerか何かに無かったっけ?
使ったことないから判らないけどさ
PhraseTrack#setSubjectToだ。 まあ使ったこと無いから、使えないのかもしれないんだが、それだったらスマン
70 :
58 :2006/09/14(木) 11:36:58
>>68 >>69 >PhraseTrack#setSubjectToだ。
これですね。
使えると非常に便利だけど、同期させる曲の長さが少しでも違うと
エラーになるので、簡単に曲の長さを変えれるコンバーターがあれば
いいんですけどね…。
しかもこの曲の長さが少しでもっていうのが、どのくらいまでの精度なのか
よく解りません。
YAMAHAのATS-PhraseL2を使ってPhrase分割すると曲の長さが変わるし…。
FileChunkのbodyだけでCRC計算してるんだが 全然合わない。。。タシケテ
自己解決しました。 crc32で計算してましたorz auの公式にソースまでついて載ってました... vodafoneだからカンケーネーヨ!とか思ってたらドンピシャでした...
sondafoneに変わるんだよな…
userAgentがsoftbankになるから対応しないと
userAgentの使い方とかわからず使ってない俺は勝ち組
>>55 PEACEにまったく同じ文章あったけど。。。
904SH 上の V アプリで GPS による位置座標の取得に 成功した方はおられますか? MEXA Core の DeviceControl で取得した値は 測位するたびに数100mくらいは平気で変動するので ホントに GPS 使ってるのかどうか怪しい気がします…。 ちなみに LocationAPI(JSR179)は SecurityException が出てしまいます。orz
>>77 センサの制度がそれくらいなら補正すること考えたら?
>>77 宇宙レベルで考えれば100mなんて誤差だ
>>77 GPSの基礎知識ぐらいは身につけた方が良いよ?
それなりによいアンテナでも百m程度は誤差が出るよ。
これは基礎の基礎だから何故かは自分で調べてね。
いい加減なつうか極小の携帯のアンテナだとそんぐらい誤差が出るかもね。
>MEXA Core の DeviceControl で取得した値は MEXAで取得できる値は、基地局ベースで、GPSじゃないよ。 JSR179以外、AGPS使えない筈。
82 :
デフォルトの名無しさん :2006/09/27(水) 12:53:31
W-zero3(007SH es)のMIDPで、 ファイルを読み出す方法はないでしょうか? んぱか氏の本(Willcom 携帯アプリプログラミングブック)では、 PDA Optional Package for J2ME は、Zero3は利用不可能らしい。 実際に、それを利用したプログラムはインストール時に対応していないってエラーが出る。 (WX310SAとかは利用できるのにねえ!) MiniSDに保存してあるSMF(.midファイル)にアクセスする方法さえあれば、 簡単に、MIDIプレーヤーが作れるのだが...。
Windows アプリ作ったらいいんじゃね?
84 :
デフォルトの名無しさん :2006/09/28(木) 01:35:23
>>82 >>83 > Windows アプリ作ったらいいんじゃね?
Wzero3のJava(=MIDP)のSMF再生は、それなりによい。
追加のWaveデータなしで、ソフトシンセが鳴らせる。
よって、Java(=MIDP)ならば、簡単に、軽量MIDIプレーヤーを作ることができる。
単純に、外部ファイル(miniSDとかに置いたファイル)にアクセスできるだけでよいのに
zero3のJava(=MIDP)ではそれができないなんて。。。
これじゃあ、つかえねー!!
セキュリティの理由かなにかだろうか?
javaで作って軽量化したところで数10k程度しか変わらないんじゃないか? まぁそっちの環境の空き容量がよほど少ないのかも知れないが。 的外れだったらスマソ
86 :
デフォルトの名無しさん :2006/09/29(金) 00:31:50
暫く新機種出てないなと思ったら、一気に13機種かぁ・・・。 検証とかいろいろと大変そうだ。
こんな感じで普通にアクセスできない?file://localhost/SD:/
zero3は ・mascotcapselくらいしか独自拡張部分はない(ID取得とかはあるけれど) ・横画面だとFPSは一桁 aplixはへっぽこ
VodaのP5以降の端末でSDカードから画像やサウンドデータを取得する処理を作りたいのですが、 エミュレータで確認したところファイルがないというエラーが返されてしまいます。 StorageConnection conn = null; conn = (StorageConnection)Connector.open("file:///mc/data/aaa.png); 画像ファイルはエミュレータで設定されている外部メモリ用フォルダに入れています。 V-JSCL-1.2.2/bin/Ex〜/data/aaa.png (↑すみません、現在確認ができない為フォルダ名が曖昧です) パスの間違い以外にファイルがないと言われる原因はありますでしょうか?
>89 Memory Card Status -> Removed がある。 カードが刺さってない状態をエミュする設定だな。 あとは、ExtStorage, IntStorage のパスが本当に正しいのかをイヤっていうほど確かめてみる。 それ以外は思いつかんなぁ。 とりあえず、「カードがサポートされてる」と認識できてるのか、指定したパスが本当に見えてるのか、あたりの確認のために、 StorageConnection#list() とか Device#getDeviceState(MEMORY_CARD) とかを呼んでみるとか。
>>90 確認したところ、ソース内のパス
"file:///mc/" が "file:///ms/" になっていました。
こんな単純なミスでお手数おかけしてすみません。
確認・基本が大事ですね…。
ありがとうございました!
ソフトバンク(ボーダフォン)ユーザーなのですが、 開発者向けサイトによれば実機デバッグをするためにダウンロードは コンテンツアグリゲーターを経由しなければ出来ない旨が書いてあります。 ちょっと不便だなぁーと感じているのですが、開発ツールのみで完全なデバッグが 出来るのでしょうか?
できますん
実機では予期せぬハプニングが起きる
コンテンツアプリゲーターについて調べてみましたが 法人向け以外は機能制限があるし、 法人向けは登記簿謄本を送るなど不便ですね。
あくまでエミュレータなんだから完全なデバッグが出来る訳無い ちゃんと設定しないとエミュレータじゃ描画もかなり早く見えるしファイル読み込みとかも早く見えるが実機で動かすとかなり遅い 機種依存のバグも起こる まぁ俺は持ってる機種でしかテストしてないが。
フレーズ未設定のPhraseTrackのstop()メソッド呼ぶと エミュレータでは何もしないが実機だと例外投げる。
エミュレータでも例外でるけどな
すんません、環境構築の段階で詰まってます。 3G端末(V604SHでS)アプリ作ってみたくて以下をインストールしました。 J2ME Wireless Toolkit … 2.2 J2SDK … 1.4.2.12(環境変数PATHの設定) S-AppliEmulator … JSCL1.3.2(環境変数CLASSPATHの設定) この状態でJ2ME Wireless Tookkit2.2を用いてJAVAをコンパイルしようとしたのですが build実行時に「パッケージ com.j_phone.XXXは存在しません」とでて失敗してしまいます。 J2SDKのjavacコマンドにてコンパイルを行うと問題なくコンパイルできます。 J2MEではJSCL1.3.2のクラスは使用できないんでしょうか。
100 :
sage :2006/10/07(土) 17:57:13
>3G端末(V604SHでS) 3GでV6…
V604SHって3Gだったのか俺V604SHにしてくるわ
>>94 おーっと!ここでゆうこりんポロリです!ポロリが出ました!!
とかな。
103 :
99 :2006/10/08(日) 15:42:19
あああー!! 604→904ですorz 嘘情報すみませんでした。
104 :
デフォルトの名無しさん :2006/10/08(日) 16:26:57
後の世ではこれを69と呼んだのであった 完 で、そのツールではクラスパスは指定できるのか? 又、したのか?
>>103 地方だったから新幹線乗ってショップまで行った。
電車代どうしてくれる!!
107 :
99 :2006/10/08(日) 22:06:12
>>104 おっしゃるとおり、クラスパスが通ってないのが原因のようです。
クラスパスの設定方法が調べても不明なため、S_appli_SDK_132のクラスstubclasses.zipを
J2MEにて作成したプロジェクト内にコピーしたところ、上記の問題はクリアしました。
しかし、「Error preverifying class...」という別のエラーメッセージが出てしまいます。
マニュアルで見たところ「Java2プラットフォーム(スタンダードエディション)で作成されたライブラリは使えない」とのこと。
どうやらJ2ME WirelessToolkitではSアプリSDK1.3.2を用いた3Gアプリは作成できないようですorz
他アプリケーションを探すことにします。お騒がせしました。
MEXA の方使ってみたら?
>>107 言っとくがWTKでも普通に開発できるぞ。
WTKが出来ないんじゃなくて
>>107 が出来ないだけだ
とりあえずぐぐれ、話はそれからだ
そんな俺は最近Eclipseでコンパイルからエミュレートまで出来るようになった
ぐぐらなくても公式のドキュメントだけで足りるけどね。
>>111 やるじゃん
…というか、やっとかよって感じか
>MIDP2.0準拠となっており、au独自の仕様は採用されない。 国内最強になる可能性が
114 :
デフォルトの名無しさん :2006/10/10(火) 17:02:55
MIDPOnlyですか? 通信系が自由に使えればそりゃいいですけど それだけだとちょっと作りにくい気が
115 :
111 :2006/10/10(火) 17:13:15
公式サイトによれば、POSTで受信32kB、送信5kB URL忘れちゃった
116 :
111 :2006/10/10(火) 17:14:52
勝手アプリonlyということは、有料アプリは作れないということかいの? ビジネスモデルに乗らないものをわざわざ出すわけないし、 そこそこ行き渡らせたところで何かするつもりなんだろうな。
KDDI側の文書では、Trusted のアプリは出来ないっていうだけで 有料アプリ禁止とは書かれていないような気がする。
つまり、一般的な有料アプリで使われるような機能は使えない〜ってわけですね。
まあカメラ、GPSは無しだろうな。 メモリーカードは他のメーカーと同じ思想なら危ういな。 個人的にレコードストア32kバイトがつらい。 ゲーム作って我慢してろってことか。
バーコードとかQRコード読めるアプリを作れればいいのに・・・。
勝手アプリにそこまでデバイスと特権を開放したら 今迄せっかく審査・検証で選別してきたBREWアプリの世界が台無しだからやるまい。
あのままJavaを続けていたら、doja同様の開発が出来て便利だったのにな。 brewにして一体何が良かったのか。そんなに大差あるアプリが出てるのだろうか。
>>123 brewは、携帯端末開発のプラットフォームとして見れば大成功だったと思うけど。
ネイティブ周りのアプリを使いまわせたおかげで、開発コストダウンで端末価格下げれたし。
ゲームのコンテンツプラットフォームとしては微妙だが、致命的って感じでも無かったし。
…釣りですか?
結局第3世代は Qualcomm ウハウハだけか……
そんな昔の話は参考にならんぞ、もう
>>113 jarが300KB、レコードストア32KB、通信は1日3MBまで、のどこが最強なんだよw
それ皮肉だろ
海外モノの移植は楽になるだろうけど商用利用できないって噂が(´・ω・`)
極小キロバイトみたいなミニマムアプリ専門サイトでも立ち上げるか・・・
DSで流行ってるミニゲームみたいなのは問題無さそうだな。 そういうのが増えるの狙ってるのかな。
>>133 スパイシーソフトは
よろこんでるんだろうな
Flash ゲーだって公式サイトが有料で出してるんだから、オープンアプリは 無料じゃなきゃ駄目ってことは無いんじゃないの? ・・・と思ったけど、CPに公式サイトでの利用を許可したら誰もBREWアプリ作らなくなるか。 それが正しい姿だと思うんだけど、KDDIは特定戦犯のメンツのために嫌がるかもしれんなぁ。
一般のクリエーターが有料アプリ勝手に作るのは問題無いと思うけど、料金徴収が問題になるかと思う。 ところでauのは動作速度どんな感じなんだろう… まぁ俺はソケットでも実装されない限りずっとvoda民だが。
だれか教えてほしい javadocのHttpConnectionに下記のようなソースがあるけど HttpConnection c = null; InputStream is = null; OutputStream os = null; try { c = (HttpConnection)Connector.open(url); // Set the request method and headers c.setRequestMethod(HttpConnection.POST) // Getting the output stream may flush the headers os = c.openOutputStream(); os.write("LIST games\n".getBytes()); os.flush(); // Optional, getResponseCode will flush os.flush()てどういう動きするもんですか? バッファリングしているものを書きだすという意味であってます? os.flush()ではうまくデータを送れずos.close()に変更したら ちゃんと動きました。 flushでデータ(例えば a=b)を送ろうとすると受け取った側では 3改行 改行 a=b というデータがきます。 なんとなくこのデータの前に Content-Length:とかついてくるような気がしてなりません。
>>137 os.flush() は想像している通りの動作。
サーバ側は、例えデータが届いても「それでデータが終わりなのかどうか」が
わからないから、まだ処理を開始しない。
close()してあげれば(あるいはリクエストヘッダにContent-Lengthを付ければ)
終わりと解って処理を進められる。
>3改行
>改行
>a=b
3改行a=bの間違いで、Transfer-Encoding: chunkedでデータが送られているのでは・・・
>>138 レスどうもです。
わかったようなわからないような・・
os.flush();
os.close();
ではうまく動かない理由がよくわかりません。
Transfer-Encodingはflush()するとchunkedがついてました。
close()のときはなにもついてませんでした。
とりあえずそういうもんだと進めていいのだろうか・・
>>139 HTTP の基本なので、わかるとかわからないとかじゃなくて
仕様にしたがって処理してやる必要があるってことです。
「うまく動かない」のは、サーバがTransfer-Encoding: chunkedに
対応していないせいでしょうから、ちゃんと対応すればいいだけです。
と思う。
すいません、知っていたら教えていただきたいのですが、 JSCL-1.2.2のエミュレータを使用して、HTTPSのアクセスをするアプリを作成しているのですが、 サーバ側はいわゆるオレオレ証明書を使用しているせいなのか、 javax.microedition.pki.CertificateException: Certificate was issued by an unrecognized entity が発生します。 UtilityのManage Certificatesに、サーバーの証明書をtrustedで認識させたりいろいろ試してみても解決しません。 どなたか対処法をしっていたらおしえてください。
>>141 端末にインストールされているルート証明書からのチェーンがないと駄目なのでは?
>>142 ありがとうございます。
MEkeyToolを使用して、_main.ks内をlistで見たところ、
Manage Certificatesにて取り込んだオレオレ証明書が見えたので、
一度Deleteし、再度importしましたが、解決できませんでした・・・
※証明書は、サーバーに設置している物をIEの機能でエクスポートしました。
>>143 検索すると結構悩んでいる人が多いのですが、
解決策がなかなか見つからないのです;;
>>144 ということは、そもそもオレオレ証明書はエミュレータだと無理なのでしょうか?
エミュレータにサーバー証明書を どうやって組み込めばいいのやら
MEXAEmulator Ver1.1.0を使ってて、おそらくDeviceControlクラスに対してだと 思うのですが、NoClassDefFoundErrorが発生して落ちてしまいます。 そもそも公式エミュなのにDeviceControlクラスが使えないってのは ないと思うので、何かの設定が足りないのでしょうか? どなたか解決方法を知っていたら教えてください。
149 :
148 :2006/10/14(土) 16:10:41
すみません。自己解決しました。 "MIDxlet-API"の属性名を"MDIxlet-API"と微妙に間違えてた為、VSCLモードで走ってたようです。
152 :
141 :2006/10/15(日) 18:33:59
そもそも、実機でもオレオレ証明書サイトにはHTTPS接続できませんでした… まだじっくり検証をしていないのですが、 データ受信はできても、送信時、Outputstream.flush()で CertificateExceptionが発生してしまう。 ブラウザだと、「安全でないサイト」の警告がでた後に接続は可能ですが、 アプリからだと上記Exceptionになってしまって駄目でした。 どうしたもでしょうか。 (オレオレ証明書を止めればいいんですけどね。)
>>153 携帯のブラウザにサーバー証明書を追加すること事態
無理ないんじゃない?できるんだっけ?
無料版で試してみようと思ったが
無料版のルートCAは当然、携帯に入ってないっしょ。
>>154 証明書の追加無理っぽいですね。
エミュレータの方には、サーバ証明書と追加出来るようなんですが、
なんか、そちらもなんかうまくいかないのですよね。
>>155 エミュレータにはサーバ証明書を追加できるの?
探し方が尼尼なのか見つからない。
159 :
デフォルトの名無しさん :2006/10/18(水) 13:42:03
あの、MIDPってもうダメかな? 将来的にさ… ほら、どんどん携帯進化してるし、…大丈夫なの? このままメシ食って行けるの??
お前は世の中を気にせず小さく生きて行け 世の中の進化にとらわれず、迷惑もかけず、目立たず、こじんまりと ほら、おまえはMIDPになった
161 :
デフォルトの名無しさん :2006/10/18(水) 14:06:07
うぅ…おっきなJavaさんになりたいよぉ
3G,MEXAのhttp通信について質問なのですが HTTP通信をする時にネットワークに接続しますか?という ダイアログが表示されると思いますが,ここでいいえを選択して アプリを終了させずに再度ネットワークに接続をする時にダイアログが 表示される機種とされない機種があると思われますが これは端末上の仕様なのでしょうか? 表示がでないからといってアプリの動作に 支障がでるわけではないのですが 仕様なのかどうかだけ把握しておきたいですので どなたかご教授していただけないでしょうか? (仕様かどうかというヒントだけ下さいませ) 表示されない機種貼っておきます。 表示されない機種 T端末 810SH
ヒント:前スレ962
MSNのメッセンジャーがvodaだけないのはどうしてなのか ヤフーはM$に嫌われてるのかな そういや、903SHに変えたんだけど前使ってた602SHよりゲームとかが重い…
165 :
162 :2006/10/20(金) 20:00:26
>>163 ありがとうございます。
ビューアが無いので過去ログは見れませんが
ググってキャッシュを片っ端から漁ってみようと
思います。見つかるかなwktk
会社で2chがダメな人? 962 名前:デフォルトの名無しさん[sage] 投稿日:2006/07/28(金) 14:27:27 ヒント:アプリのセキュリティ設定、多分 963 名前:デフォルトの名無しさん[sage] 投稿日:2006/07/28(金) 14:37:01 ヒント:起動後1回だけ表示設定、多分
167 :
デフォルトの名無しさん :2006/10/21(土) 16:51:03
ソフのページみて来たけど、新機種は3GとかWMAとかが「ー」になってるけど、マジ? 下位機種は使えるのが多いのに…嘘だろ?
804SHで動いていた自作アプリが、804Nだと動かないという現象が発生しています。 動きとしては、起動→HTTPS通信(別スレッド)→初期画面起動 という流れなのですが、上記のHTTPS通信処理中と思われるところで、 止まってしまっているようで、画面が表示されません。 (通信アイコンも出ていないので、通信も実行されていないようです。) MEXA CoreとJSCL1.3.2の違いなのかなぁ?とかも思ったりするんですが、 なにか心当たりのある方がいらっしゃれば、ご教授ください
804Nと705PはMEXAのオプションAPIを使用することができない。 例えばGraphicsUtilクラスを使用していると止まる。
>>169 ありがとうございます!
それでした!
使ってないと思っていたんですが、
圏外をチェックするAPIを一箇所呼んでいました。
ありがとうございます。
createImageで作ったイメージにあらかじめ透明色を指定することってできるのでしょうか? ノベル系のものを作ろうと思ったんですけど、文字と画像等を別に保持していて重ねて表示したいんですが。 透明の画像にdrawStringで文字を書いて、それを背景や、人物の上に重ねる・・・・というような具合です。 それが無理だとすれば、imageをドットごとに見て、黒(透明色とする)なら重ねないで・・・とか1ドットづつやるしかないのでしょうか?
>createImageで作ったイメージにあらかじめ透明色を指定することってできるのでしょうか? できない。 >とか1ドットづつやるしかないのでしょうか? そう。
173 :
172 :2006/10/24(火) 03:44:31
>透明の画像にdrawStringで文字を書いて、それを背景や、人物の上に重ねる >・・・・というような具合です。 毎回背景画像で画面を上書きして(描いてある文字を消して) それから新たに文字を描く、という方法が妥当だろうな。
midletクラス以外からdestroyapp(true)って呼べないんでしょうか? 普通にcanvasクラスなんかでmidletクラスのインスタンス作ってdestroyapp(true)を呼んでもうまくいきません。 ただcanvasクラス上で終了処理がしたいだけなんですが。。。
つ[notifyDestroyed] 別インスタンスから呼んだらどうなるのかは知らない。
MIDlet#destroyApp()ってアプリから呼ぶもんなのか?
Vodafoneのエミュ・実機でfontの文字サイズをsmallにしても、 文字が凄い大きいんだけど、何か良い方法ないのかな。 tinyは使えないし、数字で指定してもエラーが出ちゃうし。
>>177 俺、呼んでいるけど問題起きたことないぜ。
>>178 それはエミュのsmallフォントのサイズ設定がデフォルトで20x19になっているからだ。
エミュのオプションから、普通に変更できる。
直接設定ファイルから変更する場合は、machine.profileファイルの
FontSWidthとFontSHeightを12に書き換えればいける。
ついでに、サブディスプレイが毎回出てうざかったら、emulator.configファイルの
PhoneFaceSubの内容を false にすれば、サブディスプレイが消える。
問題が起きる起きないではなく、コールバックなメソッドをアプリのプログラム側から呼ぶのはどうなのか、という話だろ
182 :
180 :2006/10/25(水) 00:10:34
アプリ側から終了させる手段がないなら、それでいいんじゃないのか? 181はアプリを終了させるときに、どんな手法をとっているんだ?
183 :
177 :2006/10/25(水) 00:22:47
184 :
177 :2006/10/25(水) 00:26:54
ちょっとグダグダ気味だけど付け足すと、 別にアプリからMIDlet#destroyApp()呼んでも問題ないことくらい分かるよ、 その中に何か特別な記述をしてなければ。 で、特に何も記述をしていないMIDlet#destroyApp()だとしたら アプリから呼んでも何も意味はないじゃないか、ということが言いたかった。
185 :
180 :2006/10/25(水) 00:40:24
>>183 そうだったのか。
全然知らんで使ってた。たしかに、リファレンス見るとそう書いてあるな。
基本的にはdestroyApp内で処理することはないが、702NKあたりを対応するとき
アプリ終了時に、サウンドが自動で止まらないから、destroyApp内で
サウンドストップを入れたりする。
186 :
178 :2006/10/25(水) 01:09:09
>>180 教えてクンで申し訳ないが、エミュは出来たんだけど、実機の場合はどうすればいいの?
187 :
180 :2006/10/25(水) 01:11:24
実機でsmallを指定したら、普通は12x12になると思うが 端末は何を使用している?
188 :
178 :2006/10/25(水) 02:05:47
>>187 かなり古い機種でv601SHっていうやつ。
他のアプリとかだと普通に小さいフォントのもあるから、
どっかをいじれば出来るのかも知れないけど…
こんな感じで指定してるけど何がおかしいのかわからない↓
Font font = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_SMALL);
g.setFont(font);
189 :
180 :2006/10/25(水) 02:23:09
>>188 P5端末か。う〜ん、特に問題あるようには思えんな。
俺は↓でスモールフォント作っているが、FACE_PROPORTIONALとFACE_SYSTEMでサイズに差が出るとも思えんし。
Font.getFont(Font.FACE_PROPORTIONAL, Font.STYLE_PLAIN, Font.SIZE_SMALL)
一応、同じP5端末のJ-53SHでは、これで正常に動いている。
後、考えられるとしたら高精細モードでアプリを起動していないから、画面サイズが120x130になっているとか。
Jadの中に↓を入れている?
MIDlet-Application-Range: 0,0
入れていないと240x260ではなく、120x130でアプリが起動してしまう。
190 :
178 :2006/10/25(水) 02:37:54
>>189 それでした。ご迷惑おかけしました。
ありがとうございました
804SSで折り畳み常態か調べる方法ってありませんか? 他の機種では問題ないのだが、DeviceControl.FLIP_STATEでエラーを起こして困っています。
DeviceControl.FLIP_STATEはMEXAのオプションAPIにあたるため 804SSではサポートされていない。 VSCL2.0のDeviceControlも使えないみたいだし、あきらめるしかないんじゃない? ってか、SoftBankの端末情報ページにはVSCLのバージョンが2.0になっているのに 技術資料のMIDP2.0対応端末編 Part3にはVSCL機能に全て×が入っている。 どういうことよ?
193 :
デフォルトの名無しさん :2006/10/26(木) 12:57:31
ボーダ骨! 最低っ! ボーダ骨、最低っ!! すみませんもう祖父でした
現在、SoftBankの3GC向けにアプリを開発しているのですが、 ソフトキーの表示がちらついてしまいます。 厳密には左右のソフトキーが設定するとき一瞬だけ入れ替わっており、 その瞬間に押せば反応も入れ替わってしまいます。 この現象を防ぐ方法はないでしょうか?
>>195 追加するときは、左、右、
削除するときは右、左、の順番でやってみそ。
片方だけ変更するときも、かならず、両方とも削除してから追加ね。
197 :
195 :2006/10/27(金) 21:38:56
>>196 左右入れ替わりがなくなりました!
ありがとうございます!
198 :
デフォルトの名無しさん :2006/10/30(月) 17:09:47
199 :
デフォルトの名無しさん :2006/10/30(月) 20:08:35
すみません、質問です! 現在S!アプリの開発をしてるものですが、 resフォルダに入れてるmmfを PhrasePlayerとSmafPlayerの内 4トラック同時に鳴らす必要があるため PhrasePlayerで鳴らそうとして com.jblend.media.smaf.phrase.Phrasephrase = new Phrase("resource:sound.mmf"); と書いてたのですが、 S!アプリのエミュを実行すると java.lang.IllegalArgumentException: Phrase : check failed と出てしまいます。 調べるとフォーマットが違うとのことなのですが、 サイズを見ても、バイナリを見ても元のmmfファイルと同じものでした。 試しにSmafPlayerの方を作ってみたところ 正しい音楽が流れました。 このことから、リソース自体は問題無いと思うのですが、 原因が分かりません。 どなたか助けて下さい。お願いします。 長文申し訳ございません。
mmfで4ファイル鳴らせたらいいな。
201 :
デフォルトの名無しさん :2006/10/30(月) 20:22:39
え゛っ!? 鳴らせないんですか? ちょスミマセン、もっと冷静に調べてみます。
202 :
デフォルトの名無しさん :2006/10/30(月) 20:25:18
…連投スミマセン って事はPhrasePlayerでは 鳴らせないのでしょうか? とあるページにmmfをPhrasePlayerで鳴らしてるのを見たんですが…
spfなら鳴らせるのにな。
204 :
デフォルトの名無しさん :2006/10/30(月) 20:47:23
ご回答ありがとうございます。 spfでやってみます!
冷静に調べて3分で終わりか… ぐーぐるで上位5件ぐらいを流し読みしたに一票
206 :
デフォルトの名無しさん :2006/10/31(火) 00:47:12
207 :
77 :2006/10/31(火) 19:26:16
>>78-81 大変遅くなりましたが、お返事ありがとうございました。
サポートに問い合わせても全部「サポート外」の
門前払いでしたので皆さんの優しさが染み渡りました。
で、その後の報告をさせて下さい。
81 氏の情報を頼りに JSR179 の使用を試みていましたが
MEXAエミュでは NoClssDefFoundError、
実機では SecurityException が出てしまい、詰まっていました。
Nokia のサイトで見つけた
MIDP_Location_API_Developers_Guide_v1_0_en.pdf には
jad ファイルの MIDlet-Permission:行に
javax.microedition.location.Location を書けとあったので
試しても結果は変わらず。
これでは埒があかないので、
職場を説得してVSP(今はSSPか)に加入し、
こちらの技術サポートに問い合わせてみましたが…
さきほど、正式に
「GPS 関連の情報提供については、SSP企業向けには
サポートしていない、今後もサポートしない」
という返事が返ってきました。
orz
予想外なサポート外
サポートなんて大概無能の集まりだからな。 サポートの仕事はサポート外って連呼すること。 サポート行かされたやつはそこで使えない烙印 押されたら終わりだから、火の粉が自分に掛か らないように必死なんだよね。
210 :
デフォルトの名無しさん :2006/11/01(水) 15:42:09
javax.microedition.lcdui.Form内で色のついた テキストを表示させたいのですが StringItemではできないようです。 何かよい方法はないでしょうか。
要件が >javax.microedition.lcdui.Form内で色のついた >テキストを表示させたいのですが なら、よい方法は何もない。
212 :
210 :2006/11/01(水) 16:36:16
要件は間違いないと思います。 Canvas等なら表示できるが、Formではあきらめろってことですか?
Image に文字を書いて、ImageItem を置くとか。
214 :
210 :2006/11/01(水) 17:23:32
>>213 ありがとうございました。
それでやります。
せんせえ教えて下さい。 Image#createImageで作った画像をヒープ節約の為に破棄するにはどうしたら良いのでしょう? J2SEで言うところのImage#disposeのような手続きはないのでしょうか?
image = null;
ImageのインスタンスにnullつっこんでSystem.gc()でも呼んでおけば勝手に消えてくれると思うよ。
S!アプリにて。
SMAF(.mmf)読んでAudioPhrase生成しようとしたら
java.lang.IllegalArgumentException: invalid data って言われた。
YAMAHA公式ツール(SMAF Sound Decorator)のサンプルファイルがinvalidとか言われても
どないせえっちゅうねん。
何か分かる人いたら教えて下さい。
>>215 Image img = Image.createImage("hoge.png");
// ......
img = null;
System.gc();
219 :
215 :2006/11/02(木) 13:08:55
>>216-218 即答ありがとうございます。
CやらBREWでは考えられないお手軽さなのですな。
705SCについて質問なのですが whileでGraphics.drawChars()を用いて一文字ずつ描画して RPGのメッセージのように流れて表示するようにしているのですが 705SCだけフォントが途中から細くなって表示する現象が見られました。 (最後の文字だけ細くなったり途中から細くなったりと条件がマチマチです) フォントはコンストラクタでfont = Font.getDefaultFont();で フォントを取得してgraphics.setfont(font);と 設定した以外は再設定していません。 Softbankの技術資料の10/27にアップされましたたpdf取得しようと 試みましたところadobereaderがサポートされていない形式と いわれ確認する事が困難となっております。 同現象を体験した方、原因が予想つくお方などが 居りましたらお話をお聞かせ願えませんでしょうか?
>>220 graphics を取得するたびに(与えられるたびに)setFontしないと。
ファームのバグの可能性もあるけど・・・まずはアプリ側を正しく
直してから疑うべき。
MIDPでは、Dojaみたいにホームページから引数与えてアプリ起動ってできないの?
>>218 一番の解決法は一から勉強し直すことだと思う。
君には早過ぎたってことだ諦めろ。
>>222 S!アプリ[MIDP2.0対応端末編]のブラウザ起動アプリを読め
226 :
220 :2006/11/04(土) 02:08:43
>>221 レスありがとうございます。
ファームのバグということも視野にいれつつ、
ご指導いただいたように修正致します。
バグかどうか確認できましたら
追ってレスを致します。
kddiのphase3エミュレータでQRコード読み込み実験しようとして、 ↓のようなコードを書いたら、[解読データ取得] 処理を続行しますか? というダイアログが出るのですが、OKにしてもIOException: capture failed が出てしまいます。 コードがおかしいのでしょうか、それともMANIFESTファイルか何かを弄れば良いのでしょうか。 もしくは単にエミュレータがQRコード読み込みに対応していないだけでしょうか、よかったら教えてください。 BarcodeConnection reader = (BarcodeConnection)Connector.open("barcode:"); reader.setCodeType(reader.QR); BarcodeContent bc = (BarcodeContent)reader.capture(); String data = bc.getString();
MEXAエミュレータで起動した後standing byと表示されているときに 電源ボタンで終了するとstanding byの動きが止まったままで終了してくれないんですけど これはどうやったら直るのでしょうか?
229 :
デフォルトの名無しさん :2006/11/05(日) 21:19:46
なんかソフバンの開発者サイト、 過去のエミュレータのダウンロードができなくなってんだけど・・・。 旧携帯は捨てろということか・・・。
旧携帯は窓から投げ捨てろ!
jogaかけたらpreverify通んなくなるぞチクショー
ソフトキーのラベル変更を、removeCommand -> addCommand でやってるけどちらつく…@705SH できるだけちらつかない方法ってない?
235 :
デフォルトの名無しさん :2006/11/07(火) 10:22:07
禿サイトが未だに安定しない件 クソか 舐めやがって
705SCと705Pを対応したアプリの作成者の方とか居ませんか?
>>236 MEXA CoreとMEXA Util1以外のクラスを
使用しているために、アプリがフリーズするとか?
238 :
236 :2006/11/08(水) 15:44:31
905SHや他のMEXA端末で動いていた アプリの挙動が705SCとかだと おかしいんだよね。 着信割り込みいれたら 強制終了したりするし…。
239 :
236 :2006/11/08(水) 15:48:04
まぁ3Gで動いていたアプリを 少し修正しただけのアプリなんだが…。
240 :
235 :2006/11/08(水) 16:21:57
>>236 V804N、V804SS、706SCでは動くのか?
うごくならMEXAは関係なく端末バグ。
動かないなら、端末が対応していないMEXAのAPIを使用しているだけ。
241 :
237 :2006/11/08(水) 17:20:20
ミスった。 240の名前235って書いちゃったけど実際237です。
初歩的なことですいません
http://www.saturn.dti.ne.jp/~npaka/kvm/midp2/index.html ここをみて開発環境を整えて、試しに作ってみたんですが
com.j_phone.system.DeviceControl
を使ったソースをコンパイルしてMEXAエミュレータで実行すると
java/lang/NoClassDefFoundError
と出てしまいます。
調べたところ実行時にクラスファイルがないことが原因だと書いてありました。
この場合はどうすればよいのでしょうか?
ちなみに、コンパイル時にはビルドパスにMEXAのライブラリーを追加しています。
MIDxlet-API: JSCL-1.4.2 書いた?
>>243 書いてませんでした。
JADに追加したところ問題なく動きました。
ありがとうございます。
EclipseMEが作ってくれるJADファイルはいろいろと抜けている部分があるんですね。
勉強になりました。
246 :
236 :2006/11/09(木) 13:12:41
>>240 706SC以外での動作は確認いたしました。
一応アプリで使用しているAPIが端末でサポートしているか
確認をしてみます。
247 :
240 :2006/11/09(木) 15:26:06
>>246 動作を確認したというのは、動いたことを確認したのか?
動かなかったことを確認したのか?
248 :
236 :2006/11/09(木) 15:27:41
>>247 正常に動作したという意味です。
わかりにくくて申し訳ないです。
249 :
240 :2006/11/09(木) 18:14:42
>>248 そうなると、普通に端末バグっぽいですな。
こないだ705Pのアプリチェックはやったけど、そのときに
着信割り込みチェックはしなかったからわからん。一応電源キーによる
サスペンド、レジュームは問題なかったけどね。
端末は他社から借りたものなので、今アプリチェックできん。
参考までに聞きたいんだけど、着信割り込みでアプリ強制終了以外に
何か他に問題ってありましたか?
250 :
デフォルトの名無しさん :2006/11/09(木) 18:37:14
S!アプリで MIDlet-Install-Notify:使ってダウンロード通知を吐かせてるんですが、、 他の奴は900 Successと来て成功してるみたいなんだけど、 ノキア製の奴だけ V702NK2 906 Invalid Descriptorで失敗しているようです。 改行コードをLFにするのはやってみたんだが解決せず。 どなたか原因に心当たりのある方いらっしゃいますか。
251 :
デフォルトの名無しさん :2006/11/09(木) 20:59:10
ソフトバンクの開発者向けのページへ辿り着けません… どこに行っちゃったんでしょうか…困りますぅ
252 :
デフォルトの名無しさん :2006/11/09(木) 21:04:47
…前のサイトが生きてました。変になってますけど
253 :
247 :2006/11/10(金) 11:03:37
こちらでは他におかしいところは無いでしたね。
ただ
>>220 がどうなったのかは少し気になりますが…。
vodaでjigメーラみたいなアプリ作りたいんだけどjavamailみたいなAPIないのかな ねえなら無理だ
何か壮大に勘違いしているぞ
そんなに難しい事しないでメアドを油性ペンで携帯に書いてから郵便ポストに入れたらいいよ 切手はjavaのバージョンによって変わるから郵便局の人にインストールしてもらってね
eclipseの実行から直接MEXAエミュレータを起動してプログラムを実行することはできるのでしょうか?
258 :
247 :2006/11/13(月) 17:18:11
705SCについて追記です。 端末の強制終了による原因が把握できましたので ご報告いたします。 どうやらpauseAppで1秒以上処理すると 強制終了が掛かる仕様に引っかかったようです。 その仕様については把握はしていたのですが SmafPlayer.stop();の一文だけしか入れてなかったので 大丈夫だろうと高を括っておりました ある意味プログラマーとして失格ですね…。 これを反省材料にしてより良いアプリを作成していけるよう 頑張りたいと思います。 ご迷惑をおかけ致しましたm(_ _)m
259 :
デフォルトの名無しさん :2006/11/13(月) 20:17:33
pauseApp に重い処理を書かなければ停止バグが起き難いだけで 起こる可能性はあると思うよ。 SmafPlayer.stop();が1秒以上かかるわけないし、 携帯の問題だと思う。 経験上、3GのT端末とかレジュームを繰り返すと大規模なアプリほど 停止バグが発生する確率が高い気がする。
260 :
258 :2006/11/14(火) 10:11:02
>>259 レスありがとうございます
私もSmafPlayer.stop();が1秒以上かかるわけないと
思っておりましたし、実際の処理も
void pauseApp(){
if(game_mode == PLAY){
game_mode = PAUSE;
}
audio.stop();
}
大体ですがこんな感じくらいの処理です。
念のためpauseAppの処理をstartAppの
処理の最初に記述し、起動時のstartAppで
pauseAppで行なっていた処理を行なわないよう
フラグで制御したら着信割り込みからの強制終了が
なくなりました。
ただこのような現象が起きたのも705SC(706SC未確認)だけでしたので
私模も端末の問題ではないかなと思っております。
アプゲの規約読んだららbuletooth使ったアプリが禁止項目になってるんだけど これはbuletooth使ったアプリは作っても無駄ってこと?
262 :
デフォルトの名無しさん :2006/11/15(水) 13:34:27
ご冗談を
アプゲやたら禁止API多いよな! もう一個のゲームチャンネルだっけ?オフィシャル3000円払う方。あっちメールで聞いてみてOKだったら使えば?
Sアプリ開発サイトにEclipseプラグインキター ……と思ったが、マニュアルを読むかぎり何だかぬるぽな雰囲気が。
ねぇ今後僕らの仕事はActionScriptさん達に取られてしまいますん?
>AS2.0 ミニゲームとかしかやらないなら取られるかもな。 ガッツリとした物を作るなら、そんなことはない。
JCSL版かよMEXAはまだかー
アクションスクリプト?フラッシュってどんどん廃れてくんじゃないかと思って最近勉強やめちゃったよ 面白かったけど
Flashがケータイゲームの土壌として普及するのはもう少しかかりそうだけど、 Javaで結局実現しなかった、クロスプラットフォームが完全に実現出来そうだからいいよね。 尤も、ケータイでFlashが流行しだしたら、各キャリアがこぞって端末制御(といってもライトとかバイブとかゴミのようなもの…)の 機能を持たせて互換性がなくなりそうだが。
そろそろスレ違いになりそうだが Flash は海外端末がそこまでやる気でないと 互換性問題まではいかないっしょ。 日本端末無視しても痛くもなさそうだしさ。
まーそのうちJava言語からswf吐いて実行できる時期がくる
272 :
デフォルトの名無しさん :2006/11/18(土) 15:00:49
何時頃でしょうか? 先日新機種が出たばかりなので、 来年の秋には出るのでしょうか
>>272 まだまだ先だから安心汁
出たとしても1年以上はまともに使われないだろうし
下手すると、永遠に出ないから
つか PHP であるじゃん。
276 :
デフォルトの名無しさん :2006/11/19(日) 12:42:27
そうなんだ…殆どの機種で使えるようになったら大変だなと思って
PHPは鯖側で動的生成するものですよ?
MEXAエミュレータってレコードストアの読み書きに対応してないんですか?
レコードストアの読み書きには対応してるよ
>>280-281 できました。ありがとうございます。
ところで、保存したデータはどこに保存されるのでしょうか?
projectの中のやたら長いファイル名×3つ。
GameCanvasでRunnableのrun()を回しているときに run()外のkeyReleasedを取得することはできるのでしょうか?
J2MEの1.0.4と2.2の両方をインストールしているとき どちらが利用されてるかを知るにはどこを見ればいいですか? (JSCL1.2.2 JDK1.4.2を使用してます)
J2ME ってのは WTK のことだろうか。 JSCL ってのは、起動すると KToolBar が起動するアレのことだろうか。 JSCL の KToolBar を起動すれば、別途 WTK をインストールしてあっても 使われてないんじゃなかろうか。
>>286 JSCLを使っているとWTKって使われないのですか。
わかりました。ありがとうございます。
今の時代VSCLだぜ?
289 :
デフォルトの名無しさん :2006/11/21(火) 02:29:58
>>257 MEXAのヘルプに載ってたよ
S!アプリを指定して起動する場合
MEXAエミュレータで実行するS!アプリ(Jadファイル)を指定します。MEXAエミュレータが起動し、指定したプロジェクトに指定したS!アプリがインストールされ起動します。
JadファイルとJarファイルは同じフォルダに置いてください。
形式 インストールフォルダの絶対パス\mexa_emulator.exe プロジェクトのファイルの絶対パス -direct S!アプリの絶対パス
例 "C:\Program Files\SOFTBANK_MEXA_EMULATOR11\mexa_emulator.exe"
C:\SOFTBANK_MEXA_EMULATOR11\projects\sample\sample.vjp
-direct C:\SOFTBANK_MEXA_EMULATOR11\projects\sample\sapp\display.jad
というか今やってるけどこれをXMLで書いてるけど
どっかから拾ったXMLのビルドを改造してるもんで
出来そうだけどXMLの知識無し
290 :
デフォルトの名無しさん :2006/11/21(火) 02:34:26
>>289 の続き
XMLのソースで
<!-- 実行 -->
<target name="実行">
<exec executable="${tool.emu.cmd}" dir="${basedir}">
<arg value="-classpath ${prj.jar}" />
<arg value="-Xdescriptor:${prj.jad}" />
</exec>
</target>
これはJSCL 1.3.2を動かす時なんだけどMEXAに直す方法知ってる人教えてください
291 :
289 :2006/11/21(火) 03:39:25
案外すんなり自己解決しました。 <exec executable="cmd.exe" os="Windows XP"> <arg line="/c '${tool.emu.cmd}' ${tool.vjp.cmd} -direct ${prj.jad}" /> </exec> これでeclipseからMEXAを自動起動&自動インストール&実行で快適快適♪
>>284 class GameCanvas{
static GameCanvas inst_canvas;
static int type,param;
public void GameCanvas(){
inst_canvas = this;
}
public void processEvent(int type, int param){
GameCanvas.type = type;
GameCanvas.param = param;
}
processEventを定義しているインスタンス?が
Display.setCurrent()でセットされていれば割り込むと思うけど…
外部からキーの情報が欲しいのであればstaticが有用
GameCanvas.type
GameCanvas.param
293 :
デフォルトの名無しさん :2006/11/22(水) 14:41:50
NetBeansでソースの追加ってなんなんだろ? クラスパス追加すればおkだし、javadoc追加すれば完璧だけど、 ソースってのを追加すると何かの役に立つの? クラスとかの追加が楽にできるとかかな…
誤爆か? ライブラリのソースを追加すると、実装が追えるとかかな?
296 :
289 :2006/11/23(木) 02:10:50
MEXAでアプリ動かすとたいした画像を読み込んでないのに、ヒープが不足するが、なぜか わかる人いますか?
>>269 説明ありがとうございます。
引数でインストールから実行までできるのであれば、
EclipseMeのWTKエミュレータを書き換えても実行できそうですね。
S!アプリで画像のフォルダをダイアログで参照させたいんだけど、どうすればいい? 直接参照するにはStorageConnectionで行けそうなんだけど
300 :
デフォルトの名無しさん :2006/11/27(月) 01:31:31
テキストボックスで桁数を取得できないものだろうか 現在桁数とか表示させたいのだが
302 :
デフォルトの名無しさん :2006/11/27(月) 15:00:06
プログラムを作成してみたのですが、以下のエラーが出てエミュレータで実 行できません。自分にはどこがおかしいかわからないのですが、分かる人お願 いします。 「Jad ファイルと Jarファイル(Manifest ファイル)とが不正か、 もしくは整合性がありません。 MIDlet-XXXXX エントリの値をご確認ください。」 Sample6.jad ↓ MIDlet-1: Sample6, Sample6.png MIDlet-Jar-Size: 1959 MIDlet-Jar-URL: Sample6.jar MIDlet-Name: Sample6 MIDlet-Vendor: Unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-Permissions: com.j_phone.io.StorageConnection.read MIDlet-Application-Security: Y
303 :
デフォルトの名無しさん :2006/11/27(月) 15:00:18
MANIFEST.MF ↓ Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.5 Created-By: 1.5.0_09-b03 (Sun Microsystems Inc.) MIDlet-1: Sample6, Sample6.png MIDlet-Name: Sample6 MIDlet-Vendor: Unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0
MIDlet-1じゃね?
>>303 MIDlet-1のパラメーターがおかしいのと必須項目も足りないんじゃないの。
アプリの起動方法(待受け起動とかプラウザ起動)を取得する方法ってどこに書いてあったっけ?
どっかに書いてあったと思うんだけど見つからないよ、、、。
MEXAエミュレーターで設定できるみたいだけど、何番が○×起動なのかとかわからん。
306 :
300 :2006/11/27(月) 23:49:10
308 :
デフォルトの名無しさん :2006/11/28(火) 01:46:08
フォルダはcreateFolder()で作るのに、 ファイルはopenOutputStreamで作るんですね
mkdirとfopenのようなもんだ
310 :
デフォルトの名無しさん :2006/11/28(火) 21:23:26
javax.microedition.lcdui.CustomItemを継承したクラスで 数値等の画像のPNGファイルを100個くらい配置しまくって ひと月分のカレンダーにしています。 そしてそれをフォームにappendしています。 そのフォーム内でスクロールしたりすると やたら処理が遅いなあーって思ってたら、 どうやら方向キーの押下等でフォーカスが変わる度に 配置してあるCustomItemのpaint()が呼ばれていることがわかりました。 paint()ではカレンダーの生成用に 日付やらユーザのマーキングやらで何度もループを繰り返してPNGを配置しているので、 これをキー押下の度に呼んでいたらそりゃ大変です。 (手元の905SHではキー押下の度に4秒くらい止まる) 処理を軽くできる方法はないでしょうか?
311 :
デフォルトの名無しさん :2006/11/28(火) 21:47:55
>>310 オフスクリーンにpng一度全部書いてからメイン画面に反映すればいいじゃん
それか方向キー押した時にフラグ立てて、描画回避すればいいんじゃね?
エミュレータにて、 色数1bit(2色パレット)のpngをImageにロードして、 drawRegion()で切り出し描画たいのだが、切り出しx座標が8の倍数のときは 正しい位置から切り出してくれるが、それ以外のときはx座標が 8の倍数に丸められちまう。 実機では未だ試していないのだが、これって仕様?
313 :
デフォルトの名無しさん :2006/11/28(火) 23:55:19
横方向は4の倍数じゃなきゃいけなかったような… 描画元と描画先の座標の差が。
314 :
310 :2006/11/29(水) 13:44:34
>>311 >オフスクリーンにpng一度全部書いてからメイン画面に反映
ありがとうございました。
なにやら基本的なことだったみたいですね。
勉強になりました。
あら・・・ s!のサイトから開発環境一式ダウンロードして昔の消したら、 KToolbarなくなっちゃった。 WTKの使えって事でいいんだろうか。 Vの開発環境一式残ってるかなぁ(´д`)
Sアプリってiアプリみたいに個体識別番号や機種名を取得することはできないんですか?
識別番号はどうしたかなぁ
System.getProperty(引数)で機種名は取れたと思いますよ。 引数はなんだったかな?Platform? 個体識別番号は、HTTPリクエストヘッダにのってる情報をサーバから返してもらうとかしないと 無理だとおもっておりますがどうなんだろ? しかも設定で機種情報送信をONにしてもらわないとだめでしたよね?
ざっと検索したところ au PhoneSystem.getID(); ソフトバンク System.getProperty("Platform"); ドコモ System.getProperty("microedition.platform");
識別番号はHTTPリクエストに乗ってるのをサーバーに返してもらう以外の方法知らないな
上の方で質問出てたけど、起動種別の取得ってどうやるんだろう? i、auは技術情報に書いてあったけど、ソフトバンクは載ってないような。
すみません、3G端末でホワイトアウトようなラスタオペレーションの処理を実装したいのですが、 どのようなAPIを使えば実現できるのでしょうか。 DoJaだと機種依存ですが、イメージの半透明描画命令等がありましたが、 MIDP2.0やJSCLではそれらしいものを見つけることができませんでした。 プリミティブを透過率を指定して配置するとかしかないのでしょうか? どなたかご教授ください。<(_ _)>
Part3の547で答えられてた感じ。実際できるかしりません。
=================================================
530 名前:デフォルトの名無しさん :04/10/23 20:01:37
携帯で、ピクセル扱うと遅いよー
545 名前:デフォルトの名無しさん :04/10/24 22:49:17
iアプリにあるホワイトアウト処理みたいなのを使いたいんだけど、
JSCLには無いようなので他の方法で同じ処理をしようと思うのですがどのような処理をすればいいのでしょうか…
547 名前:デフォルトの名無しさん :04/10/25 00:08:42
>>545 com.j_phone.util.ImageUtil#createMaskedImage使えば、
マスクパターンの細かさを段階的に変えていって疑似半透過できるかも。
まぁP6以降だが。
GraphicsUtil#setPixelでピクセル単位でいじればもっと柔軟に対応できるが、 たぶん >530
一番軽い方法は予めホワイトアウトの処理を書き込んだ連番画像を用意しておいてそれをアプリで順に描画
325 :
322 :2006/12/03(日) 01:54:51
なるほど、ありがとうございます。 さすがに自前でピクセルを操作するよりは3Dで処理させたほうが速そうな気がします。 でも3Dを使うと2Dの性能を圧迫する機種があるので、どうしたものかなと…。 MaskedImageやあらかじめ画像を用意しておくというのは現実的ではないし。 やはり妥協して白色で塗りつぶしてくような適当な処理に変更かなぁ。
>>325 ぜんぜん試したことないけど、透過gif使ってみたらどうだろ
段々とドットの間隔を狭めたり広げたりしとけばそれなりのエフェクトが出来そうだが
705SHなんですが、MIDP2.0のjavax.microedition.media.PlayerでMP4や3GPPを 再生しようとすると、javax.microedition.media.MediaException: start failed. が発生します。 InputStream is = getClass().getResourceAsStream("/1.3gp"); Manager.createPlayer(is,null).start(); //ってな感じ 音声ファイルは、jarに同梱している小さなもので、 MIDxlet-Sound-Priority: Y は入れてます。 何が悪いんでしょうか。それともそもそも無理?
WTKエミュレータのレコードストアを初期化したいんですが どこに保存されているのでしょうか?
どうしてちょっと調べればすぐわかることを聞きに来るのか俺には理解できないんだが
>>329 一応WTKのFAQなどは目を通しているんですが、探し方が悪いのか見あたりませんでした。
WTKのフォルダの中やアプリのフォルダの中も見てもそれらしいファイルがありません。
もしご存じなら教えていただけないでしょうか?
>>330 1、705shでそれは再生可能か?
2、MIDP2.0でそれは再生可能か?
NetBeansでコンパイルができません… フォルダ生成してるからだと思いますが… 生成物を除外して構築でも駄目 どこで設定できるか教えて下さい
すみません、ブラウザからパラメータ渡しのアプリ起動をしたいのですが、 getWakeupParam のパーミッションの記述で悩んでいます。 一通りS!のサイトの仕様書は読みつくしたと思うのですが、 getWakeupParamに関してはパーミッションにどう書けばよいのかわかりません。 例外を出力しようかとも思ったのですが、 getWakeupParamを呼んでいる箇所でスレッドごと落ちてしまうため 確認も出来ない始末でして・・・ どなたか心当たりがありましたらご教授お願いします。 尚、テスト端末は905SHでアプゲを使用しています。
使ったこと無いけど、getWakeupParamを使用するのに パーミッションの記述は必要ないんじゃない?
335 :
333 :2006/12/04(月) 16:23:17
すみません、できました(´д`;) import の指定の誤りでした。 × import com.vodafone.system.DeviceControl; ○ import com.j_phone.system.DeviceControl; com.j_phone〜に変更したら、 >334氏の通りパーミッションの記述は不要でした。 ご迷惑をおかけしました。。。
待ち受けアプリってどうやって作るんでしょうか?
337 :
327 :2006/12/04(月) 21:59:40
>>331 1 ネイティブプレーヤで再生できます。
2 「端末個別仕様」のMIDP2.0/Media Playerの項目にはMP4(audio)や3GPP(audio)
が記載されているのでできそうなのですが...
3G端末でPOST通信がしたくて下記のようにしているのですが、 通信確認の画面ではいを選択しても一向に通信が始まりません。 何がおかしいのでしょうか? jadにMIDlet-Permissions: javax.microedition.io.Connector.http は追加してあります。 String POST(String URL,String str) { try { HttpConnection connection = (HttpConnection)Connector.open(URL, Connector.READ_WRITE, true); connection.setRequestMethod(HttpConnection.POST); connection.setRequestProperty("content-type", "application/x-www-form-urlencoded"); OutputStream os = connection.openOutputStream(); os.write(str.getBytes()); os.close(); InputStream is = connection.openInputStream(); int length = (int)connection.getLength(); byte[] data = new byte[length]; is.read(data); is.close(); connection.close(); return new String(data); } catch (Exception e) { return "エラー"; } }
>>338 もし対象端末がボーダフォンのSH系なら、
javaアプリからのPOST送信には対応してなかったはず。
340 :
デフォルトの名無しさん :2006/12/05(火) 04:46:48
SoftBankなんですが、 StorageConnection con = (StorageConnection)Connector.open("file:///ms/Pictures/….jpg"); InputStream istm = con.openInputStream(); byte[]bData = new byte[(int)con.getLength()]; intlen = istm.read(bData, 0, (int)con.getLength()); Imageimage = Image.createImage(bData, 0, len); の最後で Uncaught exception java/lang/IllegalArgumentException ALERT: srcData: [B@1a4cfaaa と言われてしまいます。PNGなら読めます。もしかして、JPGは未対応ですか?
>>340 ほぼ全機種(海外除く)ミニマムスペックでjpeg対応していたはず。
・携帯端末で読めないjpeg(解像度が大きすぎ、Exifタグのついた特殊なjpeg等)
・色々と閉じ忘れているのが悪影響している
どちらかじゃないかと
>>339 POST対応してないのはSH53初期型のみだったとおもう
>>340 300KB制限とかあったようなきがする
>>338 setRequestPropertyに渡している"content-type"って
普通は"Content-Type"って書くと思うけど、大文字小文字は関係ないのかな?
また、valが"application/x-www-form-urlencoded"ならos.writeで書き込んでいるデータは
URLエンコードをがかかっているのかな?
まあ上記は、あまり重要ではないと思うけどね。
本題だけど
os.close()の後にレスポンスコードをチェックしている記述が見当たらないんだが
レスポンスコードは何って返ってきているの?
後、送ろうとしているデータサイズはいくつ?
>>338 >>339 POSTに対応していないんじゃなくて、
POSTのContent-typeがOctet-streamに固定されるんじゃなかったでしたっけ?
>>343 os.close()の後にレスポンスコードをチェックするために
int rs=connection.getresponseCode();
といれたら通信が開始されるようになりました。
コードも200と返ってきたので正しく通信が行えたようです。
APIリファレンスを呼んだら接続状態への遷移を引き起こすメソッドに載っていたので
この内のどれかを呼ばないと通信できないみたいですね。
ありがとうございました。
346 :
デフォルトの名無しさん :2006/12/05(火) 18:35:28
SoftBankで何もしないプログラムを作成して、エミュレータで確認後 実機で動かしてみたんですが、起動直後に「エラーが発生しました」に なってしまいます。 実機にダウンロードできた時点でMANIFEST.MFと*.jadのチェックは通った と考えていいんですよね?(何もしないプログラムなので原因がさっぱり です)
>>346 とりあえず、コンパイル環境と
Jad、マニフェストファイルの中身と
使用した端末を書け。
349 :
346 :2006/12/05(火) 19:22:01
JDK 1.5 Update 10でEclipse 3.2を使用して↓を使ってビルドしました
http://mjdf.potrin.com/pages/eclipse_03.html んで、アプリゲットにアップロードしました。
/META-INF/MANIFEST.MF
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.5
Created-By: 1.5.0_10-b03 (Sun Microsystems Inc.)
MIDlet-1: Sample9,, Sample9
MIDlet-Name: Sample9
MIDlet-Vendor: Unknown
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
350 :
346 :2006/12/05(火) 19:23:01
Sample9.jad MIDlet-1: Sample9,, Sample9 MIDlet-Jar-Size: 699 MIDlet-Jar-URL: Sample9.jar MIDlet-Name: Sample9 MIDlet-Vendor: Unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0
351 :
346 :2006/12/05(火) 19:23:50
Sample9.java import javax.microedition.midlet.*; public class Sample9 extends MIDlet { public Sample9() { } protected void destroyApp(boolean arg0) { } protected void pauseApp() { } protected void startApp() { } }
352 :
346 :2006/12/05(火) 19:25:32
あ、端末は910SHです。
>>346 JADにMIDxlet-API項目がないのでは?
>>348 int rs=connection.getresponseCode();を入れなくても
エミュレータ上では通信してくれるんですが、
実機(905SH)では通信が開始されないんですけど
何が問題なんでしょうか?
何で外すの?
358 :
346 :2006/12/06(水) 02:01:30
>>353 >>354 jadにMIDxlet-API: JSCL-1.3.2
MIDlet-OCL: JSCL-1.3.2
を追加してみましたが、同じでした
>>338 GETと違ってPOSTはConnector#open()の前にOutputStreamがお約束。
>>340 read()は必ずしも一回で全部を読み切るわけではないから
lenとcon.getLength()が同じになるとは限らない(APIリファレンス見て)。
だからImage#createImage()で失敗している。
>>359 >GETと違ってPOSTはConnector#open()の前にOutputStreamがお約束。
そんなわけない
>>358 JSCL-1.3.2だったら、
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0
にしたほうがいいのでは?
>>361 JSCL1.3.2ということはMIDP1.0の
エミュレータを使用している可能性が高い。
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0
もしJadの記述を上記に変えてしまった場合
JSCL1.3.2のエミュで動かなくなってしまう。
MEXAエミュレータを使用すれば問題ないけどね。
3GCの端末で
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
の記述で動かしたい場合、Jadの記述に以下を追加する必要がある。
MIDlet-Permissions: javax.microedition.io.Connector.http
これについては、「S!アプリ開発ガイド MIDP2.0対応端末編」の
2.2.8.5. MDlet-Permissionsの項目に書かれている。
363 :
346 :2006/12/06(水) 13:47:09
MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 も MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-Permissions: javax.microedition.io.Connector.http も試してみましたが、やはりS!エミュやMEXAエミュでは動作するのに 実機では「エラーが発生しました」と起動直後に表示されてしまいます。 もう何がなにやら…
>>359 >GETと違ってPOSTはConnector#open()の前にOutputStreamがお約束。
それはない。
参考までにDoJaだと
HttpConnection#connect()「リモート資源に実際に接続する。」
てのがあって
>>338 の os.close(); と InputStream is = 〜 の間にこれが入る。
このことから(CLDC+MIDPでも同様に考えていいなら)
>>345 が言ってることでいいと思う。
>>363 コンパイルにJDKの1.5を使用されていますが、
コンパイルオプションとかって、何をご使用ですか?
366 :
346 :2006/12/06(水) 18:33:16
自己解決しました JDKを1.4にしたら、あっさり動きました。
367 :
デフォルトの名無しさん :2006/12/06(水) 19:08:24
待ち受けアプリ作ろうと思って、ドキュメントにあるResidentMIDletクラスを 探してみてもクラスファイルがないんですが、どこにあるのでしょうか?
>>367 JSCL、VSCL、MECA Unit2の中
369 :
デフォルトの名無しさん :2006/12/06(水) 19:20:03
>>368 すみません。そのJSCLの中に入ってないんです。
>>367 com.j_phone.midlet.ResidentMIDlet ???
>>370 そこにあるはずなんですが、zip解凍してもクラスファイルがないんです。もち
ろんコンパイルは通りません。
>>371 エミュを再度インストールしなおしてみるとか。
ところで、どのエミュを使用している?
>>372 S! Appli EmuratorとS! MEXA Appli Emurator両方使ってますが、どちらにも入っ
てません。一応再インストールはしてみます。さんくすです。
374 :
デフォルトの名無しさん :2006/12/07(木) 20:51:09
Sアプリの本番サーバへアプリをアップした所、”印字エラー”と表示されるとの報告を受けました。何が原因なのでしょうか?
S! Appli EmuratorはMIDP2.0に対応してますか?
これで、世界は救われた…
これは酷い
すみません、3G端末なのですが、 透過PNGから生成したイメージの拡大縮小描画では、透過情報も保持されるのでしょうか。 MEXAエミュレータで動作させると、透過されてなかったのです。 エフェクトに白い背景がついてマヌケなことになってました。 実機を持っていないので、すぐに確認することができずちょっと困っています。 JSCL版のエミュレータなら透過されてるようなのですが、機種依存とかあるのかな。 どなたかご教授ください。
381 :
デフォルトの名無しさん :2006/12/11(月) 07:19:17
javaに無知な者です。 中学社会で、○×で問題を出すプログラムを作りたいのですが、どなたか作ってくださる方はいませんか? 本当に分からなくて…。
とりあえず100万からなら考えてもいいかな。
俺は50万で
待ってください先生! 僕は45万でできます! 問題と答えは先生が後で追加できる仕様で宜しいでしょうか?
>>381 ゲームの基盤部分の作成は簡単だけど、
問題と答のデータ入力が一番面倒。
でもそれくらいはできるよね。
てか先生なの?
止めとけよ。 黒板に問題書いて、携帯で回答とか訳のわからない仕様が出てくるぞw
Bad version infomationってエラーが出ます MANIFEST.MFもjadファイルも両方 MIDlet-Version: 1.0 に成ってるのですが…
絶対に釣られない
あんまり派手なダンピング行為はするな! みんながメイワクする
労働の価値を下げる行為は謹んでもらいたいな(´・ω・`)
まったくだ
流石に1万はねーよ。実機検証無しとかならまだしも。 普通に(大抵の)機種で動くものということなら、50万くらいだな。
こんなに簡単なら学生が小遣い稼ぎ程度で気軽にできるだろ。
○×で問題を出すプログラムの授業すればいいんじゃね?
Vodafone(ってかソフトバンク)機って、もしかしてMIDP2.0のJSR75未サポート? データフォルダにアクセスしたい場合は、JSCLやらMEXAやら使わないとダメなのか…
StrageConnectionだっけ
StorageConnectionだろ
○×のアプリぐらいのものなら実機検証含めて一日かからんだろ
400 :
デフォルトの名無しさん :2006/12/14(木) 00:14:15
S!アプリでMIDlet-Resident: Yにしても待ち受け設定できないんですが、 他にも何かすることがあるんでしょうか?
SoftBankでデータフォルダ内のファイル名一覧を取得してもセキュリティ警告が出ないんだね。 援交とか高校生カップルフェラとか書かれたファイルがたくさんある俺の情報が流出してたらどうしよう… OTL
次の寝言どうぞ。
403 :
デフォルトの名無しさん :2006/12/15(金) 20:07:21
ブラウザを作りたいと思っているのですが、 User-Agentを「setRequestProperty」で設定しても、UNTRUSTED/1.0 になってしまいます。 どうすれば、User-Agentを変更できるのでしょうか?
できません。
そういやsoftbankにはフリーのフルブラウザないな…
Opera miniがあるじゃないか
>>408 903SHだけど試してみたらダウンロードでエラー落ち
アプリゲットでオフィシャル登録しないと無理じゃね?
System.getProperty("Platform") これで機種名が表示されない機種ってありますか?
>>412 getPropertyは取得するだけの関数だから、全ての機種で表示されない。
表示されない→取得できない の間違いです。
public String post(String URL,String str) { byte[] data=null;//送信データ int rs=0; try { HttpConnection htcon = (HttpConnection)Connector.open(URL,Connector.READ_WRITE,true); htcon.setRequestMethod(HttpConnection.POST); htcon.setRequestProperty("Content-Type","application/x-www-form-urlencoded"); OutputStream os = htcon.openOutputStream(); data=str.getBytes(); os.write(data); os.close(); rs=htcon.getResponseCode(); InputStream in = htcon.openInputStream(); int len = (int)htcon.getLength(); if (len<0) len=512; byte[] DATA = new byte[len]; in.read(DATA); in.close(); htcon.close(); return new String(DATA); } catch (Exception e) { System.out.println(e.getClass().getName()); return "通信エラー "+rs+e.getClass().getName(); }} 上のソースでPOST通信をしているんですが、SH系ではうまくいくのにV903Tで行うと java.lang.RuntimeExceptionが発生します。 どこがおかしいのか分かりますでしょうか?
>>416 in.read()が一度で全てを読み込むわけではないとのことで
1バイトずつ読み込む用にソースを書き換えました。
int index=0;
while (in.read(DATA,index,1)>0) {
index++;
}
これでも同じくjava.lang.RuntimeExceptionが発生しました。
送信部分だけを抜き取った場合はエラーは出ませんでした。
受信部分のどこかでエラーが出るとは思うのですがどこか見当がつきません。
仕様は50文字程度の文字列を送信して20文字程度の文字列を受け取るだけです。
どなたか東芝端末で成功する通信例を教えていただけないでしょうか?
>>417 まずどの行でエラーが出てるのか突き止めなよ。
>>415 のtry{}の中、1行ずつ全部にSystem.out.println()書けばわかるだろ。
それから
>>417 のindexが最終的にどんな値になったのか(何byte受け取ったのか)確認する。
それが正しければ、次にDATA配列の中身を書き出して、送信元のデータと比較する。
419 :
418 :2006/12/23(土) 05:05:40
>1行ずつ全部にSystem.out.println()書けばわかるだろ。 実機でやるなら画面に書き出すようにした方がいいな。 とにかくまず原因を突き止めようぜ。
>>418 check=11;
if (len<0) len=512;
check=12;
byte[] DATA=new byte[len];
以前に上のように一行ずつint変数に固定の値を入れて結果を見たときは
returnの直前までプログラムが通っていました。
今考えるとおそらくreturn new String(DATA)でDATAが空なんじゃないかと思います。
>それから
>>417 のindexが最終的にどんな値になったのか(何byte受け取ったのか)確認する。
>それが正しければ、次にDATA配列の中身を書き出して、送信元のデータと比較する。
試してみます。
結果が分かり次第報告します。
421 :
デフォルトの名無しさん :2006/12/24(日) 11:14:54
StorageConnectionを使って、データフォルダのデータを読む3GCのS!アプリを作りましたが、署名の絡みで、ダウンロードできません。 V905SH、V904T、V803T、V705Tではダウンロードでき、起動は成功しますが、他機種はダウンロードできません。 アプリゲットにデータフォルダのデータを読む3GCのS!アプリが2つあり、他機種(SB910SH)でもダウンロードできました。 全機種に署名が機能するような、MANIFESTとJADファイルの指定のしかたをご存知の方、教えてください。
KToolBar まかせにすればいいんじゃね? あとは日本語・記号を全部外してみるとか。
423 :
デフォルトの名無しさん :2006/12/25(月) 13:39:08
>>422 JADファイルの内容は以下の通りです。間違いがあるでしょうか?
MIDlet-1: aaaaaaaaaaaa, , aaaaaaaaaaaa.aaaaaaaaaaaa
MIDlet-Data-Size: 5000
MIDlet-Description: ddddddddd d ddddd dddddd, ddddd, ddddd dddddddd dd ddd ddddddddd
MIDlet-Jar-Size: 55834
MIDlet-Jar-URL: aaaaaaaaaaaa.jar
MIDlet-Name: aaaaaaaaaaaa
MIDlet-Permissions: com.j_phone.io.Connector.StorageConnection.read,com.j_phone.io.FileUtility.read,com.j_phone.system.DeviceControl.read
MIDlet-Vendor: vvvvv
MIDlet-Version: 3.9.0
MIDxlet-API: JSCL-1.2.2
MIDxlet-Network: N
MIDxlet-Resident: N
MIDxlet-ScreenSize: 240,320
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0
とりあえず、アプリダウンロードに署名は関係なくね?
426 :
デフォルトの名無しさん :2006/12/25(月) 20:40:15
マニュアルによると、 MIDxlet-ScreenSize: 240,320 でもいい筈だけど、 MIDxlet-ScreenSize: 480,520 に変えたら、上手くDLできました。機種毎に指定を変えないといけないかも?
MIDxlet-ScreenSize: 240,260だよ
>>427 のいっているとおり、普通は240,260を指定する。
そもそも、240x320に対応しているQVGA端末では
804NK(論外携帯)でフルスクリーンモードにしたときだけだな。
他に対応しているとしたら、WQVGA携帯の905SHか911SH。
後、試していないから分からんが、VGA端末の904SH、910SH、810SH、811SHかな。
MIDxlet-ScreenSize 複数指定できたら良いのにな 〜専用ってやりたくないから結局 240,260 にしてしまう
430 :
デフォルトの名無しさん :2006/12/26(火) 17:02:48
QVGAのV905SH、V904T、V803T、V705Tは、MIDxlet-ScreenSize:240,320で、 VGAのSB910SHは、480,520でDLできました。240,260でもDLできましたが、画像は荒くなります。
MIDxlet-ScreenSize:0,0 で機種ごとにデフォルトの画面サイズになる
>>431 それなら別にScreenSize自体を記述する必要がない。
MIDxlet-ScreenSize: 240,260
を記述するのはVGA端末などを共通の画面サイズに合わせるためなのだから。
描画エリアが小さい→0,0って書け、ってよくFAQ載ってないっけ。 パーツのサイズと位置が決まってるなら240,260とか書いて フレキシブルなら0,0って書くのがいいと思ってた。
434 :
432 :2006/12/27(水) 11:24:21
>>433 それは2.5G(MIDP1.0)時代の話だ。
J-53SHとかで
MIDlet-Application-Range: 0,0
を付けなかった場合、画面サイズが標準で120x130になってしまうやつのことだろ。
3GC(MIDP2.0)になってから、MIDlet-Application-Rangeは認識しなくなり
MIDxlet-ScreenSizeを使用することになったわけだ。
なお、3GCのQVGA端末ならデフォルトで240x260は保障されていると思われる。
VGA端末が出るまで、俺MIDxlet-ScreenSizeを記述していなかったし。
MIDlet-Application-RangeからMIDxlet-ScreenSizeへの変更点は
ttp://www2.developers.softbankmobile.co.jp/dp/tool_dl/download.php?docid=304&companyid= を開いて、「変更するMIDlet属性値一覧」で検索すりゃでてくるから、よく読んどけ。
MIDxlet-ScreenSize:0,0 でも、記載無しでもどっちでも大丈夫なんだから 無理に自分の意見を押し付けないように
VGA化は困るけどQVGAとWQVGAに画面フルで表示させるにはどう指定したらよい?
706SCなどのSAMSUNGの端末でdrawRegionするとフリーズするのですが、 なぜでしょうか。
>>437 GraphicsUtilクラスを使用することができないから。
端末資料読んでみ。
drawRGBってMIDP2.0搭載の全ての機種で使える訳じゃないんですか?
端末資料読んでみ。
>>439 3GC端末ならMIDP2.0の機能はほぼ全て使用できる考えて問題ない。
>>440 端末資料のどこにも書いていないから使えると思えってやつか・・・。
905SHでdrawRGBに半透明を指定すると描画されないんですけど仕様ですか?
携帯ゲーム作ってるんだけど mmfファイルをキーが押されるたびに再生すると時々フリーズする。 player.play()を消すとフリーズしない どうしてフリーズする?教えて public void playSound(int key){ try{ SmafData sound = null; switch(key){ case 0: sound = new SmafData("/sound/1.mmf"); break; case 1: sound = new SmafData("/sound/2.mmf"); break; case 2: sound = new SmafData("/sound/3.mmf"); break; case 3: sound = new SmafData("/sound/4.mmf"); break; case 4: sound = new SmafData("/sound/5.mmf"); break; case 5: sound = new SmafData("/sound/6.mmf"); break; case 6: sound = new SmafData("/sound/7.mmf"); break; case 7: sound = new SmafData("/sound/8.mmf"); break; case 8: sound = new SmafData("/sound/9.mmf"); break; case 9: sound = new SmafData("/sound/10.mmf"); break; default: break; } player.stop(); player.setData(sound); player.play(); } catch (Exception e) {} }
押されたタイミングでインスタンス生成しないで あらかじめ生成してあるものをplayしましょう
上級者キタ━━━━(゚∀゚)━━━━ !!
448 :
444 :2006/12/29(金) 01:01:35
質問のレベルが低すぎてすいませんでしたね
>>445 のやり方でもフリーズしまつ
知っている方がおられましたら教えてください。 S!アプリ改春ガイド端末情報MIDP2.0対応端末Pert3 の機種904SH、905SH部分で com.jblend.graphicsj3d.Textture.Texture(Image image,boolean isForModel) という隠しAPIが○となっています。 ImageからTextureが作れるようになったのか!と思い 試しにstubclasses.zipにスタブを追加してコンパイルし 実機で動作させたところエラーとなります。 これを使用したいのですが何か情報をお持ちの方いませんでしょうか? ちなみにMEXA1.1の機種では引数が異なりますが存在(さらに位置指定あり)しています。 MEXA1.1の機種:ソフトバンク2006冬モデル
>>com.jblend.graphicsj3d.Textture.Texture(Image image,boolean isForModel) 根本的にコンストラクタって知ってるか? クラス名と同じメソッドは何になるか分かるか? ってレベル?? どちらにしても実機が投げてる例外見れば分かるんじゃない?最近こういう書き込み多いな
>>444 >>449 が言うようにmmfファイルの鳴らし方以前にプログラミング的に変だよ。
keyの値に0〜9以外が来たら player.setData(sound); でnullをセットして
鳴らすことになってるし、
soundの有効範囲がtry{}の中だけになってるし。
だがそれでいい
454 :
デフォルトの名無しさん :2006/12/29(金) 17:09:46
softbankのサイトを見てもJSCL1.3.2用のエミュレーターしかないんですが 古いバージョンのエミュレーターをダウンロードするにはどうすればよいのでしょうか?
古いの必要か? 1.3.2だけで問題ないだろう。
そうなんですが、JSCL1.2.2で動いてたのが1.3.2にしたら動かなくなったもので・・・
454です。 開発の参考にもらったアプリがJSCL1.2用で、jad/jarファイルしかありません。 これをリビルドなしで1.3.2のエミュレーターで動かすことは可能でしょうか? それかJSCL1.2のエミュレーターを調達するのとどちらが早いんでしょうか? 動作確認が出来ればそれでいいのですが・・・
MEXAのエミュレータもあるですよ。 MIDP2.0系をやるならMEXAじゃないとだめですよ JSCL1.3.2のエミュはMIDP1.0系のみなのですよ。
ありがとう!MEXAでやったら動きました。 よかった、これで仕事が進められる・・・年内に終わればいいなぁ
すんなりMEXAエミュを使うとは、なかなかのやり手だな。
そんな俺は未だにBad Version Infomationに悩まされてる落ち
>>444 フリーズするのはエミュレータかな?
エミュレータでは、mmfのstopとかplayを連続して実行するとフリーズするよ。
100msくらいウェイト入れないとダメ。
全然解決できないorz フリーズというよりは、アプリが一切のキー操作を受け付けなくなるんだよね 一時停止して戻すと、普通にできるんだが
464 :
444 :2006/12/30(土) 23:29:57
ボタン押したら音が出るだけのアプリ作って試せ それで鳴らなきゃお前のプログラミングが変なんだよ ついでに日本語も変だ
466 :
444 :2006/12/31(日) 08:24:26
実機でやってたら何事もなかった。
467 :
デフォルトの名無しさん :2006/12/31(日) 17:43:54
test
byte配列から、必要に応じた型で、データを取得できるようなメソッドを組んでいるんですが、 型の変換がうまくいかなくて困っています。 short型で取得したい場合は、以下のようにやっているのですが、うまくいきません private byte buff[]; public short GetShort( int index ) { return ( (buff[ index ]<<8) | buff[index+1] ); } おそらく、java が勝手にint にキャストしてしまうためだと思うのですが、 何か解決策はないか、どなたか知恵を貸していただけないでしょうか 初歩的な質問でもうしわけありません
すいません、 return (short)( (buff[ index ]<<8) | buff[index+1] ); でした。
intにキャストしてないのが原因じゃねーの? 思いつきで書いたから間違ってたらゴメーヌ { int high = (int)(buff[ index ] << 8); int low = (int)(buff[ index+1 ]); return (short)(high | low); }
>>468 > return ( (buff[ index ]<<8) | buff[index+1] );
return (short)((buff[ index ]<<8) | (buff[index+1] & 0xFF));
472 :
468 :2006/12/31(日) 20:46:09
>>471 反転させて負の符号をとってやらないといけなかったんですね
動きました!ありがとうございます!
これで正月迎えれそうです。。。
>>471 は反転させてないし、
反転させたら buff[index + 1] が正の数だった時ダメだろ。
buff[index+1] が128以上だとshortにキャストしたときに符号拡張されてしまう。 で、そのままORすると期待通りの結果にならないので 0xffでマスクしてやる必要があるって事かと。
buff は byte[] なので 128 以上は表現できないわな。
スマン、128以上じゃなくてマイナスだな・・・orz
> buff[index+1] が128以上だとshortにキャストしたときに符号拡張されてしまう。 ここも厳密には正確じゃないね。 short にキャストしたとき、じゃなくて、二項数値昇格(Binary Numeric Promotion)ってやつね。 Java だと、byte と byte 同士の演算でも、両辺とも int に昇格されて計算される。
C#まんせ〜
3G機種でmidiを複数読み込ませようとすると、実機だと2個目でMediaExceptionが出るが、回避可能? そもそもmidiで鳴らそうとするのが誤り? InputStream in1 = getClass().getResourceAsStream("/Xxx.mid"); aud1 = Manager.createPlayer(in2, "audio/midi"); InputStream in2 = getClass().getResourceAsStream("/Yyy.mid"); aud2 = Manager.createPlayer(in2, "audio/midi"); こんな感じなんだが・・・
> InputStream in1 = getClass().getResourceAsStream("/Xxx.mid"); > aud1 = Manager.createPlayer(in2, "audio/midi"); これ、コンパイルエラー出るんじゃね?
481 :
479 :2007/01/02(火) 20:21:19
in2 → in1 でした・・
Willcom端末のWX310Jの エミュで表示される画像 ってどこかで落とせる?
483 :
デフォルトの名無しさん :2007/01/03(水) 20:31:08
携帯のJava触ったの初めてだけど、MIDPってこんなに簡単なんだな。
今まで、敬遠してたけど、さっさとやってればよかった。
>>482 作れ。
484 :
sage :2007/01/03(水) 21:39:16
すんますん 2つ質問させてもらいます 親切な人、よろしくお願いしますm(_ _)m StringItemのオブジェクトで Item.PLAINにして、単純に文字列を表示したいだけのですが、 この文字列にフォーカスが当たってしまいます。回避方法はありますか? Playerオブジェクトでstartメソッドでmidiを再生した後、stopメソッドで停止 その後、再びstartメソッドで再生すると続きから再生してしまう。 再startの前に巻き戻して先頭から再生する方法はありますか?
bootclasspathって、環境変数のとこに設定できますか?
jigブラウザでの通信はパケット定額対応だそうですが、 パケット定額に対応したアプリってどうやって作るのでしょうか。 普通に作るとパケット定額サービス適用外になってしまうようなのですが・・・。
定額非対応のアプリを作るほうがはるかに難しい
SoftBankはオフィシャル登録すればおk 他は普通にダウンロードすればおk
489 :
486 :2007/01/06(土) 16:16:15
プログラム的に何か必要なんじゃなくて、登録してあるかどうかが問題なのか。 レスthx。
eclipseで開発してる方に質問 開発環境の整え方(3G)なんですが、 1.J2SE 2.Eclipse+日本語化 3.softbankのEclipseプラグイン 4.MEXA SDK 5.S! Appli Emulator こんな感じの順番でいれてけばいいんでしょうか したいことは「Eclipseで開発→エミュ実行」なんですが、 これはいれなくておkとかあればお願いします
Eclipse上でデバックしなければ以下でOK →256Kアプリ用 1.J2SE 2.Eclipse 3.softbank Eclipseプラグイン 4.S!Appli Emulator →3GCアプリ用 1.J2SE 2.Eclipse 3.MEXA SDK (Eclipseとの連携はMEXA Emulatorのヘルプにあるコマンド起動をEclipseの外部ツールに登録)
492 :
デフォルトの名無しさん :2007/01/07(日) 12:43:20
>>491 「Eclipse上でデバック」ってどうゆうことを言うんでしょうか?
あと、Eclipseのコンソールにprintlnは出来るんでしょうか
また次のようなことをやりたいのですが可能でしょうか(前はわざわざWTK起動してコード書き以外やってた…)
Eclipseでコード書き、コンパイル、Jar/Jad作成
Eclipseから実行を選んでエミュ実行
長いことPCから離れてたせいか、Eclipseのバージョンが1.xから3.xまで上がってる始末…
質問ばかり申し訳ないorz
とりあえずJ2SE、Eclipse、MEXA SDK導入してきます
Eclipseのコンソールにprintlnは出来る
494 :
デフォルトの名無しさん :2007/01/08(月) 09:04:59
今MEXAを使い始めたのですが、 StorageConnectionがうまく扱えません。 javaDocにあるサンプルのまま実行したのですが、 java.lang.NoClassDefFoundError となってしまいます。例外が起きている箇所は、 conn = (StorageConnection)Connector.open("file:///ms/test/a.txt"); で、調べたところ、openメソッド自体は正常に行き、 StorageConnectionへのキャストのところで問題が起きています。 ビルドも同じstubclasses.zipで行っており、ちょっと不可解です。 同じことをS! Appli Emulator for JSCL1.3.2で行うとうまく行きます。 なぜでしょうか。
495 :
デフォルトの名無しさん :2007/01/08(月) 17:35:17
>>494 API違うんじゃないでしょうか?
ところで、前から興味あった携帯Javaをやろうと思いまずは開発環境だと、
>>491 のを参考に3GC用のを3ついれてみましたがEclipseでコンパイルをどうやってするのかがわかりません
ネットで検索してみたりしたんですが、Ant使ってたりJ2ME WTK使ってたりで参考になりそうな文章がありませんでした
>>492 Eclipse上でブレークポイント設定してデバッグできたはず。
最新環境でできるかどうか不明だけど、VodaのときはJSCLのバージョンを限定すればできた。
それのおかげで一時Eclipseへの移行を考えたんだけど、やっぱマンドクサくなってやめた。
>492 Eclipseでブレークポイント使ったりシングルステップ実行することを、デバックと言うんじゃないかな。 単純にコード書いて実行の繰り返しなら491の方法でOK。 >495 Ant build.xmlを作るのは結構大変だけどガンガレ
Eclipse3.2に標準でAnt1.6.5が付いてる
>>495 AntだったりWTKだったりコマンドだったりEclipseMEだったり人それぞれ
好きな方法でやればいい。
ちなみに俺はEclipseME使ってる。外部ツールにMEXAエミュレータ登録すればコンパイル>実行が簡単にできるよ
>>488 横からスマン
オフィシャル登録経由だと証明書で署名されて、trustedアプリになるのですか?
502 :
デフォルトの名無しさん :2007/01/09(火) 21:14:08
S!アプリで アプリのバージョンアップをさせたい場合は ダウンロード用のリンクのあるサイトに飛ばして ダウンロードさせるしかないのですか? アプリのコード内で書けないの?
VODAFONE_VFX_SDK201でキャンバスを3つ作って順番にsetCurrentしていくと、 2番目のキャンバスが飛ばされるんですが、その原因がよくわかりません。 どうも2番目のキャンバスはsetCurrentしても後に続く処理が終わるまで、ディスプレイに表示されないようなんです。 Dojaで同じようなものを作ると上手くいくんですが。 何が悪いのか予想がついたら教えてもらえませんか?
>>503 setCurrent()のあとisShown()待ちしてないんじゃない?
>502 PCと違ってそこまで自由じゃない
>>504 DisplayableのisShownで表示されているか確認してから先に進むということでしょうか?
507 :
504 :2007/01/10(水) 12:33:53
>>506 Sアプリ開発ガイド MIDP2.0対応端末編 Appendix D
に詳しく書いてあるからそれ見て
メモ帳、J2ME WTK、Vodaエミュより Eclipseのほうが使いやすそうだったんでPC新調したついでに入れてみたんだがコンパイルのやり方わからん… EclipseME入れてみたが、J2ME WTKがないと使えない? Javaプロジェクトで新規プロジェクト作って、stubclasses.zipをライブラリに入れてみたが その後どうしていいかわからない… どこか解説サイトなどありましたら教えていただきたいです…
902SHや903SHのようなPOST通信でContent-Typeがapplication/octet-streamに固定される機種でapplication/x-www-form-urlencodedを使ったPOST送信をまねることはできないのでしょうか? com.j_phone.io.URLEncoderのencodeでエンコードしてから送ればできるのかと思ってやってみたのですが、うまくいきませんでした。 送りたいデータは日本語文字列です。
511 :
デフォルトの名無しさん :2007/01/10(水) 23:58:52
S!アプリを作ろうとしているのですが、Javaで右・左のソフトキーを 押したときに、他のネイティブのアプリのように、メニューを表示さ せるにはどうしたらいいでしょうか。
512 :
506 :2007/01/11(木) 08:14:27
Eclipse3.2にsoftbankの開発サイトで配布されてるプラグイン入れてみたんだけど これってMEXA EMULATORには対応してないの? エミュレーターホームディレクトリにMEXA EMULATORのディレクトリ指定しても無効ですって言われる
514 :
513 :2007/01/12(金) 23:26:17
すまない。 マニュアル読んだらS!Appli Emulatorしか対応してない感じだった。 MEXAエミュ無しで3GC開発って出来るのかな
515 :
デフォルトの名無しさん :2007/01/13(土) 19:30:41
J2ME WTK 2.2のエミュレータでで実行したMIDPアプリケーションのストレージの保存先はどうなっているのでしょうか? ストレージがどこに保存されているのかが探しても見つからないです。
>>515 J2ME WTK 2.2のドキュメントに書いてある
使い方の説明書なんだから最低限確認しようよ
904SHのようなVGA機種で240x294のフルスクリーンモードを使うには MIDxlet-ScreenSize:にどのように記載すればいいのでしょうか? setFullScreenMode(true)は行っています。 0,0 240,260 240,320 のうちのどれかだとは思うのですが、実機がないため検証できません。 ご存じの方がいたら教えてください。
0,0 はVGA表示になったと思う 240x294は240x260時のフルスクリーンだと思うから240,260じゃないかな
スタックトレースを出すことはできたが、ソースの行番号が表示されない。 JITを殺してエミュレータを起動させる方法知ってる人いたら教えて下さい。
エミュはデフォでJIT無効じゃなかったか?
でも、バイトコードオフセット値しか出ないんですよね。 コンパイルオプション-gだけでは不十分なのか?
最近携帯Javaはじめることになった新参ですが、 このスレのまとめサイトとか過去ログ保管庫ってないんですか?
523 :
デフォルトの名無しさん :2007/01/21(日) 21:18:40
524 :
デフォルトの名無しさん :2007/01/21(日) 21:24:12
着信とかの割り込みイベントのとき、着信優先にしたとき、 TelephonyListenerのringが呼ばれてから、一時停止状態 (pauseApp)が呼ばれるまでどのくらいの時間があるので しょうか。 また電源(終話)ボタンが押されたときのイベントは 何かあるのでしょうか。
Eclipse3.2を試しに入れてみたんですが、 JSCL122のKToolbarよりjarファイルのサイズが大きくなりますね。 設定ヘン?
>>525-526 前もこの話題出たけど、コンパイラ自体が違うから
デバッグオプション外してもクラスファイルは同じ大きさにならない。
傾向としてはEclipse/JDTに含まれるコンパイラのほうが微妙に大きい
ファイルを吐くよう。
Vアプリで効果音(SMAF)を鳴らしたいんですが、 なるべく多くの機種で安定して鳴らすには、 JSCL(MEXA?)を使うのでしょうか? それともMIDP2.0を使うのでしょうか?
Vodafone、SoftBank携帯でクリアキーを拾うにはどうすればいいんでしょうか?
>>529 MIPDかなんかの仕様で、Clearキーはイベント取れないはずです。
一部機種ではExceptionが発生するので、それを拾って…ってことが出来るのですが、
お勧めな方法ではありませんし、ほとんどの機種ではExceptionすら発生しなかったと思います。
>>528 com.jblend.media.smaf.phrase.PhrasePlayer
>>529 >>530 Clear拾えなかったっけ?
-2147483646かなんかだったような・・・
534 :
デフォルトの名無しさん :2007/01/25(木) 13:37:43
Clear関知できる機種とできない機種がある だめすぎ
iもだけど全機種対応謳いたいならクリアキー使わない方がいい。
537 :
デフォルトの名無しさん :2007/01/27(土) 02:51:14
S! Appli Emulator での、 MIDP-2.0 と CLDC-1.1 の使い方を教えて頂けませ んでしょうか。MANIFEST.MF & JAD ファイル手書きで、 jar ファイルの作成 はコマンドラインでしてます。 javac -> preverify -> jar とやって、 jar ファイルは作成できたのですが、エミュで起動しようとすると、 META-INF/MANIFEST.MF の MicroEdition-Profile 項目に 異常があります。 > MicroEdition-Profile: MIDP-2.0 MicroEdition-Configuration の項目は、 MIDP-1.0 です。 と出て、起動してくれません。Eclispe + S! アプリプラグイン使うと、 MIDP-2.0 & CLDC-1.1 でもコンパイルとエミュレータ上での実行が出来るんで しょうか? 識者のご教授をお願い致します。
MANIFEST.MFとjadファイルにはなんて書いたの? 全文書いてみてよ
539 :
デフォルトの名無しさん :2007/01/27(土) 03:36:06
MIDP 2.1実装したベンダってまだ居ないよね? いつの間にかphoneME MR2が出てるけど
541 :
537 :2007/01/27(土) 23:13:16
>>538 >>539 お返事、有り難う御座います。取り合えず、JSCL 1.2.2 SDK 1.0.1 の Ktoolbar を使って進めようと
思います。
>>538 MANIFEST.MF と JAD を貼らせて頂きます。何か問題がありましたら、ご教授お願い致します。
MANIFEST.MF
MIDlet-1: TestClient, TestClient.png, Test
MIDlet-Application-Security: Y
MIDlet-Name: TestClient
MIDlet-Permissions: com.j_phone.io.Connector.StorageConnection.read,com.j_phone.io.Connector.StorageConnection.write
MIDlet-Vendor: Unknown
MIDlet-Version: 1.1.9
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.1
542 :
537 :2007/01/27(土) 23:13:56
JAD ファイル
MIDlet-1: TestClient, TestClient.png, Test
MIDlet-Application-Security: Y
MIDlet-Jar-Size: 2100
MIDlet-Jar-URL: TestClient.jar
MIDlet-Name: TestClient
MIDlet-Permissions: com.j_phone.io.Connector.StorageConnection.read,com.j_phone.io.Connector.StorageConnection.write
MIDlet-Vendor: Unknown
MIDlet-Version: 1.1.9
MIDxlet-API: JSCL-1.3.2
MIDxlet-Application-Security: Y
MIDxlet-ScreenSize: 0,0
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.1
>>539 JSCL1.3.2 と MIDP-2.0 を使ったアプリのテストは MEXA のエミュレータで行うのでしょうか。 MEXA のエミュレータも使ってみたのですが、 StorageConnection
を使おうとすると、 java.lang.NoClassDefFoundError でエミュレータが落ちてしまいます。もし、解決策をご存知でしたら、お教え頂けません
でしょうか。よろしくお願い致します。
マニフェストもJADも特に変なとこはないね。 MIDP2.0を使うならWTKかMEXAエミュレータを使うしかない。 WTKはJSCLやMEXAに対応してないから使うならMEXAで java.lang.NoClassDefFoundErrorがでるのは ビルドパスのライブラリにMEXAのsutbclassesを追加してないから 後は自分でなんとかしましょう。
544 :
デフォルトの名無しさん :2007/01/28(日) 18:52:35
すいません。537とは別の者です。 WTK2.2(MIDP2.0, CLDC1.1)で作成したS!アプリに QRコード機能を追加したいのです。 コンパイルをエクリプス行い、 実機で動きを確認という方法でやろうとしましたが、 起動時に「エラーが発生しました」と出てしまいました。 >543のとおり MIDPを使うなら環境をJSCLかMEXAにするしか方法はないのですか? ご教授願います。
545 :
デフォルトの名無しさん :2007/01/28(日) 21:25:40
今更ながらKJXの分解と作成をするアプリを作ったんですが需要ありますか? ぶーにゃんさんのアプリがコマンドライン起動に対応していなかったので作成してみました。。
546 :
537 :2007/01/29(月) 01:10:12
>>543 ご教授のお陰で、 MEXA の stubclasses の場所もわかり、
MEXA エミュレータ上での実行の目処が立ちました。
お返事有り難う御座います。
コンパイルしたいソースがあります。そのソースはJSCL 1.2.2 SDK付属のKToolBarで、 標準設定でビルドすると普通にコンパイル出来るとスレ違いな板で教えていただいたのですが、 J2ME Wireless Toolkit 2.2 J2SE Development Kit 5.0 Update 9 J2SE Runtime Environment 5.0 Update 9 S! Appli MEXA Emulator 1.1 S! Appli Emulator for JSCL 1.3.2 をインストールした環境で、J2ME Wireless Toolkit 2.2付属のKToolBarで 標準設定でビルドすると↓のエラーが出てしまいます。 com.j_phone.amuseは存在しません。 com.j_phone.systemは存在しません。 com.jblend.graphics.j3dは存在しません。 〜シンボルを見つけられません。 MEXA EmuまたはJSCL Emu付属のstubclasses.zipにクラスパスの設定をしても 同じエラーでした。 ソースをプリプロセッサに通す時にMIDP2=1と指定するとコンパイルは出来たのですが アプリの動作に不具合がありました。
548 :
547 :2007/01/29(月) 01:29:21
JSCL 1.2.2にあってJSCL 1.3.2にないものってあるのでしょうか?
どなたか、JSCL 1.2.2もしくはJSCL 1.2.2のstubclasses.zipを譲っていただけませんでしょうか?
今現在、公式ではJSCL 1.3.2しかDL出来なくて、他のサイトをかなり探したのですが
DL出来るサイトは見つけられませんでした。
お願い致します。
http://up4.skr.jp/
1.3.2で問題ないので、冷静になって検索。
550 :
547 :2007/01/29(月) 12:38:10
>>549 ありがとうございます。
J2ME Wireless Toolkit 2.2付属のKToolBarに頼らずにコンパイルを試みてみたのですが、
MEXA 1.1とJSCL 1.3.2のstubclasses.zipにクラスパスを通しても、
java.lang.StringBuilder にアクセスできません。
ファイル java\lang\StringBuilder.class が見つかりません。
とエラーが出てしまいました。
StringBuilderクラスは、J2SE 5.0で追加されてjava.langパッケージに含まれるとまで
分かったのですが、どうして良いのか分からなくて・・。
引き続き調べてみますが、やはりコンパイル初めてで知識不足な為、
JSCL 1.2.2 SDK付属のKToolBarに頼りたいとも思います。
どなたかJSCL 1.2.2 SDKをお持ちでしたら、譲っていただけませんでしょうか?
http://up4.skr.jp/
そのすれ違いのスレで答えてもらったのをよんだのか? 教えてもらってなにも返答してないじゃないか
552 :
547 :2007/01/29(月) 12:51:12
すみません、しばらくあちらのスレは読んでいませんでした。 返信してきます。
>>550 StringBuilderって使えないのでは。
コンパイル環境自体はそれでよさそうだから、
後はソース修正した方がいいんじゃない?
それはそうと、JSCL1.2.2のツールって
コンパイルからマニフェストファイルの設定も出来て便利だったよね。
>>543 JSCL1.2.2のエミュレータでMIDP2.0動かんって見るんだけど、
Graphics.drawRegionとか使ってるアプリ普通に動いているんだが、
俺なんか間違ってる?
ビルドはコマンドラインでやってっから、KtoolBarの制限ってこと?
SoftBankが統合開発ツールを出せば全ての問題が解決するのに 技術力無いのかね
>>550 1.2.2はMEXA Emulatorのlib\stubclass.zipで代用できるからやってみ。
単なるクラスパスに通すのではなくて、-bootclasspathに指定する。
preverify.exeはWTK2.2のを使って、CLDC1.1を指定するオプションを忘れないこと。
StringBuilderはJDK1.5以降で文字列の足し算をやってると勝手に使われるよね。
恐らくコンパイルにJDK1.5以降を使ってるでしょ。
そういうときは-source 1.3 -target 1.3オプションを付けてコンパイルしてみ。
こうすると代わりにStringBufferを使うようになるから。
これでうまく行かない場合はJDK1.4を使って、同じようにやってみるべし。
昔の3GC〜のエミュ部分は、MEXA Emulatorで代用できる。
SDK相当の部分は含まれていないけど、自分でコンパイルできる技能があれば
WTK2.2とMEXA Emulatorの組み合わせが使えるわ。
557 :
547 :2007/01/29(月) 17:06:39
みなさん、ありがとうございます。
>>556 JDK1.5.0_09です。おっしゃる通り、-source 1.3 -target 1.3をつけて
-bootclasspathでMEXAのstubclasses.zipを指定して行ったところ、
>>550 のエラーが出なくなり無事コンパイル出来ました。
プレベリファイも、WTK22のpreverify.exeで-target CLDC1.1をつけて
行いました。アプリも問題なく動作しています。
おかげ様で自分の環境でもコンパイル出来るようになりました。
詳しく解説していただき、本当にありがとうございました。
558 :
デフォルトの名無しさん :2007/01/29(月) 21:23:10
コンパイルエラーで困ってるんですが見てもらえますか?
やりたいことはブラウザ起動させるだけなんですが、簡単なようで出来ないです
try {
PhoneSystemEx.midlet.platformRequest("
http://www.google.co.jp/ ");
} catch (Exception e) {}
↓エラー文字
C:\WTK22\apps\PhoneSystemEx\src\PhoneSystemForm.java:69: シンボルを解決できません。
シンボル: メソッド platformRequest (java.lang.String)
場所 : javax.microedition.midlet.MIDlet の クラス
PhoneSystemEx.midlet.platformRequest(
>>558 プロジェクトの設定がMIDP 1.0になってないか確認してみ。
platformRequestはMIDP 2.0以降だよ。
560 :
デフォルトの名無しさん :2007/01/29(月) 22:06:16
>>559 MIDP 2.0の指定でコンパイルしてもダメだったんです
今なんとなく原因がわかって
SDK1.2.2や1.3.2のstubclasses.zipを使用するとコンパイルエラーで
MEXAについてたstubclasses.zipのパスを通せば動いたんだけど
と言うことは以前のエミュについてたstubclasses.zipで開発してた時代にはplatformRequestが無かったことなんですか?
JSCL1.2.2SDKで普通にplatformRequest()使ってるお
562 :
デフォルトの名無しさん :2007/01/29(月) 22:11:29
>>561 マジですか・・jadに何か追加することとかってある?
563 :
デフォルトの名無しさん :2007/01/29(月) 22:44:41
MEXAのstubclasses.zip使うのか解決になってない気がするけど JSCL1.2.2SDKで動くようにならーん!
564 :
デフォルトの名無しさん :2007/01/29(月) 23:59:43
platformRequestの問題解決しました〜 stubclasses.zipの他にmidpapi20.jarのパスも通さないとダメなんですね スッキリ
>>564 何のためにパスを通すのかを理解してるか?
566 :
デフォルトの名無しさん :2007/01/30(火) 01:18:25
>>565 platformRequest()クラスが含まれてるものを組み込むからでしょ?
stubclasses.zipの中にmidpapi10.jar、midpapi20.jarが全部入ってると思ったけど
一部入ってないことが今日わかった
Javaて静的リンクしてたっけ? コンパイル時の名前解決だけかと思ってた。 stubclassesってブートストラップの方じゃね?
>>557 あっちのスレから来ました。全く同じことをしてみようとしている者です。
非常に参考にさせてもらいました。でもうまくいきません。
-bootclasspathをしてみたところ40個ぐらい出てましたエラーは一気に
減ったのですが、2つまだシンボルを見つけられませんっと出ます。
プリプロセッサーを通す時には結局何も設定しなくていいんですよね?
ktoolbarでビルドしたんでしょうか?私はコマンドでjavac -boot〜
でコンパイルをしてみてるのですが。
569 :
568 :2007/02/02(金) 21:54:13
すいません。無事にできました。お騒がせしました。
>>569 そういう時は
どうやったらうまくいったか
を書くのが礼儀
571 :
‐ :2007/02/04(日) 20:53:49
マジで携帯用ワームを作成したいのですが…【34歳・主婦】
オープンアプリのことはスルー?
スルー。
3GC向けにネットワーク接続するアプリを作成したのですが、 ネットワーク接続確認ダイアログで電源キーによりサスペンドレジュームを 繰り返すと2回目のサスペンド時に必ず 「Vアプリエラー 終了しました」 と表示され落ちてしまいます。 解決策はないでしょうか?
端末は?
576 :
574 :2007/02/07(水) 11:57:10
>>575 3GC国内端末で試しましたが、試したもの全てで確認できました。
910T、905SH、904SH、804N、902T、803T、802SH、802N等です。
577 :
デフォルトの名無しさん :2007/02/07(水) 13:25:53
803Tで試したけどオチネェ。 レジューム、サスペンド時にプログラムで 何か余計なことやっているだろ。 それを提示しろ。
578 :
577 :2007/02/07(水) 13:27:18
sage忘れた
579 :
574 :2007/02/07(水) 20:36:08
>>577 設定したフォントがサスペンド時に戻ってしまう為、
毎フレームでsetFontをして、さらに下記の処理を
サスペンド時に行っていました。
while(!Canvas.isShown())
try{Thread.sleep(100);}catch(Exception e){}
この処理のせいでフリーズしていたようです。
フォントサイズが戻ってしまう対処策はみなさんどうしていますか?
>>579 Fontの取得自体も描画のたびにするべき。
ガイドラインか何かに書いてあったと思うけど・・・
制限: . Canvasを継承するクラスでCanvas#paint(){}及びCanvas#paint()から呼び出 すメソッドを実装する際に Graphics#setFont()を使用する場合には、 Graphics#setFont()に与える引数は Canvas#paint(){}のスコープ外で定義し た変数を与えること。例えば、Canvas(を継承するクラス)のインスタンス変 数やスタティック変数として定義した変数を Graphics#setFont()の引数に与 えること。
複数トラックでBGMを鳴らしているのですが、 電源キーで中断後、復帰すると1トラックのBGMしか再生されません。 何か考えられる原因はないでしょうか?
583 :
デフォルトの名無しさん :2007/02/08(木) 01:31:51
>>582 復帰したら途中からじゃなく新規に再生しなおせばいいじゃん
584 :
デフォルトの名無しさん :2007/02/08(木) 10:36:54
SB用携帯アプリ作成に挑戦してみようと思ってるのですが S! Appli EmuratorがMIDP2.0に対応してないようですが JDK 1.5 J2ME Wireless Toolkit 2.2 で作成したJAD、Jarファイルを アプリゲット等に登録してアップしたものを実機でテストすれば 出来るのでしょうか? (アプリゲットに登録してから出来なかったじゃ悲しいので・・) それと何でソフトバンク携帯なのにソフトバンクが提供するエミュは旧世代(MIDP1.0)にしか 対応してないのでしょうか? それとも私が探しきれてないのなら何処にあるか教えて欲しいです・・
>>585 勉強不足で申し訳ありませんでした。
因みに
JDK 1.5
J2ME Wireless Toolkit 2.2
だけでも開発→実機で動かす事出来るでしょうか?
何度も申し訳ないです。
>>586 JSCL、MEXAの機能を使用しないのであれば可能です。
588 :
デフォルトの名無しさん :2007/02/08(木) 11:01:53
>>587 なるほど
MEXAエミュレータをインストールして自分で作ったプログラムを試したら出来ました。
早速、アプリゲットの作者登録してきます。
4日くらい掛かるそうですが・・
これでやっと4日後実機テストできます。
ありがとうございました。
>>582 複数トラックのシンクロ再生をしてると、復帰時にスレーブトラックを
再開してくれない移動機がある。
そーいう実装なので諦めて >> 583
590 :
574 :2007/02/08(木) 13:25:12
>>580 ,581
ガイドラインにサンプルソースまで載っていますね。
調べ不足ですみません。
ありがとうございました。
>>583 >>589 レスありがとうございます。
583さんの方法は分かるのですが、
他のアプリで復帰しているものがあって
どうやってるんだ???と調べたものの結果わからずです。
でも、端末にもよるんですね。
なんか悔しいです。
>>591 setSubjectTo使わなきゃ、普通に中断点から復帰するだろ?
更に言えば、使ってても一部の機種以外は復帰する。
「Phrase再生終了直後、アプリを一時停止・再開した場合、Phraseを正常に再開することが出来ない。
アプリ一時停止時は必ず Phraseを停止(stop)・再開(play)を実施する必. 要がある。 」
なんて注釈打ってある機種もあるぐらいだから、実装としては
>>583 が正しいわけだが。
それとも機種判別して処理分けるか?
S!アプリSDK更新来た。 MEXA用プラグインも来てた!
MEXAエミュは相変わらずCPU使用率が鬼ですね。 ヒープがおかしいバグは直ったようですが
あー、S!アプリプラグインの設定でエミュのパスが無効になる。 どうすりゃいいんだorz 惜しいが、やっぱりProguard&プリプロセスが使えない分、 EclipseMEの使い勝手には及ばんなぁ。
でも前までの奴にくらべて起動とか早くね?
597 :
デフォルトの名無しさん :2007/02/09(金) 23:31:16
eclipseのMEXAプラグイン使ってみたけど 実行できない件。なんかインストールエラーになる しかも構成および実行の部分でプロジェクトの選択で以前消したプロジェクトがずっとのこってて それの影響で切り替えらないし マジつかえねぇwwwwww
eclipseMEの質問はここでおk? eclipseMEでWTKのエミュレータ使ってデバグ・実行しようとすると VMと接続できないってエラーが出てつまずいてんだけど、何処の設定見直せばいい? WTK単体での動作は問題なく、 EclipseMEでのデバグ・実行以外は問題なく出来てんだけど・・・。 ヒントくれー
JSCL1.2.2SDKのエミュレータにサスペンド機能があるんですが、 pause()が呼ばれても処理が止まりません。 そういうものなんでしょうか?
pauseApp()
601 :
デフォルトの名無しさん :2007/02/11(日) 15:18:50
すっぽーず
pauseApp()ですね。間違えました。
603 :
デフォルトの名無しさん :2007/02/12(月) 09:14:12
auでJavaが使えるようになるので久しぶりにJava(CLDC1.0+MIDP2.0)を触っているのですが、 ジェネリックを使用したコードを作成したところ、 J2SEではコンパイルできるのですが、KToolbarでは以下のメッセージが出てしまいコンパイルできません。 『総称型は -source 1.3 でサポートされていません (総称型を使用可能にするには、-source 1.5 を試してください)』 そこで、KToolbarではオプション指定ができないようなので、 サンプルのbuild.batを"-source 1.5"に書き換えて試したところ、 今度は↓のメッセージが表示されてしまいました。 『..\src\Map.java:78: java.lang.Void にアクセスできません。 ファイル java\lang\Void.class が見つかりません。』 ひょっとしてJ2MEではジェネリックって使えないのでしょうか?
自分でJ2MEって書いてるじゃねぇか。
CLDCが1.3でCDCが1.4相当のVM仕様じゃなかったか?ホットスポットはオプションだし。 元を糾せば1.1,1.2時代の組み込み向けJavaの仕様を包括的に引っ張ってんだから 5.0の機能が使えるなんて発想がおかしい。 KToolbarの設定のコンパイラに怒られてんなら聞くまでもないだろ
606 :
603 :2007/02/12(月) 12:03:00
レスありがとう。 KToolbarは「総称型を使用可能にするには、-source 1.5 を試してください」って言うから 何か方法があるかと思ったけど、これもJ2SEのコンパイラだからそう言っているだけなのか。 ということは、JavaってJVMのバージョンが古い限り最新仕様は使えないのか。 あー振り出しに戻った・・・
>>606 お前VMが仮想マシン語を実行するスタックマシンだって知ってるか?
>「総称型を使用可能にするには、-source 1.5 を試してください」
お前が持ってるコンパイラのメッセージをリダイレクトしただけだ
>JavaってJVMのバージョンが古い限り最新仕様は使えないのか。
javaに限らずなんだろうと実装されてなきゃ使えんだろうが
608 :
603 :2007/02/12(月) 18:22:36
スタックマシンなのは知ってるけれど、 JVMがJava言語のどの仕様レベルまでをサポートするものなんかは知らんかった。 だから最初はジェネリックにしても、コンパイラの内部的に <T>とかを指定した型に置き換えたソースを生成してコンパイルするという感じの C++のテンプレートみたいなものかと思ってた。 (これだったら実行コードが大きくなるけど、VMに特別な機能は必要ないと思うから。) JVMってIA32みたいなバイトコードを実行するだけのものじゃないんだね。 仕様とVMが関係してくるのはメモリ管理が関わってくるから?? JVMの仕様を知らないので良く分からないけど。
超初心者なのですが、MEXAの設定されている外部メモリ用フォルダ にデータを入れて、読み込もうとしてるのですが、 java.lang.SecurityException: com.j_phone.io.Connector.StorageConnection.read was denied と出て止まってしまいます。 実際に端末上に落としてみると動くので、MEXAの設定なのかと思っ ているのですがそれっぽい設定をUnit1+Unit2以外発見できません。 どうするとMEXAでも確認できるでしょうか?
>609 MIDlet-Vendorを「Aplix」にしてみ。
>>610 ありがとうございます。
jadとMANIFEST.MFをMIDlet-Vendor: Aplixとしてみたところ
残念ながら変わりませんでした。
直すところがそもそも違うでしょうか??
auのオープンアプリを作ろうと四苦八苦しているモンです。
初心者以下かもしれませんが、どなたか救いの手を…。
1.Canvasクラスを継承した場合、paint()メソッドを必ずオーバーライドしないとダメ、とモノの本に書いてあったのですが、
ttp://appget.com/contest/au2007/lecture/lesson4.html では、paint()メソッドがオーバーライドされていないっぽいんです。どういうことなんでしょうか?
2.キー入力の処理を、keyPressed()メソッドとkeyReleased()メソッドで処理しているんですが、
これらのキー押し/離しは、順番通りに来るとは限らないんでしょうか?
3.MIDP2.0の日本語リファレンスって、存在しないんでしょうか?
3連休かけて色々調べたんですが、わからず…誰か助けて…。
613 :
610 :2007/02/12(月) 20:31:46
>611 直すところはあっている。 その他と言えば 1: MEXAの メニュー→オプション→セキュリティ で「常にTrusted(3rd Party Domain)でインストール」を選択するか 「S!アプリのインストール時に問い合わせ」にしてインストール時に Trusted(3rd Party Domain)でインストールでインストールする。 2: MEXAのデータフォルダ(デフォルトでC:\SOFTBANK_MEXA_EMULATOR11\resource\ms) に「Other documents」がない これくらいしか思いつかない。
>>612 > 1.Canvasクラスを継承した場合、paint()メソッドを必ずオーバーライドしないとダメ、とモノの本に書いてあったのですが、
>
ttp://appget.com/contest/au2007/lecture/lesson4.html > では、paint()メソッドがオーバーライドされていないっぽいんです。どういうことなんでしょうか?
URL先のサイトで継承しているのはCanvasクラスではなくGameCanvasクラスだから。
> 2.キー入力の処理を、keyPressed()メソッドとkeyReleased()メソッドで処理しているんですが、
これらのキー押し/離しは、順番通りに来るとは限らないんでしょうか?
普通順番どおりに来るんじゃないの?
> 3.MIDP2.0の日本語リファレンスって、存在しないんでしょうか?
見たことないねぇ。
基本はMIDP1.0と同じだし、なくても問題ないでしょ。
>>614 凄まじくわかりやすい回答、ありがとうございます!
2については、エミュで順番通りに入ってこないことがあるようで…。
実機ではいまのところ順番通りに入ってきてるんですが、
レアケースで、そういうこともありえるのかなと…。
チラシ裏ですが…
プログラマじゃないんですが、ゲーム作りは一応プロでして、
100万(先のURLのところ)目指して頑張ります。では。
>プログラマじゃないんですが、ゲーム作りは一応プロ…… なるほど、プログラマを顎で使う方ですか。
>>614 できました!!
「常にTrusted(3rd Party Domain)でインストール」を選択
でいけました。
ありがとうございます!!
wireless toolkitの通信確認がいちいちでるんですけど これ消せないですか?
実機でも出るのでしょうがない。
Sアプリでhttp通信をしてpng画像(実際はpngを結合したdatファイル)を取得すると、 データサイズが少し減ってるんですが、原因知ってる人いたら教えてもらえませんか? ちなみにエミュレータなら正常に取得できます。 png以外のデータ(jpg、gif、txtをdatにしたもの)でも実機で正常取得できます。
>>620 Content-Typeを image/gif にしておけばOK。
ありがとうございます!非常に助かります! しかし、pngなのになんで"image/gif"にするんですか? リクエストプロパティがよく分からないので、 よければもう少し説明お願いします。
>>622 リクエストプロパティじゃなくてサーバの返すレスポンスヘッダのコンテントタイプ。
application/x-java-archive や image/gif などソフトバンクのゲートウェイが
既知のバイナリ形式のものにしておかないと、
テキスト扱いされて間で変造されてしまいますよ、ということ。
ありがとうございます。 サーバの方で設定しないといけないのですね。
iアプリからS!アプリへの移植を仕事でしています。 V804N,V804SS,706SCなどで起動もせず落ちるのですが、コンストラクタ等でミスっているのでしょうか。 よろしければ教えて頂きたいです。 少々長いですが、ソースを貼ります。どうか宜しくお願いします。 【MIDlet】 public No() { dis = Display.getDisplay(this); canvas = new MainCanvas(this); dis.setCurrent(canvas); try{ Dev = DeviceControl.getDefaultDeviceControl(); }catch(Exception e){} }
【メイン計算(MIDlet継承)】 public ts(){ //仮想画面の作成 canvas.img_screen = Image.createImage(ScreenWidth,ScreenHeight); _g = canvas.img_screen.getGraphics(); //矢をnewする _arrow = new int[ARROW_MAX][ARROW_POINTER_MAX]; //イメージをnewする _images = new Image[IMAGE_MAX]; try{ szServer = getAppProperty("CHECK-URL"); URL = getAppProperty("WINING-URL"); }catch(Exception e){} //順番をセットする配列をnewする _turn_table = new int[TURN_TABLE_POINTER_MAX][TURN_TABLE_STATUS_MAX]; //マーク用の配列をnewする _cricket_mark_table = new int[TURN_TABLE_POINTER_MAX][CRICKET_MARK_MAX]; _arrow_up_pos = new int [ARROW_MAX][2]; _play_data = new int[9][PLAY_POINTER_MAX]; err_flag = false; init_comp = false; member_flag = true; popFlag = 0; curSele = 0; netCheck = 1; }
【Canvas】 No _app; public MainCanvas(No t) { _app = t; setCommandListener(this); try{ font = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_PLAIN,Font.SIZE_SMALL); // デフォルトフォント(tinyフォントクラスにする) fHeight = font.getHeight(); // デフォルトフォント高さ取得 }catch(Exception e){} drawX0 = (w - GAME_WIDTH) / 2; // 描画原点x座標 drawY0 = (h - GAME_HEIGHT) / 2; // 描画原点y座標 notBgClrFlag = 0; // 背景クリア禁止フラグOFF currentKey = 0; messageDispCounter = 0; messageDispSpeed = MESSAGE_DSP_WINDOW_OPEN_SPD; colorCounter = MAX_COLOR; dspWindowMaxStringNum = (MESSAGE_DSP_WINDOW_W - (MESSAGE_DSP_WINDOW_EDGE + 4)*2) / (fHeight/2); msecOld = System.currentTimeMillis(); sBuf = null; err_state = 0; try{ serverProc = _app.getAppProperty("MESSAGE-SV"); }catch(Exception e){ serverProc = null; } } iアプリのほうを作ったのが別の会社で、自分が見た限り凄い妙な作りになっていますが… お手数ですが見ていただければと思います。
それと、別のゲームにて、ダウンロードすると「不正なアプリです」と出てDLが出来ないという問題が発生しています。 MIDlet-Nameの文字数や、MIDlet-Descriptionの文字数はクリアしています。 考えられるのが、MIDlet-Descriptionに半角スペースが入ってることぐらいなのですが、 入っているとDL出来ないなどということはあるのでしょうか?
630 :
625 :2007/02/16(金) 14:46:17
>>629 時間と余裕があれば検証したいところですが、
残念ながらそんな余裕がないんです orz
なんとかしてDLさせないと他のバグ消えてるのになんの意味もありやしない…
MIDlet-Name: リバーシ
MIDlet-Vendor: ○○○
MIDlet-Version: 0.1.0
MIDlet-1: Reversi_sb,icon.png,Reversi
MIDlet-Data-Size: 1000
MIDlet-Jar-URL: Reversi_sb.jar
MIDlet-Jar-Size: 319192
MIDlet-Description: 挟んで 挟んで埋め尽くせ
MIDxlet-API: JSCL-1.2.2
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0
MIDlet-Permissions: javax.microedition.io.Connector.http
MIDlet-Icon: /icon.png
MIDxlet-ScreenSize: 0,0
MIDxlet-API: JSCL-1.2.2 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 が対象機種で対応しているか確認すべし。
>>625 > V804N,V804SS,706SCなどで起動もせず落ちるのですが、コンストラクタ等でミスっているのでしょうか。
この機種以外では動いてるということ?
もれもそこだと思う その辺の機種は未対応のAPIとか見かける 技術資料見たら対応かどうかわかる
634 :
625 :2007/02/16(金) 14:56:45
>>632 報告書には、
発生機種
V804N
V804SS
706SC
未発生機種
V902T
V803N
といった感じに書かれています。
発生機種以外全てOKなのかどうかはうちの社の実機が少ないせいで確認できずです orz
635 :
625 :2007/02/16(金) 15:17:51
>>631 ,633
発生報告のある機種の技術資料の個別仕様と制限を見比べてみましたが、
引っかかるような部分はありませんでした。
自分が↑に書いた起動しない〜という機種も一緒に調べましたが同様…
>>630 >MIDlet-1: Reversi_sb,icon.png,Reversi
>MIDlet-Jar-URL: Reversi_sb.jar
MIDlet-1の第三引数はメインjarファイルの名前を書くから
MIDlet-1: Reversi_sb,icon.png,Reversi_sb
が正しいのではない?
もしGraphicsUtilやオプションな機能を使ってたら MEXA Coreの804N/804SSは動かない。 MEXA/JSCL利用編PDFを調べると良い。 706SCは知らん。
638 :
625 :2007/02/16(金) 15:33:59
>>636 えーと…第三引数は実行するクラスファイル名ではありませんでしたっけ?
名前を変えたらエミュレーターですら実行できなくなりました orz
639 :
625 :2007/02/16(金) 15:38:38
>>637 Regionの部分で使う可能性があったので、差し替えてあります。
他のところは使ってない筈…
640 :
625 :2007/02/16(金) 15:41:47
と、書いてから改めて見直してみました。 あれ、DeviceControl系(バックライトとバイブレーターに使ってる)って引っかかりますか? orz
641 :
636 :2007/02/16(金) 15:43:59
>>638 いつもメインクラス名とメインjarファイル名を一緒にしていたので
混同してしまいました。失礼しました。
>>637 804N、804SSは MEXA Unit1とMEXA Unit2に対応していない。
SCシリーズは MEXA Unit1は対応しているが MEXA Unit2は対応していない。
なので、MEXA Unit2の機能のAPIを探せばOKなはず。
なお、GraphicsUtilクラスはMEXA Unit2の機能です。
ついでに SSとSCシリーズがあるが、出しているのはどちらもサムソン電子。
名前は統一してほしいね。
642 :
625 :2007/02/16(金) 15:50:50
この辺りの資料読むのが久しぶりのせいか見間違えてました。
>>641 Unit2を探していけばいいのですね。有難うございます。
Unit系一個もなかった… orz
643 :
641 :2007/02/16(金) 15:53:07
>>642 そそ。
ただ、MEXA Unit2のAPIを探すなら
MEXAのAPIリファレンスを見たほうが早いかも。
MIDP-2.0なら標準でdrawRegion()使えるね。
import定義はどうなってる?
>>644 ただし拡縮描画ができないで困る。
この辺がSoftBankの厄介なところ。
647 :
625 :2007/02/16(金) 16:02:15
>>645 【MIDlet】
import com.j_phone.system.DeviceControl;
import com.jblend.media.smaf.phrase.AudioPhraseTrack;
import com.jblend.media.smaf.phrase.Phrase;
import com.jblend.media.smaf.phrase.PhrasePlayer;
import com.jblend.media.smaf.phrase.PhraseTrack;
import java.io.*;
import javax.microedition.io.*;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.rms.RecordStore;
648 :
625 :2007/02/16(金) 16:02:45
【メイン計算(MIDlet継承)】 import java.io.*; import java.util.Random; import javax.microedition.io.*; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Font; import javax.microedition.lcdui.Graphics; import javax.microedition.lcdui.Image; import javax.microedition.lcdui.game.Sprite; import com.j_phone.io.ConnectionException; import com.j_phone.system.DeviceControl; import com.jblend.media.MediaImageOperator; import com.jblend.media.smaf.phrase.Phrase;
>>646 ああ、そうなのか。
めったに伸縮しないからなぁ。
まぁ厄介っちゃ厄介だわな。
650 :
625 :2007/02/16(金) 16:03:47
【Canvas】 import java.io.*; import javax.microedition.io.Connector; import javax.microedition.io.HttpConnection; import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Command; import javax.microedition.lcdui.CommandListener; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Font; import javax.microedition.lcdui.Graphics; import javax.microedition.lcdui.Image; import com.jblend.media.MediaPlayer; こうなっています。
MediaPlayerは何に使ってる? PhrasePlayerと競合するぞ。
canvasをスレッドにすれば動いたりして? 日本全国(´ー`)スッドレ( ´ー` )禁止( ´ー` )
もし、MEXA Unit2が原因で落ちているのであれば MEXAエミュレータのUnit2のチェックをはずした場合 落ちるんじゃないかな?
うーん、わかんね
>>653 CoreのみだからUnit1もはずさないと
655 :
653 :2007/02/16(金) 16:34:56
>>654 Unit1が原因だとしたら706SCは動いているはず
656 :
625 :2007/02/16(金) 16:35:28
>>651 MediaPlayerはiアプリの頃の名残ですね orz
使っているメソッドの中身は全部コメントアウトになっていて、
呼び出している場所もコメントアウトしています。
>>652 やっぱり最早それしかないんでしょうか…MIDletにも計算処理やら再生処理やら
入っているんで、もう全部Canvasに移して、MIDletはスッキリさせてやろうかと
考えていた時期がありました orz
>>653 使っているエミュレータ自体が古いので外すチェックが見つからない orz
やっぱ今あるS!のエミュレータ使っていかないと正確にはできないですかね?
今のは「プロジェクト」−「端末設定」−「MEXAオプション」
>>656 使用しているエミュレータはひょっとしてJSCL1.2.2SDKか?
659 :
625 :2007/02/16(金) 17:07:55
DL出来ない問題がもうどうすればいいのか orz
今日納期で今日までDL出来ないって死亡フラグですよね…
>>658 使っているエミュレータは「MEXA Emulator Beta 2.0」というものですね。
S! Appli MEXA Emulator 1.1もあるのですが、動きがトロすぎて敬遠していたのですが、
やはりそちらを使ったほうがいいのでしょうか?
660 :
658 :2007/02/16(金) 17:14:41
>>659 DLテストはどこで行っている?
まさかアプリLiveか?
「MEXA Emulator Beta 2.0」はつかったことないからわからんなぁ。
いつも「S! Appli MEXA Emulator 1.1」使っているし。
ところで「S! Appli MEXA Emulator 1.1」ってとろいか?
俺の使っているPCのCPUが2.8GHzだから、問題ないだけなのかもしれんが・・・。
661 :
625 :2007/02/16(金) 17:17:25
>>660 クライアントの会社で行ってますね。
どんな感じにしてるのかはちょっとわからないですが…
自分の使ってるPCも3GHzくらいあるのですが、なんせ残りHDDが
100MB代とかメモリが500行ってないとか…
結局のところスペックですか orz
コメントとかがコマ送りなのですよ…ゲームの進行は普通なのですが
662 :
625 :2007/02/16(金) 17:20:46
追記。 「S! Appli MEXA Emulator 1.1」で実行して見ましたが、Unit等のチェックが 元々一つも付いていない状態で、なおかつ落ちませんでした orz
664 :
658 :2007/02/16(金) 17:27:11
>>661 一度クライアントに、何を使用してアップしているか
聞いたほうがいいと思われる。
SBが提供している本番サーバであるならば、アップする際に
エラーなり警告なり返してくれるはず。
それ以外の場合、例えばアプリLiveでアップした3GCのアプリを
アップした際に不正アプリエラーが発生する率が非常に高い。
ちなみに、アプリLiveで不正アプリエラーを出された実行ファイルを
本番サーバにアップしてダウンロードしたときに
問題なく動くことは非常に良くにある。
今ちょっと思ったんだけど
> MIDlet-Icon: /icon.png
/っているの?
もしつけるなら普通「./」なんじゃないかな?
まあ、あまり重要ではないと思うけど一応ね。
>結局のところスペックですか orz
結局のところスペックです。
ところでHDD100M代は本気でやばくない?
665 :
625 :2007/02/16(金) 17:36:47
>>664 聞いたほうがいいんですかね…勇気がいる…
初めての会社入って4ヶ月、JAVA初めて半年も経ってない自分が
クライアントに聞くってのが怖すぎて出来ないのは俺がチキンなだけですか orz
いつもはたった一人だけいる先輩が応対してるんですが、今日に限って風邪でダウン。
とりあえず起動しない〜のほうは向こうの対応待ちで、今は寧ろDLできない(別ゲーム)
のほうが危ないから、起動〜が出たら聞いてみようと思います。
DLのほうとか何かしら心当たりありませんでしょうか…?
「/icon.png」のほうは以前作られているVアプリと今回通ったV(S!)アプリが
通っているからあってもなくてもいいんじゃないでしょうかと思ってみます…
通ったほうは「.」もなかったりします。結構曖昧なのでしょうか。
100MB代はマジでヤバいですよね。
不要ファイル消そうにも、このPC使ってた人が結構いて、その時代のファイルが
あるだけに、無闇に整理できない…そして整理する時間ががががなのです orz
MIDxlet-ScreenSize: 0,0 0,0って書いてよかったっけ? あんまり関係ないと思うけど。
667 :
658 :2007/02/16(金) 17:51:25
>>666 MIDP2.0の対応端末編のpdfには
MIDxlet-ScreenSize: 0,0
と記述している場合
MIDxlet-ScreenSize: 240,260
という記述に変更するように書かれて入る。
>>665 DL時に「不正なアプリです」と表示された端末はなに?
また、DLが成功した端末はある?
668 :
625 :2007/02/16(金) 17:55:25
>>666 対応端末のガイド見たところ入れてないと意図しない表示になるみたいですね…
669 :
625 :2007/02/16(金) 18:00:34
>>667 0,0って自動変更でしょうか?
それともそのように記述しないと駄目って奴でしょうか?
最初:
902T,903T,904T,902SH-2',705N,703N
MIDlet-Nameを削った後:
【出来た端末】
902T
【出来なかった端末】
902T以外の↑の機種
MIDlet-Descriptionを削る:
【出来た端末】
902T
【出来なかった端末】
902T以外の↑の機種
報告が来ているのはこんな感じです。
なんかMIDletのコンストラクタが完了する前に色々やってるみたいだけど、 startApp()かメインスレッドの開始時に処理するようにしてみたら? ていうかエミュつかってたらわかるか……。
>>665 素直に聞けば?
クライアントが他のアプリで同じ症状が出たことがあれば解決策を教えてくれるだろうし。
クライアントだって納品されなかったら困るんだから、答えられることなら何でも答えてくれるでしょ。
672 :
658 :2007/02/16(金) 18:14:33
>>669 >0,0って自動変更でしょうか?
>それともそのように記述しないと駄目って奴でしょうか?
手動で記述してください。
う〜ん。
902TでDLできて、903T、904Tで起動できないって報告は初めて聞くなぁ。
ちょっと気になったのは
MIDlet-Nameに半角カナがが入っていたことだけど
MIDlet-Nameを削ってもだめだった出あれば、あまり関係ないっぽいしなぁ。
個人的にはアップしているところが悪いとしか思えない。
後は、問題ないとは思うが念のため MANIFESTファイルの中身を提示してもらえる?
>>670 625が提示しているプログラムと現在DLできないアプリは
別物だと思われる。
673 :
625 :2007/02/16(金) 18:24:29
>>670 それも手として考えはしたんですが、なんか凄い危ういバランスのアプリで、
以前やって、完璧だ!って状態で色々とぶっ壊れました orz
>>671 確かに納品自体はされないと困るはずですよね…
問題は担当している人がプログラムのことを全然わかってない、営業上がりの
人だという事ですが orz
>>672 先ほどのJadの中身等はちょっと守秘義務でばれたら困るので色々変えてあります。
実際はMIDlet-Nameが半角カナで濁点含め、11文字です。
32Byteまでですよね。ヤバいとは思うのですが、半角カナだから…と思ってたりしたのですが。
MANIFESTの中身はこんな感じです。
MIDlet-Name: リバーシ
MIDlet-Vendor: ○○○
MIDlet-Version: 0.1.0
MIDletのコンストラクタ(=MIDletクラスの名前)はNoだよな? MIDlet-1: Reversi_sb,icon.png,Revers ……。
675 :
625 :2007/02/16(金) 18:30:43
>>674 ちょっと待ってください。それ別の(起動しないほう)話です orz
ReversiのほうはDLできないって奴です。
さすがにそこ間違うとエミュレーターでも起動できませんので…
あれじゃね、Jadの文字エンコーディングと端末の対応エンコーディングの一致と 一つのテキストファイルに別の文字コード混在とか。 あとはJadの特定位置に特定の文字が来るとインストール失敗する端末なかったけ? 端末AMSからインストール成功しないんでしょ?
678 :
658 :2007/02/16(金) 18:42:31
>>673 MANIFESTファイル内に
MIDlet-1: Reversi_sb,icon.png,Revers
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0
の三つを追加するべし。
この三つと提示された
MIDlet-Name: リバーシ
MIDlet-Vendor: ○○○
MIDlet-Version: 0.1.0
がMANIFESTの必須属性
UTF-8にしてる?
あれ? 俺間違えてUTF-8にしてて、 それじゃなきゃダメだとPHPと勘違いしてて、 んでうまくいかんかった思い出があるなぁ
681 :
625 :2007/02/16(金) 19:42:58
DL出来ないっぽい上に、起動しないほうって言うのがバグが大量に来ました… orz
>>676 そこらの情報はちょっと手に入れられませんでしたね…
「不正なアプリです」と表示され、DL出来ないと報告されています。
>>677 誰にでも間違いはあります…こちらこそ言い方が不躾で申し訳ありませんでした。
>>678 んー…提示したほうのMANIFESTで、Noのほうもやっているんですが、
そちらはDL出来てたりするのですよ…ちょっと追加してみます。
Noにも以前同じ問題が出ていたのですが、そのときはMIDlet-Descriptionでした。
今回もそうかと思ったのですが、発生端末が違う時点で原因は別なのでしょうかね…
次送るときに追加してみます。
>>679 UTF-8になってます。
もしかしたらそれかも?と思って確認してみたところなっていました。
682 :
658 :2007/02/16(金) 19:53:31
>>681 >んー…提示したほうのMANIFESTで、Noのほうもやっているんですが、
>そちらはDL出来てたりするのですよ…
むしろそっちのほうが気になる。
何でMANIFESTファイルの必須属性入れていないで起動できるんだろう?
ていうかMANIFESTとJADをちゃんと仕様通りに書いてる? そっちでコケてる気がする。MEXA Emulatorってビルド時に勝手にやってくんないの?
684 :
625 :2007/02/16(金) 20:54:55
>>682 結局MANIFEST必須属性入れても無理でして、最後の手段として、
「MIDlet-Description」を削除、MIDlet-Nameを大幅に削った(半角カナ5文字)
のを送付したところ行けたとのこと…MIDlet-Nameだったのでしょうか…
何はともあれ、DLのほうはなんとかなりそうです。
本当に皆様方有難うございました!
あとは…起動できないほうのみです… orz
必須属性入ってないのに、起動関連以外は普通に行けてるんですよ。
寧ろ必須属性入ってないから起動できないとかありそうですかね?
>>683 自分の使っているエミュレータではそこら勝手にやってくれませんね…
自分で手動で追記していく形です。
685 :
658 :2007/02/16(金) 21:12:36
>>684 DLできてなによりで。
>寧ろ必須属性入ってないから起動できないとかありそうですかね?
普通は必須属性入っていないかったらDLできないだから
起動できないってことはないと思う。・・・たぶんね。
現時点で問題なのは iアプリみたいにトレースで吐き出せないから
コンストラクタに行っているかどうかもわからないということだね。
そんな君にメソッドを進呈。
ただし、今即席で作ったメソッドで、コンパイルすら通していないから
コンパイルエラーが出たら、自分で調べて直してね。
使用方法は、System.out.printlnみたいに、出力した居場所に置くだけ。
動作はエミュでチェックしてから実機に入れてみて。
(つづく)
686 :
658 :2007/02/16(金) 21:14:31
/*! * @brief 画面に指定した文字列を指定した時間吐き出します。 * * @param mlt MIDletを指定します。 * @param msg 出力する文字列を指定します。 * @param tim 出力する時間ミリ秒で指定します。 * * @return なし */ public void drawAlert(MIDlet mlt, String msg, int tim) { Alert alt = new Alert("Debug"); alt.setString(mes); alt.setTimeout(tim); Display.getDisplay(mlt).setCurrent(alt); try { Thread.sleep(tim + 1000); } catch (InterruptedException e) { } } 俺のコンパイルは、バッチファイル & Makeファイルで行っている。楽だし。 (おわる)
687 :
625 :2007/02/16(金) 21:18:28
>>685 本当に何から何までこんな初心者の為に、有難うございました orz
しかも出力メソッドまで、休日前の大切なお時間を割いて作って頂いて…
本当に有難うございます。
また明日か明後日か…起動できない等で相談に来るかもしれません orz
もう、片付いたみたいだが、備忘録代わりに書かせてくれ。 80xNはMIDlet-NameのMAXバイト数がSHやTより短いんで注意・・・
689 :
デフォルトの名無しさん :2007/02/18(日) 02:19:39
VアプリのSDKでビルドしようとするとこんなエラーが出ます。 Eclipseで作ってる時点ではエラーがないんですが、どういうことなんでしょうか? C:\VODAFONE_VFX_SDK201\apps\ShootMIDP2\src\MyMachine.java:1: '.' がありません。 import ShootLauncher; com.sun.kvem.ktools.ExecutionException
>>689 名前なしパッケージからは import できないよ。
> Eclipseで作ってる時点ではエラーがないんですが、どういうことなんでしょうか? に関しては、名前なしパッケージから import できないってのは 言語仕様の複数箇所をちゃんと読まないとわからんようになってる。 個人的には、言語仕様作った Sun の連中もある時期まで 気付かなかったんじゃないかと勝手に思ってるんだけど まぁ、それが当たってるにせよ外れてるにせよ、j2se 1.4.0 までは 名前なしパッケージからも import できたんだよね。 Eclipse のコンパイラはコンパイラ互換レベルが 1.3 だと、 言語仕様違反を承知で名前なしパッケージからの import を認めてる。 j2se 1.3 のコンパイラが名前なしパッケージの import を認めてるから。
インポート外したら解決しました。 ありがとうございます。勉強になります。
display.setCurrent(canvas); while (!canvas.isShown()) { Thread.sleep(100); } こうやってCanvasがセットされるのを待つと、 いつまでもセットされなくて止まる時があるんですが、 Canvasがセットされるタイミングっていつなんでしょうか? 別スレッドでセットすると上手くいったりするんですが、 なんでセットされないのかイマイチよく分かりません。
>>693 それstartApp()に書いていると思うんだけど、
起動時に実行するのはいいとして、リジューム時にも実行しちゃってないか?
あと念のため Thread.sleep(100); はtry-catchで囲おう。
>>693 setCurrent()されたらからといって、すぐにisShown()になるわけではないよ。
このあたりは機種によっても違うかもしれないところなんだけど、
JVM的には表示する前にやらなきゃいけないことがあって、
それはそのメソッド(例えばstartApp)を抜けないとできないことかもしれない。
もしも表示された後にやらなければならないことがあるならば
Canvas#showNotify()をオーバーライドしたほうが良いよ。
696 :
693 :2007/02/18(日) 12:48:27
お二方ともありがとうございます。
>>694 エミュレータでやってるので、サスペンドはしてないです。
>>693 >JVM的には表示する前にやらなきゃいけないことがあって
それが知りたいんです。
何から抜けないとisShownがtrueにならないのか。
開発ガイドには最初のpaint()が終わったらtrueになるって書いてるんですが、
MIDP2.0のGameCanvas(Canvasのサブクラス)を使っていて、
MIDP2.0のAPIリファレンスが英語だから、そいつのpaint()の説明が読めない…
697 :
695 :2007/02/18(日) 19:07:18
>>696 > 何から抜けないとisShownがtrueにならないのか。
> 開発ガイドには最初のpaint()が終わったらtrueになるって書いてるんですが、
自分でわかってるじゃん。その最初のpaint()が実行されるタイミングは実装依存。
少なくともsetCurrent()から帰ってきた段階で、
paint()が呼ばれていることを保証してくれるような実装は知らない。
そのウェイトループがstartApp()で実行されているのか、
keyPressed()で実行されているのかは不明だけど、
そのメソッド(startAppやkeyPressed)から抜けない限り、
paint()が実行されない実装はあるよ。
逆に実行される(というよりもkeyPressedが別スレッドで実行されている)実装もある。
だからあきらめてshowNotify()使え、な。
698 :
693 :2007/02/18(日) 19:24:16
DojaのソースをそのままMIDPで使えるようになるクラスを作りたいんです。 それで待ち処理を装備したsetCurrentメソッドを作ろうとしたんだけど、 実装依存だと難しそうですね…
コンテンツアグリゲータに関して質問があります。 端末内のデータフォルダを読み込むテキストビューワを 作りたいのですが、アプリゲットのオフィシャル登録以外に 実記テストする方法はありませんか。 週間ゲーム&アプリlive(現ゲームチャンネル?)では ftpアップロード時のチェックがなかったようなのですが、 こっちは申請中でまだ返事が返ってきません。
>>699 週間ゲーム&アプリliveのテストURLからもダメだったと思う
>>700 ありがとうございます
そうですか。諦めてオフィシャル申請します
702 :
sage :2007/02/20(火) 04:18:34
SoftBankのサイトで公開されてるMEXA用Eclipseプラグインを使うとき 画像ファイルをリソースとして、プロジェクトに追加したいんだけどさ、 リソースファイルはtmpclassesフォルダの下に追加しなきゃだめなのかな。 JSCL用のプラグインだと、専用のresフォルダがあって、管理しやすいのだが。
ソフトバンクの903TにMobile Gmaps入れたんですけど通信等は普通に使えるんですがGPSが使えなくて困ってます。jadのMIDlet-permissionsにjavax〜Location.location書いてみたんですがダメでした。VアプリからGPS動かしてナビアプリに設定するにはどうしたらいいんでしょうか。
MIDlet-Permission: javax.microedition.location.Location これ追加してもGPSの信号をアプリが受け取れるようにしろ。みたいなメッセージが出ちゃいます。Vアプリの設定でもGPSのとこだけ設定出来ないようになってるのでVアプリでのGPSのパーミッション設定の方法御存知の方いらしたら教えて下さい。
ここ作る所な? 巣に帰れ、どうせマルチなんだろうけど #EM ONEのJ2MEは何積むんだろうとwktk中w ごふぉ5500がVGAで30fps出せるから色々出来るんだぜ?
Windows Mobile ならタダでネイティブアプリが開発できるし、 あえて J2ME を使いたい気はしないな・・・
ゲームチャンネルのコンテンツレジ垢削除しようと思ったら、垢の削除方法が書いてなくて、 お問い合わせにメールしたらMAILER-DAEMONが返ってくるという… こんな管理がいい加減なコンテンツアグリゲータがオフィシャルで存在するってのがあり得ん。
GPSのパーミッションわかったwwwwwwwwwwwこのスレの無職おやじ達は使えねえ wwwwwwww
どうやるの?
710 :
デフォルトの名無しさん :2007/02/21(水) 15:57:36
SアプリをEclipseで作ってるんだけど (エミュ:S! Appli Emulator for JSCL1.3.2) ビルドが通って実行までいって initialize MA-x Emulator ALERT: Unable to load class java/lang/StringBuilder terminate MA-x Emulator とコンソールに出て実行した途端にエミュレータが落ちるんだけど何でですかね?
>>710 このスレをStringBuilderで検索
712 :
デフォルトの名無しさん :2007/02/21(水) 17:59:33
>>711 ありがとう
でも分かったような分からないような・・・
もしかしてMIDP2.0を使うならWTKかMEXAエミュレータじゃないとダメポ?
>706 VisualStudioExpressだとMobile用のSDKが組み込めないからタダは無理って聞いたのだけど、もし方法があるのなら教えてください (_ _)
EclipseMEでプリプロセッサを使うときはどう設定すればいいの? EnablePreprocessingを押してやると.processにソースファイルが作られるけど コンパイルするにはソースフォルダに移さないと駄目なのかな 元のソースファイルは赤波線だらけで見づらいし プリプロセスされたファイルは読み取り専用で編集できないし どうして良いのやら
>>713 実機から必要なもん回収してコマンドラインから・・・
>>715 C#やVB.NETの開発ではその手が使えるが、ネイティブだとヘッダとかないから無理じゃね?
まぁembedded Visual C++があるから
>>706 は嘘ではないのだが・・・
>>716 , 717
SDKぶっこんでCompact用じゃなくて普通の.netFW用テンプレ使ってCompactにもあるAPIのみ使って書いて、コマンドラインから〜でいけた筈。
EEだとテンプレでないだけで開発は可能
>>716 実際embedded Visual C++ + SDK で十分開発できるじゃん。
漏れは業務用アプリとかもそれで書いてるぞ。
>>717 .NET CFでいいんならSharpDevelop使えば
再頒布可能パッケージ入れてCF向けのプロジェクト選んだら
余計な設定とかしなくてもSharpDevelop上で開発できるよ
ただ、GUIビルダはCFのことまったく考慮してないから
あとでちょこっと修正する必要があるけど
以前DL出来ないやら起動出来ないやら書き込んだ者です。 なんか810SHのみDL出来ないというようなことが起きているのですが、 MIDlet-Nameの最大数が少ないとか特別おかしいことってあるのでしょうか? ソフトバンクにある端末情報を確認したのですが、それらしきところは見当たらず、 クリアしています。 JadとMANIFESTを貼り付けますので、お知恵を拝借頂ければと思います。お願いします。
MIDlet-Name: DARTS MIDlet-Version: 0.0.0 MIDlet-Vendor: ○○○ MIDlet-Description: 突き MIDlet-Data-Size: 1000 MIDlet-1: No,icon.png,No MIDxlet-API: JSCL-1.2.2 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 MIDlet-Jar-URL: No.jar MIDlet-Jar-Size: 336159 MIDlet-Permissions: javax.microedition.io.Connector.http MIDlet-Icon: /icon.png MIDxlet-ScreenSize: 0,0
MIDlet-Name: DARTS MIDlet-Version: 0.0.0 MIDlet-Vendor: ○○○ MIDlet-1: No,icon.png,No MicroEdition-Profile: MIDP-2.0 MicroEdition-Configuration: CLDC-1.1
お前らここJavaスレw
>>721 こんな所にjad蒔いたってjarすらないのにどうしようもないよ。
VMベンダーのアプリックスに問い合わせるか、開発のシャープに聞くかじゃないと知らんだろ?
ただのキャリアの禿を充てにするのはお門違い。
聞いてダメなら実機で人海戦術するしかない。
クローズドβテストみたいなのやって人集めるのが一番じゃないか?
少なくともjadなんか貼らんで良いから自分で何を試したのかをリストアップしてくれ。
多分実装依存だから再現できなきゃどうしようもないよ。
それがダメならCPで金儲けなんてできね。
ボッタクリも苦労するっていう良い教訓だw
#jigブラウザが金とってopera miniがタダってよく考えたら恐ろしい世界だぞ?
遥か上には組み込み向け頂点のネフロが居るってのに・・・
日本人は技術ばら蒔いて顧客獲得するって発想がないのかね。
悪い忘れてた >>MIDxlet-ScreenSize: 0,0 て今でもおkなんだっけ?非推奨じゃなかった?
オープンアプリプレイヤーって待ち受けアプリ作れるのかな?
オープンアプリプレイヤーってまさに【CLDC+MIDP】じゃなかった? MIDPに常駐させる仕様なんてないよ。 SE6でやっとシステムトレイ採用されたのに・・・
729 :
デフォルトの名無しさん :2007/02/26(月) 17:48:41
willcom SHARP W-ZERO3アプリを MIDP2.0でEClipseで開発しています。 HTTP通信する際、毎回Is it Ok to use airtime ?と聞いて くるのをなくすことは可能なのでしょうか? よろしくお願いします。
なぜWindowsでやらん…
731 :
デフォルトの名無しさん :2007/02/27(火) 18:18:54
オープンアプリを作っているものなんですが、
完成して
http://qwe.ne.jp/?s=appli にアップしたものはダウンロード出来たのですが、
自分のサイトにアップしたものはなぜか途中でエラーがでて
ダウンロードできません。
サーバーはapache で、.htaccess に
AddType text/vnd.sun.j2me.app-descriptor .jad
AddType application/Java-archive .jar
は記述してます。
732 :
デフォルトの名無しさん :2007/02/27(火) 18:26:52
>>732 ありがとうございます。
オープンアプリは勝手アプリが可能になっています。
734 :
デフォルトの名無しさん :2007/02/27(火) 18:46:23
>>735 私はau端末を持っていないので、協力者からの情報なのですが、
下記のようなエラーです。
-------------------------------------------------------------
auのダウンロードエラーのエラー番号が「403:4207エラー」です。
時間を空けてもダウンロードエラーが出てダウンロード不可な状態です。
-------------------------------------------------------------
ビジネスプロバイダ落ちてる? 実機実験しようと思ったのに・・・
jad読めて、jarのDLは完了してんの? 問題を分けんと面倒かも、 不正なjad jarがおかしい jarインストール時に何かあった 最低3つはある。 jar-sizeが一致してないのとjar-urlの場所にファイルを見つけられなかったはjadじゃなくてjarが悪いって言われるから jad間違えた時でも分かりづらい。 多分エラーコードは同じでもメッセージが実装依存だと思う。 403:4207って何?w 403ってHTTPステータスしか思い浮かばん。 ファイルちゃんとある? HTTPヘッダのcontent-lenghが0とか変な事なってない?
739 :
デフォルトの名無しさん :2007/02/27(火) 21:40:36
>>738 ありがとうございます。
アップローダでは正常にダウン出来ているようですから、
jad,jar の不正ではないとは思っています。
ユーザーからの連絡では
どうも jar の読み込み中にエラーになっているようです。
ファイルの位置や size には間違いはないと思われるのですが。
content-length は未チェックでした。
確認してまいります。
740 :
デフォルトの名無しさん :2007/02/27(火) 22:38:35
PCのブラウザのヘッダーを表示するツールで jad と jar のヘッダーを 見たところ、content-length 自体存在しませんでした。 しかし、 .htaccess の AddType text/vnd.sun.j2me.app-descriptor .jad AddType application/Java-archive .jar を削除したところ、content-length が正しく返されました。 まだ確認は出来ないのですが、上の2行を削ると、 ダウン出来ないように思われるのですが、やってみます。
741 :
デフォルトの名無しさん :2007/02/27(火) 22:45:09
自分では検証できないため、時間が掛かります。
742 :
731 :2007/02/27(火) 23:04:16
やはり駄目でした。
>>741 content-lengthが正しくないと処理できないダウンローダがあったり、
CGIで飛ばしてるとダウンローダが処理できなかったりする。
・・・がインストール中にエラーが出てるなら関係ないかも。
インストール時のユーザーへのメッセージとかはAMS依存だけど
大体は進行状況を知らせるスクリーンに変わって
インストール中...
crr個/max個中
とか
インストール中...
┣━━━━━━
て感じのGUIでエラー出たときには
エラー
エラーメッセージ
エラーコード
とか出て落ちるんだけどどのタイミングで落ちたかで大体分かる。
即落ちたならjadとjarの不整合による不正ですエラー。
ほとんどがjadの仕様に従っても端末側の実装都合で不正扱いだからそこらへん端末調べ直さないとどうしようもない。
744 :
743続き :2007/02/27(火) 23:19:22
jarのダウンロードとインストールの処理の見分けが付き難いから確実にどっちなのかをつかんで置く必要がある。
ガンバレ。
ところで聞きたいんだけどw-zero3って
Graphics#drawRGB(int[], int, int, int, int, int, int, boolean)
で描画した時αチャンネルフラグ無視して常に完全不透過になって・・・
Graphics#drawImage(Image, int, int, int)で描画した透過PNGのαチャンネルが何らかの敷居値より大きいか小さいかで完全に透過・不透過に分かれて
半透明じゃなくて色抜きしか出来ないんだが
この場合半透明にしたい場合自力で透過画像作るとき
色抜きor抜き無しの市松模様になった画像を作るしかない?
他の解決方法を探してるんだが誰か知らない?
これが(Graphics#drawRGB版)
ttp://www.uploda.org/uporg709613.jpg こうなる
http://www.uploda.org/uporg709618.jpg
745 :
731 :2007/02/27(火) 23:26:57
ありがとうございます。 もう少し頑張ってみます。
Graphics#drawRGB()の半透明描画は実装依存。 W-ZERO3では対応してないってことじゃないの?
αレベルが2が返ってくるんで2値透過しか出来なさそうなんだよ。 昔ながらの方法で良くか・・・色数も16bitっぽいし あーjarサイズが増える。thx!
748 :
デフォルトの名無しさん :2007/02/28(水) 07:52:51
ちょっとスレ違いな気がしますが、 携帯で動画をダウンロードする際には ダウンロードが完了してから再生し始めるんでしょうか? サーバー側で音声ファイルをいじくることによってストリーミングみたいにできないかと考えたのですが・・・・
749 :
デフォルトの名無しさん :2007/02/28(水) 23:51:34
携帯Javaの画面キャプチャーってどうやって撮ったらいいの? まさか、他の携帯で写す?
MIDP,JSCLで画像の拡大縮小描画はできないんでしょうか?
なあ、最近プログラミング出来ねぇ奴が的を射てない質問してないか? いや思い過ごしであってくれ
>>749 とにかく映りゃいいなら、TV出力そのまま録画しる
綺麗に取りたきゃオフスクリーンに描画してファイルに書き出す機能つけときゃいい。
>>750 com.j_phone.util.GraphicsUtil.drawRegion
オープンアプリ製作中なんだけど 実機で実行すると「エラーが発生しました(7F)」って 出るのだが、その7Fのエラーの意味を知りたいんですが au見てもエラーの一覧表ないんだけど、誰かわかりますか?
既に描画された画面上に、アイコンを点滅させたいのですが、 アイコンが"出る/消える"度に、 画面全体を再描画する、もしくは、 アイコンの出る場所に描画してた内容を保存しておいて、アイコンが消えたらそれを再描画する。 というのより、もっと上手いやり方はないでしょうか?
オープンアプリをつくってるんだけど、 jadファイルのMIDlet-1属性で指定するアイコンの画像サイズってどのくらい? 実際に試せばいいのだが、実機手元にないので。 16×16くらいかな?
誰にでもわかる携帯アプリ開発 みたいなタイプの糞本でもでたんじゃねーの?
>>754 >もっと上手いやり方はないでしょうか?
ないよ。重ねて描いたものの上面だけを消すって概念はない。
何でも上描きで。画面全体を消すのでさえ、背景色で塗るって考え。
>>756 アプリ★ゲットがオープンアプリのコンテストやってる。
そこで布留川氏がアプリ1本組むまでのごく簡単な解説記事を書いてる。
それ読んで作り始めて(案の定すぐに行き詰まって)、ここで質問
って流れがあるんじゃないかと思う。
759 :
754 :2007/03/04(日) 11:19:35
>>758 そんな都合のいい機能はないですか。
iアプリではアイコンが出る前のキャンバスのスクリーンショットをとって、
アイコンが消えたらそれを描画してるんですが、
MIDP/JSCLで画面に描画されてる内容を取得する方法ってありますでしょうか?
GraphicsUtilのgetPixelはImageのグラフィック限定だし、
ImageEncoderにDojaのようなスクリーンショットとる機能はないし、
なかなか見つからないのです。
>>759 createImageでオフスクリーン用Image作って
それに描画するようにすればいいんじゃね?
761 :
754 :2007/03/04(日) 15:03:16
それはちょっと考えました。 でも、それやると描画関係全部変えなきゃならんのですよ。 オフスクリーンバッファが二つになっちゃうし。 関係ないけどgetPixelって画面全体でやると、めちゃ時間かかりますね。
>>757 おおサンクス。
しかし小さく書いてあるな。気がつかなかった。
>>761 しかしまあ一度OSのVRAMに転送したものを書き換えるには新たに転送し直すしかない訳で・・・javaなら
>>761 オフスクリーンバッファ2つって大した事無いと思うけど
S!のMIDP2.0のセキュリティダイアログなのですが、 閉じられたタイミングをアプリから検出することは可能でしょうか? サスペンド同様にstartAppかと思ったのですが、どうも違うようで・・・
オープンアプリがUPできない・・
J2ME Wireless Toolkit をインストールしようとするとエラーがでてきます 1番最初exeクリック後のすぐの仮想マシンを検索していますで 「Java2SDKSEがこのマシン上の1にインストールされています」次へを押してこのSDKを利用するか 参照を押して他のSDKを指定してください」 インストール先のフォルダが「1」だけだったのでおかしいと思いつつも次へを押したらやっぱり無理でした これは今J2SDKSEがウィンドウズ直下にインストールされてるんですけど、そこの binフォルダを指定してやればいいんでしょうか? それともC:\Program Files\Java\jdk1.5.0_11\binあたりを指定やればいいんですか? Java2SDKはアンインストールした方がいいのかと思い、アンインストして J2ME Wireless Toolkit を入れなおしてもSDKアンインストしたにも関わらず 仮想マシンの検索で「」と同じエラーがまたでるんです、もぅどうしたらいいかわからんです 検索してみたんだけどJ2ME Wireless Toolkitのインストで迷う部分はないみたいで解決できませんでした
WTKはjdkのVM使おうとしてインストール時に位置を決め打ちするんだけど、その為にjdkのインストール位置を調べる。 だから事前にjdkがないとインストール出来ないかもしれない。 なんでtempフォルダからゴミ削除した上でjdkアンインスコ→インスコ→wtkインスコでダメならインストーラが壊れてるのかもしれない。 wtkのインストーラがどのようにjdk探してるか知らんけどjdkはパス通ってる?
769 :
767 :2007/03/05(月) 23:39:51
>>768 768に見習って多少略語使わせてもらいます
えっとjdk&sdk両方とも最初インスコしてました、それで768さんの指摘を見て
767の時はSDKだけアンインスコしたりして試してたのをjdkもアンインスコしてTEMPフォルダのゴミを消して
再起動して、その後、jdkインスコ、wtkのexeをクリックしたんですが767と同じ結果になりました
インスコ時の仮想マシン検索で「1」を見つけましたうんぬん
jdkのパスは通ってるって言うのは環境変数のPATHですか?
DOSでハローワールドのコンパイルと実行は出来ました
JDKはこのファイル名の23.3 MB (24,473,602 バイト)であってますか?
j2me_wireless_toolkit-2_2-ml-windows.exe
java sdkとjdkとwtkが混同してるから出直して来い。 あとwtkのインストーラが壊れてないのか?
>767 漏れもJDKとJREを勘違いされているのではないかと思った。 「プログラムの追加と削除」を開くとJDKとJREの両方が入っていますか? WTKのインストールで次へで進めなくても、参照でJDKの入っているディレクトリを教えてあげれば良いです、 javac.exeがどこにあるのか検索で探してみてください。
>>769 コンパイラ通せたのはコマンドラインからjavacが見えてたって事か?
まさかeclipseとかIDE付属のコンパイラじゃないだろうな?
コンパイラ通って実行も出来てんのにパスが環境変数の事か聞くのもおかしい。
Java Development Kit= jdk
J2SE Software Development Kit=java2sdk
上は旧名称で下がpure java騒動時の市場戦略による名称変更後の名前。
今は戻ったんだっけ?
アプリケーションの削除と変更見てJREを別に入れたなら両方ある、又はjdkのみある筈だから
どっちかでも欠けてたらコンパイル通して動いたのはおかしい。よく見てみ。
あと、wtk2.2はbugfixのパッチ出てるからちゃんと充てとけ。
あー、一応パス設定するときは自分のアカウントをadministerに昇格させて自分の環境変数のみにパス通した方が良いかもしれない。
開発用のインストール型オプションパッケージが他の環境で見えてたらマズイとかあるかもしれんし。
pathとclasspathを混同しないように・・・分からんならお勉強するしかない!
773 :
デフォルトの名無しさん :2007/03/06(火) 14:32:48
1(jdk-1_5_0_11-windows-i586-p.exe)
2(j2sdk-1_4_2_13-nb-5_0-win-ml.exe)
3(j2me_wireless_toolkit-2_2-ml-windows.exe)
の3つのファイルが現在あります、ちょっと
>>769 で混同した書き込みしたかな・・・
で1と2を最初インストールしてました、その後、3をインストールしようとすると
最初のエラー
>>767 のようになってしまってSDKをアンインストールしてみたりしてました
>>768 さんの指摘があったので1と2を両方アンインストールして1だけ入れて試したけど
結果は
>>769 のように2(SDK)が入ってないにも関わらず同じようなエラー(「1がうんぬん」)になりました
プログラムの追加と削除にはJDKとJREが入っています
pathとclasspathといえばclasspathがクイックタイムに書き換えられたせいで当初何度やってもエラーに
なってググッたのを思い出しました
パスが通ってる通ってないっていうのはどこのコトかわからなくて環境変数を思い出したんです
でもコマンドプロンプトからコンパイルも実行も出来てるから問題ない・・・よなって思って・・
>>771 さんの言うようにJDKの入ってるフォルダを指定して試してみます
ってjavac.exeを検索してみたんですが「見つかりません」になりました、なんで???
C:\Program Files\Java\jdk1.5.0_11\binにjavac.exeは入ってるんですが・・・
>773 う〜ん、それなら参照でC:\Program Files\Java\jdk1.5.0_11\を指定すれば良いだけの気がします。 もしダメならとりあえず全部アンインストールしてください。 次にNetbeans5.5をダウンロードしてインストールしてください。 実行するとWelcome画面にMobilityPackをインストールするリンクがでますのでそれを押してMobilityPackを入れてください。 これでWTKがNetbeansから使用できますので773さんにはこちらが向いていると思います。 Helpからマニュアルを読むことができます。 どうしてもWTKを単体で使いたい場合、まず全部アンインストールしてください。 次にデスクトップの「マイコンピュータ」を右クリックし、プロパティを選択し、詳細タブから環境変数を選びます。 環境変数のCLASSPATH, JAVA_HOMEがあったら消してください。 次に1だけ入れます。2はいりません。2は古いJDKと古いNetbeansです。 最後に3を入れます。 これでダメでしたら、実際のエラーメッセージを一文字残らずここに書き込んでみてください。 スクリーンショットをUpするとより問題がわかりやすいです。 どうもインストーラが本当にフォルダとして「1」の一文字だけを表示するのならば、レジストリ周りが壊れている機がするのですが。
775 :
767 :2007/03/06(火) 19:15:27
>>774 さん
ttp://www.geocities.co.jp/Playtown/5328/Yahoo/java.jpg 767の時点でのエラー画面です、ついさっきも出てたんですけど
javac.exeを検索しても見つからなかったけど、プログラムの処にはあるので
C:\Program Files\Java\jdk1.5.0_11を参照から選択して無事にインストール出来ました
いろいろと心配をかけてすみませんでした
WTK単体で使うつもりはなくて
eclipse-SDK-3.2.2-win32.zipとやらを落としています、まだこちらもこれからサイトを検索して
使い方を覚えていかないといけない処
javaコマンドのバージョンは1.5.0_11でおk? JAVA_HOMEの中身は1.5.0_11のインストールディレクトリでおk? 環境変数pathに%JAVA_HOME%\binはある? インストーラがぶっ壊れたか、何かが競合してインストーラがjdkのディレクトリ拾えてないか、レジストリ死んだか、何か勘違いしてるかのどれかしか思いつかん。 レジストリなら他に影響出る可能性もあるし、 java周りのみならjava関連のレジストリいじってる最中に殺ったんだろうけど。 犯人わかんね・・・DL時と、インストール時はアンチウイルス止めた? これやってない奴多いけど・・・ レジストリなら最悪、被害も、殺った時期も分かんないんでバックアップとってないならクリーンインスコかもね。
>>775 解決したのか・・・
しかもこりゃ単にwtkインスコ時に環境変数正しく設定してないだけだな。
wtkパッチ→eclipse言語パック→eclipseMEインスコ→eclipseME設定→エミュスキンインスコ→スキン設定→微調整・・・
まあ、またコケるだろう。Netbeansにしとけば楽なものを。頑張れ。
思い出した。jdkとjreのインストール位置が同じだとインストール時レジストリ見てVM検出するjava系IDEインストーラは発狂する。
MIDP 2.0のAPIリファレンスはどこにありますか?
自己解決しました。みません
781 :
731 :2007/03/08(木) 20:35:54
>>744 一応ダウンロードできるようになりましたので、報告します。
.htaccess から携帯IPオンリーの制限を外し、
先頭に
AddType text/vnd.sun.j2me.app-descriptor .jad
AddType application/Java-archive .jar
を記述することで、ダウン可能となりました。
>AddType text/vnd.sun.j2me.app-descriptor .jad >AddType application/Java-archive .jar 今までなかったって事!?
壮大な釣りってこと?
> .htaccess から携帯IPオンリーの制限を外し、
IPアドレスの指定が不十分で
ダウンロードしようとすると弾かれて
>>736 で言ってる 403 が返って来ると
785 :
784 :2007/03/09(金) 00:32:08
オープンアプリのダウンロードは brew.ne.jp からのアクセスって可能性のほうが高いか…
810SHでTextBoxを使った文字入力ができないのですが、 どなたか原因知ってたら教えてもらえませんか。 TextBoxの初期文字列は表示されるけど、キーが効かず入力できない状態です。 エミュレータ、703SHではできるのを確認しました。
787 :
781 :2007/03/10(土) 15:11:43
>>782 今までも記述してましたが、IP帯域制限の後に記述してました。
帯域制限をやめたので、先頭になったという意味です。
788 :
781 :2007/03/10(土) 15:15:02
IP帯域制限は最新のものを記述しておりました。 これは何度も確認していましたが、だめでした。
お教えいただきたいのですが、 MIDP2.0でメインフレームにはGameCanvasを使って ゲームを作っております。 そこで、文字入力のためのIMEを立ち上げたいのですが、 DoJaでいうimeOneのような機能が見つかりません。 どうにかしてFormを使用せずにIMEを立ち上げる方法はありますでしょうか? こういった場合の定石が分からず、、、
↑もし既出だったらすいません。
DoJaでいうimeOneのような機能は、MIDP-2.0の仕様にはない。 S!アプリのJSCLにならFEPControlというのがある。
>>792 そもそも存在しないのですね、、、
その後イロイロ調べてみまして、どうにか解決しました。
ありがとうございました。
jadの記述で質問。
(A) MIDlet-Jar-URL:
http://www.aaa.jp/MyAppli.jar のようにURLをしっかり記述するのが本当のところだと思うけど
(B) MIDlet-Jar-URL: MyAppli.jar
のような記述でもSアプリはDLできた。w-zero3はだめだった。
auのオープンアプリ端末は(B)のような記述でもDLできますかね?
サイト内の配置がまだ決まらなくて、その都度jad書き直すのが面倒なんで
できれば(B)の記述で統一したいと思ってるんだけど...
ダウンロードできない。
>>794 俺んとこでは(B)でいけた。
(jarとjadが同じディレクトリにあることは前提として。)
機種やサーバによって違ったりするんだろか。試したのはxreaとW51Sね
797 :
795 :2007/03/11(日) 17:47:30
まじか。W51CAとW51Hでだめだった。 一応公式にはhttpから書けとあるので、機種依存なのかも。
>>797 W51CAとW51SAでやったけど(B)のほうでできたよ。
ほかの要素がまちがってるんでない?
ごめ、ダウンロードのリンクの話かと思てた。 JADは相対パスだ
800 :
781 :2007/03/12(月) 00:34:09
が〜ん。今まで知りませんでした。 DoCoMoばかり作っていたので、auではアプリ専用のIP帯域があるとは 知りませんでした。 これで帯域制限を掛けられます。 ありがとうございました。
801 :
781 :2007/03/12(月) 00:35:33
802 :
794 :2007/03/12(月) 06:27:15
W51CA,H,SA,Sとも(B)で行けるってことで、確認してくれた方ありがとう。
あとIP帯域についてこんな話が。
ttp://k-tai.impress.co.jp/cda/article/interview/33103.html 「アプリを探すまではEZwebの通信です。
ダウンロードするときにBREWアプリであるオープンアプリプレイヤーに切り替わり、BREWアプリとして通信します。
オープンアプリが通信する場合、BREWアプリとして通信し、オープンアプリからEZwebを起動するとEZweb通信となります。
いずれも定額通信の対象です。」
DLリンクを記述したhtmlとjadとjarを同じディレクトリに置いたとしたら、
そこはEZweb通信とBREW通信両方のIP帯域を許可しておく必要がある、と。
とりあえず"IP帯域"は発見器にひっかかるので、止めたほうがいいす。
どっちにしても壮大な釣りだった訳で・・・
MEXAエミュレータでMIDP2.0のRecordStoreってうまく動きますか? 初回起動時は作成、セーブ、ロード全てできるんですが、一度アプリを終了させた状態で 再度実行すると必ずjava.lang.NullPointerExceptionが出てしまうのですが。。 結構調べまわったのですがイマイチはっきりした対処法がわかりません。 パーミッションの設定とかでしょうか? 助けて!エロイ人
>>805 RecordStore操作の辺りでエラーが出てることまでは分かったんだよね。
もっと具体的に、どの変数がnullになっちゃってるのか調べてみればいいよ。
処理の呼び出しの要所ごとに System.out.println() 入れて、
2回目に開始したときどの段階まで正常に動いてるのか調べる。
>>806 アドバイスありがとうございます。
JSCLのエミュレータなどでは正常に動いていたゲームのMEXA移植なので
エミュレータを疑ってあいまいな書き方になってしまいました。
@ rs.getRecord(id,ldat,0); の処理でExceptionでAのCatchされてます。
public static byte[] loadRSData(int id, int dsize){
RecordStore rs = null;
if(dsize <= 0) return null; // データの正当性チェック
byte[] ldat = new byte[dsize]; // データサイズ分読み出しバッファ生成
try{
rs = RecordStore.openRecordStore("gdata",true ); // Open & Create
System.out.println("DEBUG: RS Open&Create");
rs.getRecord(id,ldat,0); <= @
}catch (Exception e){
System.out.println("ERROR: RS読み込み"+ e.getMessage()); <=A
ldat = null;
}finally{ // 必ずクローズ処理を行うようにする
if(rs != null){
try{
rs.closeRecordStore();
//System.out.println("Close RS");
}catch (Exception e){}
}
}
return ldat;
}
MEXAエミュレータ上のコンソールメッセージは
DEBUG: RS Open&Create <@後
ERROR: RS読み込みnul <Aの流れです
もう少し調査してみます。
808 :
805 :2007/03/12(月) 23:31:48
レコードストアの件、自己解決しました。 エミュレータ上だけかもしれませんが、MIDP1.0とMIDP2.0で enumerateRecordsを利用した際のIDの自動割り当てがなぜか、再立ち上げ時に MIDP1.0版はID: 1 => 5とaddRecordでつけられた順番の通りに読込先IDを振っていたのに対し、 MIDP2.0版はID: 5 => 1 とIDの振り分け方の振る舞いが変わってしまっていました 以上、お騒がせしました
オープンアプリでも通信先鯖を3つ指定できますか?
制限ないよ ただ確認ダイアログがうざい
811 :
デフォルトの名無しさん :2007/03/17(土) 13:54:29
質問させてください。 以前作ったEZアプリをオープンアプリ版に移植してるところなんですが、 サウンドの再生で苦労しています。 今回のオープンアプリのために用意したwavのサウンドは、処理が重い部分で やたらと音割れするっていうか、音が途切れる感じになるんです。 元々wav形式というのは、プログラムの処理の仕方によって 音質が変化してしまうようなものなんでしょうか? wait()やThredのsleep()の使い方などからも影響を受けるんでしょうか? 以前EZアプリでspfのサウンドを再生するときには、 音割れなどは一切起こらなかったんですが…。 どなたかよろしくお願いします。
CPUが追いついてないかメモリが足らないだけじゃない?
サンプリングレートや量子化ビット数を落とせば改善すると思う。 当然音質は下がるが。 YAMAHAサイトにあるWAVE加工ツールで実験してみたら?
814 :
811 :2007/03/17(土) 23:37:38
みなさんアドバイスありがとうございます。 >>CPUが追いついてないかメモリが足らないだけじゃない? PCはCeleronの2Ghzにメモリ256MB、OSはWindowsXP、 製作中のアプリはWTK22のエミュレータでテストしてます。 スペック的に厳しいでしょうか? >>サンプリングレートや量子化ビット数を落とせば改善すると思う。 ありがとうございます。ちょっと調べていろいろ試してみます。
>>814 >PCは~
何かのボケかと思ったけどほんとにメモリが足りてないかもね。開発環境も実機も・・・
256MでWTK動く?
まあちょいと厳しい気が。XPでメモリ256MBでは、OS動かすのでやっとだろう。 512MB〜1GBぐらいまでメモリ上げた方が…。
話し聞いていると、実機で試したことないように聞こえなくもない
>>811 音の再生確認は実機でやらないとダメ。動作条件は実機とWTKで違います。
実機なら基本的にどれでも同じなので、ひとつの端末で確認すればOK。
>>818 世の中にはとんでもない例外が身近に居る・・・人、それを地雷と言う!
まあ、エミュなんてはっきり言って使いモンにならん。
エミュの速度をあてにする人初めて見た
誰もエミュ速度の話はしてないだろ
どう見たってエミュ動かすにはメモリ足りねー。とエミュの再現性はあてにならんから実機で試さないとだめって話だろ。 話の流れも読めんのか?
824 :
811 :2007/03/21(水) 07:52:45
812さんが言ってたのは、アプリが使用するメモリって意味だったんですね。 本気で間違えました。いやー、お恥ずかしい。 どっちにしても、自分のPCのスペックではエミュレータの動作も 怪しいようですし、なんとか実機テストしてみます。 自分も含め周りに誰も対応機種を持ってる人がいないのが難点ですが…。 新規だと1円とかで買える機種もあるようだし、 テスト用に1台買うのもいいかなーと思ってます。 みなさんありがとうございました。
最近DQNと釣りと天然が入り混じっててマジレスすると巻き添え食らうよな・・・ 地味に水面下でカオスってる もう宿題の季節か?
826 :
ハゲ :2007/03/22(木) 04:53:39
Google Docs & Spreadsheetsを利用してofficeアプリを作ることは可能ですか?
OAPの話なんだが、 アプリで現在時刻をカレンダーオブジェクトから取得してるんだけど、 機種ごとに挙動が異なる現象が出てて困ってる。 問題の機種はW51Sなんだけど、getTime()の時刻がめちゃくちゃ。 ちなみに同じアプリをW51CAとW51SAで動かすと、正しい時刻を取得できる。 これは機種の仕様か?
MEXAエミュって画面をVGAの設定にする方法ありますか?
>>827 CLDCの仕様上はベンダが仕様満たさないといけない部分なんだが実装側が仕様満たしてないだけ。
時計はVM自前なんでそれ以外取得できないから諦めろ。
結構知れた話でMEの時計アプリはあてにするなってのはお約束だぜ?
S!アプリにおいて、 着信イベント内でHTTP通信は可能なのでしょうか? 具体的には、着信があった際、Web経由で外部のDBにアクセスして 着信番号から情報を取得したいのですが・・・。
出来るかどうかは知らんが普通に考えてイベントハンドラ内でそんなクソ長い処理するもんじゃないよ? MIDPのイベントモデルはどうなってるか知らんがイベントディスパッチの一連の処理が何時まで経っても完了しなくなるような・・・ てか実際に出来たとしてもそのイベントハンドラの終了まで待ってくれるかは実機依存じゃない? てかちゃんと電話に出れるのそれ?
やり方は考えるとしてできなくはないんじゃない ただ情報取得の遅延とか実機依存とかいろいろありそうだけど
>>829 お約束なのか・・・知らなかった。
HTTP通信発生時の時刻をクライアントアプリで取得してログを取ろうとしたのだが、
サーバーから時刻を渡すことにしたよ。
MEXAエミュレータEclipseプラグインでビルドすると、 System.out.printlnで日本語が文字化けするんですが、 対処方法や原因を知ってたら教えてもらえませんか?
バッチにプリプロセッサ経由させたら行けない?
解決しました。 jadにMIDxlet-API書いてないせいでした。つまらないミスですいません。 MEXAエミュレータとEclipseプラグインなかなか使いやすいです。
>>837 auのオープンアプリで、どうやってsmafを鳴らすんだ?
>>833 突然狂ったりもするよ。
Opera miniなんかはそれでVMと鯖の時計がかけ離れてて通信に失敗する時があるみたい。
S!アプリってSIMカードのIDと端末のUID取得する方法ありますか?
JSCLのFEPControlにデフォルト入力文字を設定する方法ってないでしょうか? TextBoxならデフォルト設定できるのですが。
アプリをDLしようとする度に「不正なアプリです」と表示され DLできないことがあるという報告を受けました。 キャッシュをクリアしてからだと正常にDLできるようになるらしいのですが、 902、903、904辺りの端末で、初めてDLする端末でも頻繁に発生するようです。 先方曰く、 「一度DLした端末で同様の現象が起きてしまうことは他のアプリでもたまにある」 らしいのですが、自分はそういった経験はなかったです。 アプリゲットにアップしてDL確認したところ問題はありませんでした。 何か原因はわかりますでしょうか?
703SHf 905SH 911Tあたりで何度かそうなったことがある。 SoftBankに問い合わせたらキャッシュ、履歴を消してみろと言われて、 それで例外なくダウンロードできるようになったので、 キャッシュの空き不足だろうと思って、それ以上追求しなかった。
Playerクラスで曲と効果音を鳴らしてるんだが、 ごく希に、エンドレス設定の曲がピタッと止まったかと思うと 効果音が鳴るべき箇所でBGMの再生が始まったりするんだが 何かメモリを破壊するようなプログラムでも書いただろうか?
846 :
デフォルトの名無しさん :2007/03/31(土) 21:54:41
WindowsVistaでMEXA動かしてみたんだけどサウンドが鳴らない件 XPでは鳴ってたプロジェクトだから問題ないと思うが 同じような現象起きた人いる?
>844 先方がDLした所からこちらもDLし確認したのですが、 DLエラーとなることは一度もありませんでした。 キャッシュクリア、端末初期化などでDLできるようにはなるらしいので、 各端末の一時的な問題とし、解決させました。 情報ありがとうございました!
849 :
デフォルトの名無しさん :2007/04/03(火) 13:55:49
Sアプリから、910SHのボイスレコーダー機能を起動する方法はありますか? または、Sアプリで通話口から入力された音声を取得&保存する方法はありますか? (ボイスレコーダーを作ってしまう) ご教授ください。
最近携帯アプリ作り始めて思ったんだが、みんなは動作確認どうしてる? 確認機種が自分の携帯だけだと非常に不安なんだが・・・。 動作どうこうよりも速度的な違いとか。 わざわざアプゲとかにアップして 開発者がDL通信料を支払って実機デバッグってのは解せないが PCゲームよりはるかに簡単に作れるのではまるわ。
ソフトバンク向けなら、本業が暇だったら、職権乱用で検証センター使う。 ただ、どうしても、って時だけだが……。 動かないって報告が上がってきたら、 デバッグメッセージ追加して教えてもらう。
>>850 仕事でやってるなら、全機種そろえるか検証サービス使う。
趣味なら、友達探す。
>>851-852 サンクス。本職では携帯関係やってないから辛いな・・・。
周りの奴らはアプリ一切使わんようなau使いばかりだし。
今なら705Pで動けば大抵の機種は問題ないかとw
サムスンも?
Nも微妙に遅い
Tはアプリによって速いのと遅いのがある
とりあえずNKは腐ってる
SHが一番安定してる気がする
そうかなぁ 動かないアプリが多いのもSHだけどね
wtk2.51ea出たわね。
アーリーアダプタはちょっと遠慮したい
MEXAエミュレータでMotionDetectiveSensorを使ったことある人いませんでしょうか? 端末設定のMEXAオプションでMotionControlSensorをOnにして、 端末リソースフォルダにmotionsensor.csvがあるのも確認して、 いちおJadにMIDxlet-API: JSCL-1.3.2もいれたんですが、 getDefaultMotionDetectiveSensorでjava.io.IOException: not supported とでてしまいます。 分かる人いたらおしえてください。
865 :
864 :2007/04/13(金) 21:32:37
すいません、できました。 JadにMIDxlet-MSensorってのがありました。
866 :
デフォルトの名無しさん :2007/04/20(金) 03:22:40
MEXA Emulator Ver1.1.1でPhrasePlayerを使っている人いますか? 下のようなクラスを作って生成すると java.lang.NoClassDefFoundError と言われて怒られる。なぜ? import javax.microedition.lcdui.*; import com.jblend.media.smaf.phrase.AudioPhraseTrack; import com.jblend.media.smaf.phrase.Phrase; import com.jblend.media.smaf.phrase.PhrasePlayer; import com.jblend.media.smaf.phrase.PhraseTrack; //シンプルプレーヤー public class SimplePlayer { //コンストラクタ public SimplePlayer() { com.jblend.media.smaf.phrase.PhrasePlayer pp =com.jblend.media.smaf.phrase.PhrasePlayer.getPlayer(); //<<この行を入れるとエラーになる } }
PhrasePlayer pp = PhrasePlayer.getPlayer();
868 :
デフォルトの名無しさん :2007/04/20(金) 10:07:13
>867 はじめは PhrasePlayer pp = PhrasePlayer.getPlayer(); と書いていたのですが、java.lang.NoClassDefFoundError 出て。 ここの過去ログみていたら、フルパス書いたら良い、 というようなことが書いてあったのでフルパスで書いてみたけど やっぱり同じエラーが出るのですよ… だれかMEXAエミュでPhrasePlayer成功した人イマスカ?
MEXAエミュでPhrasePlayer使ってるけど、 import com.jblend.media.smaf.phrase.PhrasePlayer; PhrasePlayer pp = PhrasePlayer.getPlayer(); これでいけてる。開発環境が間違ってるんじゃね?
870 :
デフォルトの名無しさん :2007/04/20(金) 10:17:18
ソフトバンクで、 東芝機種だけSSL通信でサーバがエラーメッセージを返すのですけど、 心当たりあったら教えてもらえませんでしょうか。 東芝機種は全滅で、 SH、N、P、SCについては30機種くらい全て問題ないです。
なんで東芝機ってこんなにダメダメなの? フォントサイズも他メーカーと違いすぎるし
すみません、質問です。 現在アプリ開発中なのですが なぜかT端末だけフリーズします。 SHとかは普通に動くのに・・ 止まるタイミングは目視ですが stop() 直後に play() が呼ばれると 止まってる感じでした。 何方か御存知な方おりませんでしょうか_(._.)_
T端末は適当にThread.sleep入れないと止まっちゃう不思議ちゃん
874 :
870 :2007/04/20(金) 20:32:35
もう少し調べて分かったことを書きます。 SSL通信でリクエストメソッドがPOSTだとサーブレットでgetParameterがとれない。 ・HTTP通信は可能 ・リクエストメソッドGETならSSL通信も問題なし ・サーバのログを見るとHTTPのリクエストヘッダとの違いは、 "Transfer-Encoding"、"connection:close"がついてるとこ。 誰か知ってる人いたら教えてください。
875 :
デフォルトの名無しさん :2007/04/20(金) 20:40:47
>869 ふつうに動きますか、そうですか…。 開発環境か〜〜 JSCL 1.2.2で開発していた環境にただMEXAエミュ入れただけなんですけどね…。 同じ、ソースもMIPD1.0にプロファイル直すだけでJSCLエミュでは動くんですよね〜 あ゛〜さっぱりわかんね〜
>>875 オイラは
import com.j_phone.amuse.*;
PhrasePlayer pp = PhrasePlayer.getPlayer();
で使ってるけど、MEXAエミュで、ふつーに鳴る。
>>870-873 東芝端末は、他の端末と違う JVMを積んでるから、挙動が違うのは仕方なしです。
878 :
866 875 :2007/04/21(土) 06:13:29
半日かけて真っ新なPCを用意して ・Java14.2-14 ・JSCL統合版エミュ ・MEXA1.1エミュ だけインストールしたのですが、結果は同じでした。 モレはEclipse使っていないのだが、Eclipse使わないとだめ?
確か902以降のT機種のVMはSunのだからなぁ・・・ 他と同じでJBlendにしとけばいいのに
JITだっけ? レジューム後に変な挙動したことがある。 通常1回しか通らない処理をなぜか2回されて大変だった。
もう東芝は非対応でいいよ
882 :
870 :2007/04/21(土) 11:46:48
>>878 866コピペしてみたけど、できたよ。
jadに「MIDxlet-API: JSCL-1.2.2」書いてる?
>>880 「再開」ボタン押したときのキーリリースを拾ってる可能性が。
883 :
デフォルトの名無しさん :2007/04/21(土) 14:22:14
911shのエミュをeclipseで使いたいのですが、911sh用のエミュってありますか?
884 :
870 :2007/04/21(土) 14:38:38
>>883 911SHの仕様書見て、MEXAエミュレータを同じ設定にすればいい。
MEXAエミュレータはそういうもの。
911SHは仕様書にメモリ4MBって書いてるけど、
実際は確か3MBしか使えんから注意。
885 :
866 875 878 :2007/04/21(土) 23:42:40
>882 遅レスすみません。 できました! おっしゃるとおり MIDxlet-API: JSCL-1.2.2 を書いてませんでした!! 助かりました!
886 :
デフォルトの名無しさん :2007/04/22(日) 03:09:28
883 >ありがとうございました!! やってみます!
887 :
デフォルトの名無しさん :2007/04/22(日) 03:33:44
沖縄県の方へ(命に関わる注意事項です) 沖縄県での選挙ですが、どうか民主党だけは避けてください。県民の生命に関わる可能性があります。 民主党の最大の公約は一国二制度(※)ですが、一度「一国二制度 沖縄 三千万」等で検索をお願いします。 この際、民主党のHPで調べても良いです。以下の注釈↓と矛盾することは書いてないはずですから… ※一国二制度 簡単に言えば沖縄を中国と日本の共有物にし、そこに3000万人の中国人を入植させます。 (つまり沖縄人口の 96% を中国人にして、実質、沖縄を中国人の居住地とします。) さらに「自主」の名の下、沖縄で有事が起きても自衛隊は干渉できません。 3000万人の中国人が、少数派となった130万人の日本人に何をしても、です。 そして反日教育を受けた中国人の反日感情の強さは、ほとんどの日本人の理解を超えるものです。 今回の選挙で民主党が勝った場合、「自主」「発展」を連呼しつつ段階的に進めていくことになります。 自主と言っても、自主を認めるのが「住人の96%が中国人となった」後だということに気をつけてください。 発展と言っても、新沖縄の少数派となった「少数民族日本人」の発展ではないことに気をつけてください。
888 :
デフォルトの名無しさん :2007/04/23(月) 03:06:57
質問です。mexa でブルートゥースを使ったプログラムを動かしたいのですが、どうすればよいのでしょうか? ヘルプを参照してimpront simulator を使うことは判ったのですが、肝心のその使い方がヘルプを参照してみてもよくわかりません。 ご存知の方がいらっしゃいましたらご教授お願いいたします。
人が作ったの見たらエミュふたつ起動して親子関係作ってた。 作った人も色んな資料見ないとわかんねーつってたのでがんがれ。
890 :
デフォルトの名無しさん :2007/04/23(月) 23:51:30
>889 わかったらこの板にやりかた書きます!! 他のやり方でもなんでもいいのでmexaに限らずbluetoothを動かせるエミュがあれば教えていただけるとうれしいです。
891 :
デフォルトの名無しさん :2007/05/01(火) 16:33:34
メール添付容量制限やダウンロード制限から逃れるために、 ファイルを分割・結合するアプリを作ってくれないかな?
>〜するアプリを作ってくれないかな? 寝言は氏んでから言え
質問です。 Imageクラスに1000×1000くらいのPNG(256色)を読み込ませると エミュは問題ないのに実機では画像が空の状態で展開されてしまいます。 更に大きいサイズを読み込ませようとするとフリーズします。 freeMemoryのリアルタイム監視でメモリ残量に問題がないことは確認済みですが、 画像サイズの違いでこのようなことが起きる理由がわかりません。 何かわかる方いらっしゃいますか?
それはSoftBank SH機のバグ 4413-111-Appli_HI_MIDP2.0_4_1.1.0.pdfとかに書いてある。 >drawImageの様な低レベルグラフィックスの描画において、メモリ不足が発生してもExceptionを返さない。
つーか組み込み向けで1000*1000*8の画像を置くってすげー図太い神経してるな。 PCゲーのテクスチャとしてもエロゲ以外は無駄だな。 SB@SHたん「そんな大きな画像入れちゃらめ────!! 壊れてエラー投げられない〜〜っ…」 ってなってんだろ。 というかバックバッファの最大サイズは実画面サイズまでという糞機種もあってだな・・・。
>>894 すみません、T機3Gです。
ガイドの端末情報には書いていませんがdraw側の線が強そうですね。
もう少し調べてみます。ありがとうございました。
>>895 RPGのテクスチャデータとその他全てを1枚にまとめたものです。
本当は分類別に分けていたのですが(そちらは失敗せず描画される)、複数開いたPNGの総サイズが
「ある容量」を超えると、同一画像同士では速いけど別画像同士のイメージをdrawすると描画が重くなる
という現象が起きて、それで試験的に一枚にしてみました(他にImageインスタンスは無し)。
少ないテクスチャで画像サイズが大凡XY800以下の場合は期待した通り速くなって描画もされるのですが
どうもテクスチャを減らすしかないかもしれませんね。
897 :
デフォルトの名無しさん :2007/05/08(火) 10:10:40
midp2.0でlayerを継承したいんだけど、コンストラクタで super(int,int) にアクセスできなくて弾かれるんですがどうにかできないでしょうか? やりたい事はspriteのpaintメソッドをオーバーライドしたいだけなんですが、 spriteを継承してもpaintはfinalなのでlayer側からラップしようとしたのですが 上の状態で行き詰まってしまって
898 :
デフォルトの名無しさん :2007/05/08(火) 15:03:55
Formを使ってアプリを作成しています。 StringItem等にフォーカスがあたったとき、 周りに点線がつくだけで、わかりづらいのですが、 フォーカスがあたったときの描画を指定できる方法はありますか? よろしくお願いします。
そういう設計です。諦めてください。 ていうか、MEの描画周りは実装依存強いからjava側で再定義されたら困るだろ。
900 :
899 :2007/05/08(火) 15:15:24
>>897 layerのコンストラクタなんか無いように見えるけどあるのかな?
>>898 formはひたすら置くだけだろう。文字入力以外ならカスタムいて無作るとか。
>>901 package-privateのコンスタラクタが定義されてる。
あのjavadocはprotected以上だから文書化されてないだけ。
phoneMEのソースコード読めば設計意図が読み取れる。
>>902 Sunのサンプル実装はそうなってるみたいだけど、
MIDPにおけるシステムクラスって実装によらず全部同一ってこと?
>>903 それはベンダの実装次第じゃない?
文書で明文化されてないって事は仕様上は
アプリケーションプログラマが外から関与するなって意味でしょ?
とすると、アプリケーションプログラマが外から関与出来なければブラックボックス部分はどうなってようと良いわけだから。
実際は日本市場のVMはSunの商用ライセンス版java MEのソース使ってるのって少数派だから
むしろ、SunのRIと同じ動作をする方が異端だし。
java MEとしてはjavaで実装して抽象化はしてるけど
ベンダが真似するかはベンダの都合だよ。
>>904 だよなぁ。まぁどちらにしろそういうことだ
>>897 実はひょっこりnativeメソッドになっていたりする可能性とかあるのだろうか?
in-device verification&optimizationはこっちからは分からないかなぁ。
ところでProguard4.0b3ktkr
>>905 ベンダ実装の描画周りはほとんどOSの描画API直呼びっぽいけど。
RIだと非公開APIに依頼しまくって極力nativeの差をなくそうとしてるけど、
ベンダは描画周りをネイティブ実装して"Javaコード呼び出しのオーバーヘッドを減らして高速化"
してる部分を謳い文句にしてる所があるくらい。
はたまた、インタプリタ高速化技術に力を入れて早くしてる所もあるから
そりゃ、APIの見た目以上の互換性はないよね。
でも、javaのコーヒーカップ付けてやがる・・・。互換テストってどのレベルの互換やら。
それより、MIDP3.0は本当にCLDCで動く
ハードをサポートする気あるのかと。
システム要求(スマートフォン〜PDA程度のスペック)が今の日本の携帯ですらきつ過ぎる。
(海外はスマートフォンが普及してるから逆にry)
897です。大変参考になりました。。 たいした事をやろうと思ってたわけでもないので、無難に諦めます。
みんなに質問。BGMや効果音の再生に何を使ってる? やっぱPhrasePlayerが多いのだろうか。
912 :
デフォルトの名無しさん :2007/05/11(金) 16:06:16
>>911 spfを使ってるよ。
mmfは、最近ではほとんど使わない。
P5やP6の開発をまだやっているので、midやwavも使わない
913 :
デフォルトの名無しさん :2007/05/11(金) 20:04:29
依存症的に不安ではなく、何か突然の連絡があった ときに受けられない不安はある
>>912 サンクス、やっぱりそうか。
3G開発でmid/wavの方が楽(Player)ってのはあったんだが
まだちょっと不安があるのでPhrasePlayerにしとこう。
>>909 どこかで見たスライド?ではCLDCもカバーするつもりのようではあるっぽいが・・・
>>908 >>910 FX Mobileってのは携帯キャリア・メーカ向けのFX実行環境っぽいな
>>914 そういう不安がない漏れにとって携帯はゲーム機
>>916 利用者向けAPIで、環境の違いをラップする予定みたいだな。
うまく行けばうれしいね。プログラミングスタイルもJavaから引き継げる部分が多いし。
すいません。 MIDletを継承していないクラスで、 destroyApp()とnotifyDestroyed()を実行して 明示的にMIDletを終了したいのですがどうしたらいいですか?
その「MIDletを継承していないクラス」から 「MIDletを継承したクラス」に記述したnotifyDestroyed()を呼び出せばいいだけ。 「MIDletを継承していないクラス」に「MIDletを継承したクラス」のインスタンスを あらかじめ渡しておくとかすればいい。
921 :
919 :2007/05/12(土) 14:41:29
>>920 お返事ありがとうございます。
MIDletを継承したクラスがメインのクラスに当たるわけなんですが、
そこのメインのコンストラクタで、キャンバスのクラスをインスタンス化して、
そのキャンバスのクラス内で明示的に終了させたいのです・・・。
メインをインスタンス化するとコンストラクタが実行されて・・。
もしかするとMIDletを継承したクラスをメイン以外にも作成しても大丈夫ということですか?
んー頭こんがらがってきました。
すいません><
>>921 ↓考え方の例。
public class MyAppli extends MIDlet
{
private MyCanvas cv;
public MyAppli(){ //コンストラクタ
cv = new MyCanvas();
}
public void startApp(){
cv.app = this;
}
}
public class MyCanvas extends Canvas
{
public MyAppli app; //MIDletの派生クラス(アプリの本体)を保持する変数
public MyCanvas (){ //コンストラクタ
}
private void finish(){ //アプリを終わらせるメソッド
app.notifyDestroyed();
}
}
変数を public にするのは美しくない。 --------------------------------------------------------------------------------------- /* * @brief メイン側 */ public class MyAppli extends MIDlet { private MyCanvas cv; public MyAppli(){ //コンストラクタ cv = new MyCanvas(this); Display.setCurrent(cv); } public void startApp(){ } public void doExit(){ notifyDestroyed(); } }
つづき /* * @brief キャンバス側 */ public class MyCanvas extends Canvas { private MyAppli app; //MIDletの派生クラス(アプリの本体)を保持する変数 public MyCanvas (MyAppli app){ //コンストラクタ this.app = app; } } --------------------------------------------------------------------------------------- これでCanvas側は app.doExit(); を呼び出せばどこからでも終了できる。
925 :
919 :2007/05/12(土) 18:34:59
>>922 ありがとうございます!
インスタンス化しないで変数として使用すればいいわけですね!・・><
いいあー非常に勉強になりました。
ありがとうございました><
キャンバスのコンストラクタの方でメインのクラスを引数にする方法 感動しました。。
>インスタンス化しないで変数として使用すればいいわけですね! わけわからんことを。。。 MIDletを継承したクラスのインスタンスを使ってるからインスタンス化はされている。
まぁーなんとなく言いたいことは分からないことはないが。
まぁ、
>>920 - GJ!
超初心者です。 今アプリゲットの開発講座を見ながらJ2MEのtoolkitでイメージの描写を やってるのですが、解説にのってあるpngではなく自分で用意したpngを 使用すると、パッケージのところで 「アプリケーション記述子のJARサイズが実際のJARファイルサイズと一致しません」 と出るんですが。どこをいぢればいいか教えてください。
アプリケーション記述子のJARサイズをいぢる
>>929 jarサイズが変わる度にjadファイルのMIDlet-Jar-Sizeを書き換える。
その様子だとこの先10分ごとにあれこれ聞きまくることになりそうだぞ。
詳しい書籍なりでケータイアプリの基礎知識を先に覚えた方がよいのでは。
超初心者がアプリゲットの開発講座だけ読んで1本組めるほど甘くない。
ビルド押したらエラーが24個、もうね・・・
せめて3桁は行ってくれと
MIDPもそろそろ終了だな
ちょっと質問だが、再起メソッド使える? 何も処理しない再起1回のトラップですらぬるぽになるんだが。
すまん935だが自己解決。MEXA再起動したら動いた。
布留川英一のMIDP2,0携帯javaアプリの本って、いろんなゲームの ソースとかものってますかね?
939 :
デフォルトの名無しさん :2007/05/15(火) 17:00:54
>>77 ものすごい遅レスなのだが、
>>SecurityException が出てしまいます
Trusted MIDletにしないとダメみたいだね。
CAから認証って、個人で取ったシト居る?
キャンバスの切り替えって機種依存なんですかね?
>>939 自分も知りたいです。
国内だと、存在証明とかで会社登記が必要(=法人格じゃないと駄目)な感じがするんですが、
どうなんでしょう?
そこでアプリゲッツ!!ですよ。 チャンネルは糞なので間違わないよーに
>>939 >>941 GPS信号をS!アプリで受け取る様にするのって法人じゃないと無理ですか?個人でアプリゲットに揚げて認証にしてもナビアプリ設定不可になるんですよ
944 :
デフォルトの名無しさん :2007/05/17(木) 17:12:05
【MIDPの問題点】 みなさん、お世話になります。 CLDC1.1とMIDP2.0の日本語文書って存在しないですね。 皆さんどうされていますでしょうか? 英語が得意の開発者だったら問題ないのですが。 SUNやJAVAのサイトを捜しまわったのですが、見つかりません。 プロの方々はどうされていらっしゃいますか。 どなたかお助けください。よろしくお願いいたします。
英語は苦手だけど(中学レベル) 今は翻訳サイトがあるから特に問題なし
中学レベルの英語わかれば、海外生活でもなんも問題なし。
英語得意じゃなくてもあれくらいならなんとか(´・ω・`)
英語ドキュメントしかなければそれを読む。 辞書もあれば99%は理解できる。 翻訳ソフトや翻訳サイトは使わない。
みなさん、レスありがとうございます。 実際に開発をされてる方々ですね!ありがとうございます。 MIDPの新人教育なんかは、「これぐらいの英語、嫁!」で 終わりなのでしょうか^^; どうやら有料の出版物でも日本語API説明書は存在しませんね。 みなさんでしたら、こんなことこだわらないのでしょうね。
うん。 あれくらいの英語は嫁。 がんばれ。
新人: 先輩、MIDP-2.0のドキュメント、日本語版ないんですか? 949: いまどき子供でも START, RESET, CONTINUE くらい読めるんだぞ。 俺たちが英文ドキュメントを読めなくてどうする! 新人教育物語 〜完〜 英文といっても小説ではなく説明書なわけだから簡潔に書かれてるはずだし、 知ってる専門用語が多ければむしろ理解しやすいこともある。 書いてあることの大部分はAPIの使い方と注意点くらいなんだし。 中学レベルの俺の英語力でも読めるよ。
とりあえず MIDP1.0 のレベルでつくればいいじゃない。
ゆとり世代の中学英語は日常会話までやらんのか? 中学英語は聞いてりゃ日常会話が分かるように出来てんのに。 あーいや、それは無いか。年々英語教育が強化されてんだから。 てか、技術文書なんて専門用語と決まりきった定形句ばかりだからすぐ分かるだろ。 小説を読もうと思ったら言い回しが難しいから高校レベルまで要るけど。 実際に読んでたらその内何書いてあるか分かるようになるぞ。 英文のライセンス書ならともかく、まずは嫁!
MIDP1.0日本語と2.0英語を一緒に見ると(・∀・)イイYO!
>>953 いつの方?
中学英語じゃ辞書を片手に手紙をかけるくらいで日常会話なんてむりだぞ
中二病な方だったらごめんなさい
>>955 中学英語の文法で、あとは専門の用語さえひければ、相当の範囲が大丈夫だと思うが。
というか、英語圏のやつと会話すればわかるが、中学英語を使いこなすのはかなり難しいぞ。
で、やつらが使ってるのは、ほとんどは中学英語の範囲だ。
仕様書やマニュアルなら辞書だけでだいたいはわかるよ 技術文献とかでも翻訳かければだいたいわかる ほとんどが簡潔に書いてあるからね 逆説や注釈付だったりするとはまるけどw 会話になると中学英語でも通じるけど 方言というかスラングのせいか相手が何言ってるかさっぱりわかんない まあ身振り手振りでなんとかなったけど
会話は中学の勉強だけじゃ無理だわ 実際に話しながら勉強してかないと、慣れが必要
ALT:りめんばー ぱーるはーばー! 俺:りめんばー じ あらも! いや、中学校の英語の時間に真珠湾という単語が出てきてですね・・・ てか、中学校の時はアメリカ育ちのアメリカ人だったが、高校になったらオーストラリア生まれのイギリス育ちでイギリス英語だった訳だが・・・
オフトゥン:しばしば
英語で盛り上がっているところ誠に申し訳ありませんが、 Eclipseで開発しているのですが、 レコードストアをやっておりまして、保存しているデータを削除するにはどうしたらいいですか? deleteRecordStoreとかじゃなくて物理的に消したいのです。
>>961 ファイル保存してるディレクトリの上あたりにあるのを消すのかな。
$ rm /opt/sun-j2me-bin-2.5.1_pre1/appdb/DefaultColorPhone/run_by_class_storage_#YOUR_APPLICATION.db
EZアプリ(Java)ってGPS機能にはアクセスできないのかな
966 :
961 :2007/05/22(火) 16:28:33
300KBって少なすぎだよなぁ〜・・・あーぁー なめてんのかな
スペースインベーダーの37倍以上の大容量ではないか。
969 :
デフォルトの名無しさん :2007/05/22(火) 18:17:23
どなたか、HTSからM3Gへ3次元立体データの変換している人 いますか?モデリングに使える無償ツールは存在しませんよね。 調べど、調べど、ありゃしない。 でもね、おもしろそうなんだよね。MIDPで3D。
べつに驚くことか? 今のゲームがほとんどリソースに食ってるだけだ。ブルドラなんて30Gあって8割がモデルデータらしいぞ。 300kBもあったらファミコンかPC88程度のゲームならまんま移植できるだろ。
なつかしのゲームを移植できないだろうか。
騒音たてるやつマジ死ね 生活音だろうが気を使え。 共同生活したことないのか。
誤爆スマソorz
すいません。質問です。 String型のものを、getByte("SHIFT_JIS")して、 それを toString()したものや、valueOfStringをやっても元のString型に戻らないのですが・・・何故か記号の羅列になっているんです。 どうすればいいですかね? String str = "1192"; byte[] unko = str.getByte("SHIFT_JIS"); System.out.println(String.valueOfString(unko)); ↓ 1192が表示されない!
すいません。表記ミスしました。 getBytes でした。 しかも String.valueOf(unko) でした。 お願いします><
何度もすいません。自己解決しました。 Stringのコンストラクタに文字コードを指定するのを発見したときにピンときました。 スレを汚してしまい本当に申し訳ありませんでした。
>>969 モデリングならメタセコイアでもなんでも作ってやればいい
アニメーションまでやりたいならBlenderでできる
979 :
デフォルトの名無しさん :2007/05/23(水) 03:20:00
アトポス死ね
981 :
975 :2007/05/23(水) 19:27:39
>>980 残念ながらぶち当たってないですけどね^^;
>981 そこで「ぶちぁたりました><;」とか書ければ 萌キャラに一歩近づけたのに。
くだらね
MIDP2.0は、POSTできますか?
すいません質問です。 Commandをリスナーに追加するときに、というか ソフトキーのヤツの表示位置の制御方法を教えてください。 実機にいれたところ、 右ソフトキーの位置にコマンドを表示させたいのに、 左ソフトキーの位置にしか表示できません。。 エミュレータと実機での表示位置は明らかにおかしいのは分かってます。 分かりにくい日本語ですいません。 宜しくお願いします。
エミュだとpropertiesの中の command.keys.BACK = SOFT1 command.keys.EXIT = SOFT1 command.keys.CANCEL = SOFT1 command.keys.STOP = SOFT1 command.keys.OK = SOFT2 command.keys.SCREEN = SOFT2 command.keys.ITEM = SOFT2 command.keys.HELP = SOFT2 できまるが、かぶった場合何がどういう根拠で優先されるかとかはよく知らね。 一般的には優先度が高いのからできるだけ1回で押せるように配置されるらしいけど
アプレットは動作しませんが??
そこでCDCの登場だよ。ジェシー!
>>986 ありがとうございます。
実機の場合だと機種依存になるのですかね???
オープンアプリを作っているのですけど、
オープンアプリプレイヤー事態は同じだと思うから大丈夫ですかね?
私はW51CAしかもっていないので調べれないのですが・・
オープンアプリのソフトキーは全ての端末で同じ。 WTKのデバイスファイルの下記の部分を書き換えれば実機と同じになる。 command.keys.XXX の部分を SOFT1 にぜんぶ書き換える。 command.exclusive.SOFT1 をコメントアウト command.menu.activate をコメントアウト
ということはSOFT2のみに表示させることは不可能なのか。
■サーバ設定 Webページを配置するサーバ側にていくつかのヘッダ情報を必須で返却する必要があります。 返却されない場合、インストールエラーとなります。 サーバ側の設定方法に関しましてはご利用のサーバ管理者へお問い合わせ下さい。 とありますが、いくつかのヘッダ情報とはなんでしょう? MIMEタイプをhtaccessで設定するだけでは無理なのでしょうか?
ソフトキーのラベル位置は実装依存。
仕様では決まってない。
>>995 キャリア依存でそれだけじゃ分からんわけだが。
そもそも、なんのドキュメントだ?
997 :
995 :2007/05/24(木) 20:52:51
1000ならオープンアプリコンテスト優勝ゲット
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。