5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

CLDC+MIDP+携帯電話用Javaスレッド part 6

1 :デフォルトの名無しさん:2006/08/10(木) 10:48:34
J2ME CLDC+MIDPベースの携帯電話用Java(主にEZアプリ、Vアプリ)に関するスレッドです。
質問でも議論でも何でもこい、と。質問は公式資料をよく読んでからにしましょう。

前スレ:
CLDC+MIDP+携帯電話用Javaスレッド part 5
http://pc8.2ch.net/test/read.cgi/tech/1132493827

過去スレ
携帯JAVAのスレッド
http://pc2.2ch.net/test/read.cgi/tech/1011977260/(DAT落ち)
CLDC+MIDP+携帯電話用Javaスレッド part 2
http://pc5.2ch.net/test/read.cgi/tech/1070858996/
CLDC+MIDP+携帯電話用Javaスレッド part 3
http://pc5.2ch.net/test/read.cgi/tech/1091798483/
CLDC+MIDP+携帯電話用Javaスレッド part 4
http://pc8.2ch.net/test/read.cgi/tech/1108781476/

--
Java一般に関しては:
【初心者】Java質問・相談スレッド88【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1153834996

NTT DoCoMoのiモード携帯電話用Java(iアプリ)については:
iモード携帯電話用Java(iアプリ) Part12
http://pc8.2ch.net/test/read.cgi/tech/1154336955

>>2-5あたりにリンク集

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){}

この処理のせいでフリーズしていたようです。
フォントサイズが戻ってしまう対処策はみなさんどうしていますか?

580 :デフォルトの名無しさん:2007/02/07(水) 20:45:28
>>579
Fontの取得自体も描画のたびにするべき。
ガイドラインか何かに書いてあったと思うけど・・・

581 :デフォルトの名無しさん:2007/02/07(水) 21:22:27
制限:
. Canvasを継承するクラスでCanvas#paint(){}及びCanvas#paint()から呼び出
すメソッドを実装する際に Graphics#setFont()を使用する場合には、
Graphics#setFont()に与える引数は Canvas#paint(){}のスコープ外で定義し
た変数を与えること。例えば、Canvas(を継承するクラス)のインスタンス変
数やスタティック変数として定義した変数を Graphics#setFont()の引数に与
えること。

582 :デフォルトの名無しさん:2007/02/07(水) 23:56:15
複数トラックで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 :デフォルトの名無しさん:2007/02/08(木) 10:39:02
>>584
MEXAエミュレータ使えばいんだよ。

586 :デフォルトの名無しさん:2007/02/08(木) 10:43:53
>>585
勉強不足で申し訳ありませんでした。

因みに
JDK 1.5
J2ME Wireless Toolkit 2.2

だけでも開発→実機で動かす事出来るでしょうか?
何度も申し訳ないです。

587 :デフォルトの名無しさん:2007/02/08(木) 10:46:17
>>586
JSCL、MEXAの機能を使用しないのであれば可能です。


588 :デフォルトの名無しさん:2007/02/08(木) 11:01:53
>>587
なるほど

MEXAエミュレータをインストールして自分で作ったプログラムを試したら出来ました。

早速、アプリゲットの作者登録してきます。
4日くらい掛かるそうですが・・
これでやっと4日後実機テストできます。

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

589 :デフォルトの名無しさん:2007/02/08(木) 12:20:10
>>582
複数トラックのシンクロ再生をしてると、復帰時にスレーブトラックを
再開してくれない移動機がある。
そーいう実装なので諦めて >> 583


590 :574:2007/02/08(木) 13:25:12
>>580,581
ガイドラインにサンプルソースまで載っていますね。
調べ不足ですみません。
ありがとうございました。

591 :デフォルトの名無しさん:2007/02/08(木) 16:20:29
>>583
>>589
レスありがとうございます。
583さんの方法は分かるのですが、
他のアプリで復帰しているものがあって
どうやってるんだ???と調べたものの結果わからずです。
でも、端末にもよるんですね。
なんか悔しいです。

592 :デフォルトの名無しさん:2007/02/09(金) 12:07:32
>>591
setSubjectTo使わなきゃ、普通に中断点から復帰するだろ?
更に言えば、使ってても一部の機種以外は復帰する。

「Phrase再生終了直後、アプリを一時停止・再開した場合、Phraseを正常に再開することが出来ない。
アプリ一時停止時は必ず Phraseを停止(stop)・再開(play)を実施する必. 要がある。 」

なんて注釈打ってある機種もあるぐらいだから、実装としては>>583が正しいわけだが。
それとも機種判別して処理分けるか?

593 :デフォルトの名無しさん:2007/02/09(金) 15:26:25
S!アプリSDK更新来た。

MEXA用プラグインも来てた!

594 :デフォルトの名無しさん:2007/02/09(金) 16:06:42
MEXAエミュは相変わらずCPU使用率が鬼ですね。
ヒープがおかしいバグは直ったようですが

595 :デフォルトの名無しさん:2007/02/09(金) 16:34:20
あー、S!アプリプラグインの設定でエミュのパスが無効になる。
どうすりゃいいんだorz

惜しいが、やっぱりProguard&プリプロセスが使えない分、
EclipseMEの使い勝手には及ばんなぁ。


596 :デフォルトの名無しさん:2007/02/09(金) 16:43:56
でも前までの奴にくらべて起動とか早くね?

597 :デフォルトの名無しさん:2007/02/09(金) 23:31:16
eclipseのMEXAプラグイン使ってみたけど
実行できない件。なんかインストールエラーになる

しかも構成および実行の部分でプロジェクトの選択で以前消したプロジェクトがずっとのこってて
それの影響で切り替えらないし

マジつかえねぇwwwwww

598 :デフォルトの名無しさん:2007/02/10(土) 10:30:19
eclipseMEの質問はここでおk?
eclipseMEでWTKのエミュレータ使ってデバグ・実行しようとすると
VMと接続できないってエラーが出てつまずいてんだけど、何処の設定見直せばいい?

WTK単体での動作は問題なく、
EclipseMEでのデバグ・実行以外は問題なく出来てんだけど・・・。
ヒントくれー


599 :デフォルトの名無しさん:2007/02/11(日) 02:27:55
JSCL1.2.2SDKのエミュレータにサスペンド機能があるんですが、
pause()が呼ばれても処理が止まりません。
そういうものなんでしょうか?

600 :デフォルトの名無しさん:2007/02/11(日) 10:25:46
pauseApp()

601 :デフォルトの名無しさん:2007/02/11(日) 15:18:50
すっぽーず

602 :デフォルトの名無しさん:2007/02/11(日) 16:04:05
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ではジェネリックって使えないのでしょうか?



604 :デフォルトの名無しさん:2007/02/12(月) 10:57:29
自分でJ2MEって書いてるじゃねぇか。

605 :デフォルトの名無しさん:2007/02/12(月) 11:30:04
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のバージョンが古い限り最新仕様は使えないのか。

あー振り出しに戻った・・・


607 :デフォルトの名無しさん:2007/02/12(月) 16:30:28
>>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の仕様を知らないので良く分からないけど。

609 :デフォルトの名無しさん:2007/02/12(月) 19:03:07
超初心者なのですが、MEXAの設定されている外部メモリ用フォルダ
にデータを入れて、読み込もうとしてるのですが、
java.lang.SecurityException:
com.j_phone.io.Connector.StorageConnection.read was denied
と出て止まってしまいます。
実際に端末上に落としてみると動くので、MEXAの設定なのかと思っ
ているのですがそれっぽい設定をUnit1+Unit2以外発見できません。
どうするとMEXAでも確認できるでしょうか?


610 :デフォルトの名無しさん:2007/02/12(月) 19:28:00
>609
MIDlet-Vendorを「Aplix」にしてみ。

611 :デフォルトの名無しさん:2007/02/12(月) 19:52:39
>>610
ありがとうございます。
jadとMANIFEST.MFをMIDlet-Vendor: Aplixとしてみたところ
残念ながら変わりませんでした。
直すところがそもそも違うでしょうか??







612 :デフォルトの名無しさん:2007/02/12(月) 20:26:12
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」がない

これくらいしか思いつかない。

614 :デフォルトの名無しさん:2007/02/12(月) 20:40:20
>>612

> 1.Canvasクラスを継承した場合、paint()メソッドを必ずオーバーライドしないとダメ、とモノの本に書いてあったのですが、
> ttp://appget.com/contest/au2007/lecture/lesson4.html
> では、paint()メソッドがオーバーライドされていないっぽいんです。どういうことなんでしょうか?
URL先のサイトで継承しているのはCanvasクラスではなくGameCanvasクラスだから。


> 2.キー入力の処理を、keyPressed()メソッドとkeyReleased()メソッドで処理しているんですが、
これらのキー押し/離しは、順番通りに来るとは限らないんでしょうか?
普通順番どおりに来るんじゃないの?


> 3.MIDP2.0の日本語リファレンスって、存在しないんでしょうか?
見たことないねぇ。
基本はMIDP1.0と同じだし、なくても問題ないでしょ。


615 :デフォルトの名無しさん:2007/02/12(月) 21:15:11
>>614
凄まじくわかりやすい回答、ありがとうございます!

2については、エミュで順番通りに入ってこないことがあるようで…。
実機ではいまのところ順番通りに入ってきてるんですが、
レアケースで、そういうこともありえるのかなと…。

チラシ裏ですが…
プログラマじゃないんですが、ゲーム作りは一応プロでして、
100万(先のURLのところ)目指して頑張ります。では。

616 :デフォルトの名無しさん:2007/02/12(月) 21:33:53
>プログラマじゃないんですが、ゲーム作りは一応プロ……
なるほど、プログラマを顎で使う方ですか。

617 :デフォルトの名無しさん:2007/02/12(月) 22:28:25
>>614
できました!!
 「常にTrusted(3rd Party Domain)でインストール」を選択
 でいけました。
 ありがとうございます!! 

618 :デフォルトの名無しさん:2007/02/14(水) 15:22:25
wireless toolkitの通信確認がいちいちでるんですけど
これ消せないですか?

619 :デフォルトの名無しさん:2007/02/14(水) 16:27:33
実機でも出るのでしょうがない。


620 :デフォルトの名無しさん:2007/02/15(木) 17:01:20
Sアプリでhttp通信をしてpng画像(実際はpngを結合したdatファイル)を取得すると、
データサイズが少し減ってるんですが、原因知ってる人いたら教えてもらえませんか?

ちなみにエミュレータなら正常に取得できます。
png以外のデータ(jpg、gif、txtをdatにしたもの)でも実機で正常取得できます。

621 :デフォルトの名無しさん:2007/02/15(木) 17:24:04
>>620
Content-Typeを image/gif にしておけばOK。

622 :デフォルトの名無しさん:2007/02/15(木) 17:50:11
ありがとうございます!非常に助かります!

しかし、pngなのになんで"image/gif"にするんですか?
リクエストプロパティがよく分からないので、
よければもう少し説明お願いします。

623 :デフォルトの名無しさん:2007/02/15(木) 18:00:52
>>622
リクエストプロパティじゃなくてサーバの返すレスポンスヘッダのコンテントタイプ。

application/x-java-archive や image/gif などソフトバンクのゲートウェイが
既知のバイナリ形式のものにしておかないと、
テキスト扱いされて間で変造されてしまいますよ、ということ。


624 :デフォルトの名無しさん:2007/02/15(木) 20:35:59
ありがとうございます。
サーバの方で設定しないといけないのですね。

625 :デフォルトの名無しさん:2007/02/16(金) 14:26:03
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){}
}

626 :デフォルトの名無しさん:2007/02/16(金) 14:26:48
【メイン計算(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;
}

627 :デフォルトの名無しさん:2007/02/16(金) 14:28:20
【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アプリのほうを作ったのが別の会社で、自分が見た限り凄い妙な作りになっていますが…
お手数ですが見ていただければと思います。

628 :デフォルトの名無しさん:2007/02/16(金) 14:30:48
それと、別のゲームにて、ダウンロードすると「不正なアプリです」と出てDLが出来ないという問題が発生しています。
MIDlet-Nameの文字数や、MIDlet-Descriptionの文字数はクリアしています。

考えられるのが、MIDlet-Descriptionに半角スペースが入ってることぐらいなのですが、
入っているとDL出来ないなどということはあるのでしょうか?

629 :デフォルトの名無しさん:2007/02/16(金) 14:35:12
>>628
検証して報告よろしく

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

631 :デフォルトの名無しさん:2007/02/16(金) 14:48:30
MIDxlet-API: JSCL-1.2.2
MicroEdition-Configuration: CLDC-1.1
MicroEdition-Profile: MIDP-2.0

が対象機種で対応しているか確認すべし。

632 :デフォルトの名無しさん:2007/02/16(金) 14:55:02
>>625
> V804N,V804SS,706SCなどで起動もせず落ちるのですが、コンストラクタ等でミスっているのでしょうか。
この機種以外では動いてるということ?

633 :デフォルトの名無しさん:2007/02/16(金) 14:55:17
もれもそこだと思う

その辺の機種は未対応の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

発生報告のある機種の技術資料の個別仕様と制限を見比べてみましたが、
引っかかるような部分はありませんでした。

自分が↑に書いた起動しない〜という機種も一緒に調べましたが同様…

636 :デフォルトの名無しさん:2007/02/16(金) 15:26:14
>>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

が正しいのではない?


637 :デフォルトの名無しさん:2007/02/16(金) 15:31:11
もし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リファレンスを見たほうが早いかも。

644 :デフォルトの名無しさん:2007/02/16(金) 15:55:40
MIDP-2.0なら標準でdrawRegion()使えるね。

645 :デフォルトの名無しさん:2007/02/16(金) 15:57:53
import定義はどうなってる?


646 :デフォルトの名無しさん:2007/02/16(金) 15:58:09
>>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;

649 :デフォルトの名無しさん:2007/02/16(金) 16:03:11
>>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;

こうなっています。

651 :デフォルトの名無しさん:2007/02/16(金) 16:11:34
MediaPlayerは何に使ってる?
PhrasePlayerと競合するぞ。

652 :デフォルトの名無しさん:2007/02/16(金) 16:12:03
canvasをスレッドにすれば動いたりして?

日本全国(´ー`)スッドレ( ´ー` )禁止(  ´ー`  )

653 :デフォルトの名無しさん:2007/02/16(金) 16:13:54
もし、MEXA Unit2が原因で落ちているのであれば
MEXAエミュレータのUnit2のチェックをはずした場合
落ちるんじゃないかな?

654 :デフォルトの名無しさん:2007/02/16(金) 16:28:20
うーん、わかんね

>>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!のエミュレータ使っていかないと正確にはできないですかね?

657 :デフォルトの名無しさん:2007/02/16(金) 16:40:08
今のは「プロジェクト」−「端末設定」−「MEXAオプション」


658 :デフォルトの名無しさん:2007/02/16(金) 16:43:28
>>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

663 :デフォルトの名無しさん:2007/02/16(金) 17:20:46
>>659
俺なんて256メガだぞ

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

666 :デフォルトの名無しさん:2007/02/16(金) 17:47:38
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以外の↑の機種

報告が来ているのはこんな感じです。

670 :デフォルトの名無しさん:2007/02/16(金) 18:10:21
なんかMIDletのコンストラクタが完了する前に色々やってるみたいだけど、
startApp()かメインスレッドの開始時に処理するようにしてみたら?

ていうかエミュつかってたらわかるか……。

671 :デフォルトの名無しさん:2007/02/16(金) 18:14:02
>>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

674 :デフォルトの名無しさん:2007/02/16(金) 18:24:48
MIDletのコンストラクタ(=MIDletクラスの名前)はNoだよな?

MIDlet-1: Reversi_sb,icon.png,Revers

……。

675 :625:2007/02/16(金) 18:30:43
>>674
ちょっと待ってください。それ別の(起動しないほう)話です orz

ReversiのほうはDLできないって奴です。
さすがにそこ間違うとエミュレーターでも起動できませんので…

676 :デフォルトの名無しさん:2007/02/16(金) 18:40:15
あれじゃね、Jadの文字エンコーディングと端末の対応エンコーディングの一致と
一つのテキストファイルに別の文字コード混在とか。

あとはJadの特定位置に特定の文字が来るとインストール失敗する端末なかったけ?

端末AMSからインストール成功しないんでしょ?

677 :デフォルトの名無しさん:2007/02/16(金) 18:40:15
>>675
そうだったか。すまない。

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の必須属性

212 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)