English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية 
携帯電話向けソフトウェア開発J2ME
(2002)
Colin Fahey
moto_t720_open_lightanddark02.jpg
Motorola T720携帯電話、オープン示す

1. 警告

この文書は時代遅れです!  このドキュメントの情報が有効かもしれないと、今年2002のに役立つが、その後の数年間で多くのことが変わった!  この文書は現在、今年だけ2002の興味深い歴史的な記録と見なされている必要があります。  このドキュメントのすべての情報や助言に依存してはいけない。  このドキュメント内のすべての技術的な情報は非常に時代遅れです。 

自己をダウンロードされたソフトウェアは、自己作成が作成した画像を、自己の電話警告メロディー(すなわち、着信音「作成」 ) 、比較的珍しいものだったと難しい年2002 。  悲しいことに、六年後、一部の携帯電話サービスプロバイダ( Appleは、 iPhoneのための独占的なソフトウェアや「着信音」のポータルを提供しています)は、ソフトウェア、画像をダウンロードするには、制限を課すと音楽、携帯電話サービスプロバイダのため非常に大きな財政的利益を享受を含むこれらのタイプのダウンロードを制御する。 

幸いなことに、これらのソフトウェアプラットフォームを備えてAndroid 「など」の「携帯」電話、永遠に企業の能力を作成し、利用する携帯電話のような使用のため休場市場を終了します。  ただし、消費者に喜んでは、ソフトウェア、画像をダウンロードすることは非常に高いコスト、および音楽含まれて携帯電話のサービスプランを購入、この携帯電話サービスのオプションの限られた数のためには入手可能です。 

は、市場を支配するようになるには、消費者の強い暗黙の承認として解釈されるべきではありません特定の企業が有効になっている経済力学。  企業を支配し、開始するのは困難または不可能なため競合他社の市場に参入することは、独占企業の製品は、高負の値で(例えば、どこからでも通信する能力)の高い正の値を組み合わせて提供することができます(例:高価格望ましいソフトウェア、画像、および音楽、 それ以外のすべてが自由に利用できるようになるため、サービス)の負の値が追加されます。  いいえ、消費者が携帯電話を購入することに疑いはないが、強制的には、支配の携帯電話サービスプロバイダー徐々には、自由市場と見なされることができない条件を「作成しています。」  そのため、携帯電話サービス市場が経済的にも「非効率的な」している消費者に過度の負担をされています。 

うまくいけば、要件は、携帯電話サービスの無線周波数の競合サービスには、携帯電話サービスプロバイダー、再びこのようなデータの単なるキャリア(すなわち、のみ)ではなく、エンターテイメント情報や帯域幅を提供するプロバイダが減少してデータの転送は、通常の市場価値を回復させて利用できるように! 

データを運ぶのは、ビジネスデータ販売のビジネスから、それ以外の交通機関は、同じデータを競合他社の販売チャンネルを通じてデータブロックにデータを輸送事業のためのインセンティブになる分離する必要があります。 

ビデオゲーム市場コンソールは、同じ問題に苦しんでいる。  ビデオゲームのハードウェアメーカーは、ビデオゲームコンソールを表示することができますデバイスを作成する事業では、これらの企業も同じだが、それらのビデオゲームへのソフトウェアの転送の排他制御しているコンソール。  したがって、ビデオゲームのメーカーは、ビデオゲーム用のソフトウェアを販売する競合他社をブロックするためのインセンティブコンソールされている。  場合は、ビデオゲームとは、利益(損失の代わりに重要で製造販売されている可能性があるハードウェアの設計に焦点を当て、 X-BoxとPlayStationとNintendoビデオゲームコンソール)して、ビデオゲーム市場として成長すると、ハードウェアの製造元コンソール最高のビデオゲームの質を劇的には、ビデオゲームの崩壊とコストを向上させるだろう。 

2. トピックインデックス

(1)
J2ME開発ツール
(2)
シンプルなJ2MEプログラム
(3)
複雑なプログラムJ2ME
(4)
Sun 「ワイヤレスツールキット」
(5)
インターネットのサイトでソフトウェアを提供
(6)
インターネットのサイトからソフトウェアをダウンロード
(7)
ダウンロードのエラーメッセージとインストールエラーメッセージ
(8)
を作成し、提供し、 「着信音」をダウンロードする
(9)
を作成し、提供し、画像をダウンロードする
(10)
AT&T携帯電話の構成設定は、ネットワーク( )
(11)
他の携帯電話のリソースへのリンク
(12)
J2ME対BREW

3. J2ME開発ツール

このセクションで説明する方法でクラスファイルをモバイルデバイスに適してJ2MEソースコードをコンパイルするために使用できる開発ツールをダウンロードしてください。  Sun J2ME 「Wireless Toolkit」は、 「この」資料の後のセクションで説明は、このセクションで説明Java SDKをダウンロードする必要があります。 

3.1 JDK 1.4 (またはそれ以降)

これにより、従来のSunからJava 2 SDK必要があることを意味します。  私をダウンロードし、以下のリンクからバージョン1.4使用:
http://java.sun.com/j2se/1.4/download.html
ここには、ダウンロードページがどのようなことに見えます。 :
java2sdk_download_page.jpg
は、インストールプログラムを起動します。  が発生する場合がある場合を除き、パスの問題を解決することができます( c:\j2sdk1.4.0_03 )のデフォルトの場所にインストールしてください。 

3.2 Connected Limited Device Configuration (CLDC)

私はこの何であるかを知っているふりをすることはできませんが、私は単純にSunのWebサイトからダウンロードした。
http://wwws.sun.com/software/communitysource/j2me/cldc/download.html
ここには、 WebページをダウンロードしてCLDCメインのようです:
cldc_download_page.jpg
1.0.3私を訪れた時にのみ利用可能でした。
そのために、私SunのWebサイトに登録するために必要な、このダウンロードしてください。  私は以下のプロファイルを作成:
Username:        anon***anon
Password:        nospamplease
Favorite color:  blue
Full name:       Prof. Anon Nospamplease
私は以下のファイルをダウンロード:
j2me_cldc-1_0_3-fcs-src-b17-winunix-14_sep_2001.zip
私は以下のディレクトリに解凍:
C:\j2me
私は単純に「cldc-1_0_3-fcs」ディレクトリの名前を変更:
cldc (すなわち、 c:\j2me\cldcのフルパスです)

3.3 Mobile Information Device Profile (MIDP)

私はこのどちらかが何であるかを知っているふりをすることはできませんが、私は単純にSunのWebサイトからダウンロードした。
http://java.sun.com/products/midp/
ここでダウンロードMIDPメインのWebページがどのようなことに見えます:
midp_download_page.jpg
私は以下のファイルをダウンロード:
j2me_midp-1_0_3-fcs-src-b26-win-19_sep_2001.zip
私は以下のディレクトリに解凍:
C:\j2me
私は単純に「midp-1_0_3-fcs」ディレクトリの名前を変更:
midp (すなわち、 c:\j2me\midpのフルパスです)

3.4 ツールの設定

3.4.1 パスを確立

あなたのAUTOEXEC.BATファイルに次の行を追加します:
REM ---- Java Support ----
SET MIDP_HOME=C:\j2me\midp
SET PATH=%PATH%;c:\j2sdk1.4.0_03\BIN;
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\j2sdk1.4.0_03\BIN;C:\j2me\midp\bin;%PATH%
次に、これらの変数は、バッチファイルを実行して、再読み込みさを強制する:
cmd_prompt_autoexec_bat.jpg
c:\>  autoexec.bat
また、これらの変数と同じ変数を使用してコントロールパネルのWindows環境を設定することができます。

通知Java 2 SDK私は私の現在のバージョンに明示的なディレクトリパスを指定することを選んだ。  したがって、もし私のアップグレード、それから私は、新しいディレクトリを指定するAUTOEXEC.BATファイルを変更する必要があります。 

3.4.2 Jave 2 SDKバイナリを確認してください

一度、上記の設定を有効にする場合は、コマンドプロンプトからJavaツールのプログラムを実行するためのツールプログラムの完全なパスを指定せずにプロンプトをできるようになります。 

は、次のコマンドは、携帯電話端末エミュレータが開始されます: 
cmd_prompt_midp.jpg
c:\>  midp
以下の画像は、携帯電話端末エミュレータが表示されます: 
java_midp_launch.jpg

4. シンプルなJ2MEプログラム

4.1 Javaコードを書く

このHelloMIDlet.javaファイルのソースコードなどのコード内の任意のテキストエディタは、人を入力すると、使用:
file_image_hellomidlet_java.jpg
ここにプレーンテキスト形式のコードです:
// File: HelloMIDlet.java
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class  HelloMIDlet
extends       MIDlet
implements    CommandListener
{
    private Command exitCommand;
    private Display display;
    private TextBox t = null;

    public HelloMIDlet()
    {
        display = Display.getDisplay( this );
        exitCommand = new Command( "Exit", Command.EXIT, 2 );
        t = new TextBox
        (
            "Hello MIDlet",
            "Test string",
            256, 0
        );
        t.addCommand( exitCommand );
        t.setCommandListener( this );
    }

    public void startApp()
    {
        display.setCurrent( t );
    }

    public void pauseApp()
    {
    }

    public void destroyApp( boolean unconditional )
    {
    }

    public void commandAction( Command c, Displayable s )
    {
        if (c == exitCommand)
        {
            destroyApp( false );
            notifyDestroyed();
        }
    }
}

4.2 *.classにコンパイル*.javaコード

cd  c:\HelloMIDlet
注意:以下のコマンドを1行にする必要がありますが、複数行のテキストを明確にのみ展開されています。
(カレントディレクトリ: C:\HelloMIDlet )
javac
    -target 1.1
    -d .\
    -bootclasspath c:\j2me\midp\classes
    HelloMIDlet.java
cmd_prompt_javac.jpg
注: 「-target 1.1」段階は、将来のエラープリベリファイを回避するために「必要」です。  どうやらこのJDK 1.4でMIDP 1.0.3サポートに問題とは何かをしている。 

4.3 プリベリファイ新しい*.classファイルを生成するために

cmd_prompt_preverify.jpg
(カレントディレクトリ: C:\HelloMIDlet )
preverify  -classpath  c:\j2me\midp\classes;.  HelloMIDlet
これは新しい「output」サブディレクトリ(デフォルトでは)と呼ばれる*.classに新しいファイルを生成します。

4.4 テストでは、新しいファイル*.class

cmd_prompt_midp_midlet.jpg
(カレントディレクトリ: C:\HelloMIDlet )
midp  -classpath  c:\j2me\midp\classes;.\output  HelloMIDlet
これは、新しい「output」ディレクトリに必要ないくつかのファイルが含まれて示します*.class電話エミュレータを起動します。
以下の画像は、期待どおりの結果を示しています。
java_midp_hellomidlet.jpg

4.5 は、新しいテキストファイルを作成し、ファイルを編集「manifest.mf」

の「manifest.mf」ファイルを*.jarファイルの内容を解釈するための実際の携帯電話を得るために不可欠です。  もし適切な「manifest.mf」ファイルは、ファイル*.jarし、携帯電話が正常に*.jarファイルをダウンロード可能性があります内に含まれていませんが、ダウンロードしたファイルを解釈することは、おそらく「Unsupported Content Type」のようなエラー報告が失敗する可能性があります。 
以下は、単純な「manifest.mf」ファイルの例です。
file_image_manifest_mf.jpg
ここにプレーンテキストとして「manifest.mf」ファイルです: 
MIDlet-1: My_Description,, HelloMIDlet
MIDlet-Name: My_Midlet_Suite
MIDlet-Vendor: Colin Fahey, Inc.
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
通知は、 CLDCとMIDPのバージョンは、このファイルで指定されています。  非常に慎重になると保守的では、このファイルを編集するときは、様々な分野。  場合は、この例で表示されていないすべてのフィールドを排除してください「File Corrupt」エラーを発生します。  また、それらの例で表示されている順序でフィールドを入れた。  あなたとしては、単純な文字の文字、数字、期間に限定することができますまた、各フィールドの値を短縮し、ダッシュ。  一部の携帯電話サービス、携帯電話、フィールドとフィールドの内容をご注文の変動を容認することができます。 
注意: 

時「jar」プログラム、および*.jarファイルを作成するには、 「manifest.mf」ファイルは、マニフェストファイルとして指定されて使用されると、 「jar」プログラムとは、マニフェストファイルを読み取りとしては、 出力ファイル*.jar内のファイルが作成されます「MANIFEST.MF」と呼ばれる複数のフィールドを追加する可能性があります。  そのため、 「MANIFEST.MF」ファイルを*.jarファイルから抽出され、 「manifest.mf」して、元の「MANIFEST.MF」で*.jar 、 2つのファイルが異なることかもしれないが、 「manifest.mf」の作成中に、元のファイルよりも、いくつかのフィールドを含むファイルを指定されたファイルと比較している。 

一*.jarファイルと新しい試みは、マニフェストファイルを使用してファイルを*.jarフォームに「MANIFEST.MF」からファイルを抽出してはいけない。  もし、これらの例に示す以外のすべてのフィールドを除去するために必ず一*.jarファイルからファイルを抽出「MANIFEST.MF」上記のファイル「manifest.mf」 。 
注記:

明らかにMotorola T720電話でプログラムのアイコンが表示されません。  このため、私は私のMIDletのアイコンと説明していないです。  ただし、次の方法のプログラムのマニフェストファイル内のアイコンを設定する方法を示します: 

MIDlet-1: My_Description, /icon.png, HelloMIDlet 

ときに、そのアプリケーションのためのアイコンを表示する携帯電話は、アイコンのファイル名を指定するため、開発途上国との間でのファイルのファイル名、ファイル名を指定して*.jarアイコン画像は、ファイル自体をファイルに追加する*.jarファイルに追加されます。 

4.6 「manifest.mf」ファイルとは、 *.classで*.jarファイルにファイルを入れて

は、次のコマンドを*.jarファイルを作成します。  *.jarファイルは、指定されたファイルが含まれてmanifest.mfする*.classが含まれては、指定したディレクトリにあるファイルです。
cmd_prompt_jar.jpg
現在のディレクトリ: C:\HelloMIDlet
jar  cfm  hi.jar  manifest.mf  -C .\output  HelloMIDlet.class
*.jarファイルを作成するのは複雑な仮定の例
アイコンを画像ファイル(例えば、 「icon.png」 )と仮定「/icon.png」として*.jarファイルに表示されるようにしています。  (注:プログラムのアイコンがMotorola T720携帯電話では表示されないように、他の携帯電話の種類に表示されるか、そしてMIDPエミュレータで表示されるよ。 ) 

仮定があるディレクトリ「images」画像ファイル( *.png形式)と呼ばれています。  は、このディレクトリと仮定し、すべての画像は、ディレクトリに格納され、 Javaプログラムへの相対ディレクトリ/imagesでアクセスする必要があります(つまり、画像「a.png」のパス「/images/a.png」を使用してアクセスできるようになる)など。 

すべての*.classの仮定のpreverifyコマンドによって「verified」という名前のディレクトリに含まれているファイルを生成します。  たとえば、メインクラスの検証バージョン、 「MyApp.class」は、 「verified」のフォルダになることに加え、プログラムの他のクラスに。  これらのクラスの*.jarされているすべてのファイルのルートディレクトリにアクセスできるようにする。 

次のコマンドは、さまざまな目的は、前の項で指定を実現する*.jarファイルが作成されます。  注意:このコマンドを明確にのみ複数行のテキストをここに拡大されています。  ときは、コマンドプロンプトでコマンドを入力、次のコマンドを改行を含めることはできません;それ以外の場合は、複数の独立したコマンドインタープリタのコマンドを入力したテキストとして解釈されます。 

jar
    cfmv             [Create JAR, Specify JAR Name, Add manifest.mf, Verbose]
    MyApp.jar        [Name of output JAR file]
    manifest.mf      [The manifest.mf file]
    icon.png         [Optional icon, specified by JAD as "/icon.png"]
    images           [Directory to add to JAR as "/images"]
    -C .\verified .
コマンドの最後の部分を理解することは困難です。  これは、次のような意味があります:  「.\verifiedし、すべての*.classには、現在の作業ディレクトリを変更して、相対ディレクトリ'.'では、現在の作業ディレクトリ(すなわちすべての*.classファイル)は、 *.jarファイルに検索されたファイル。」  これは、ディレクトリには、 *.jarファイルに格納するには、クラスのパスを指定する前に変更されていたが、ローカルパスは、相対パスでは、ファイル内のファイルに置かれている*.jar表示されません。 

たとえば、検証クラスを想定は、次のディレクトリには: 

C:\MyApp\verified 

クラスファイルは、以下のような存在だと仮定すると: 

C:\MyApp\verified\w.class 

次に、コマンドでファイルを作成する*.jar 、 「C:\MyApp」の現在のディレクトリから開始し、 「w.class」の*.jarファイルのルートディレクトリに入っていたことになるの「-C .\verified .」を指定します。 < /メール>

「-C」オプションが指定されているときに警告:には、 jarコマンドをコマンドパラメータの全体のシーケンス処理のその時点では、現在の作業ディレクトリを変更します。  そのため、他のファイルjarコマンドは、コマンドパラメータの言及を見つけることができません「-C」オプションを超えて訴える可能性があります。  この場合は、単純に全体のコマンドの最後のパラメータをする「-C .\verified .」移動します。 

以下は、 jarコマンドの詳細出力を示しています。 
added manifest
adding: icon.png(in = 449) (out= 454)(deflated -1%)
adding: images/(in = 0) (out= 0)(stored 0%)
adding: images/a.png(in = 2463) (out= 2223)(deflated 9%)
adding: images/b.png(in = 1322) (out= 579)(deflated 56%)
adding: images/c.png(in = 3433) (out= 2874)(deflated 16%)
adding: images/d.png(in = 1524) (out= 801)(deflated 47%)
adding: w.class(in = 2570) (out= 1356)(deflated 47%)
adding: MyApplication.class(in = 4714) (out= 2169)(deflated 53%)
adding: x.class(in = 3239) (out= 1429)(deflated 55%)
adding: y.class(in = 14205) (out= 6481)(deflated 54%)
adding: z.class(in = 9448) (out= 5135)(deflated 45%)

4.7 を作成し、新しいファイルを編集*.jad

*.jadファイルのように携帯電話をした人にその人の前にコンピュータプログラムを記述する必要があるプログラムをダウンロードして決定する。  この*.jadファイル自体も*.jarからいくつかの間接を提供します。 
file_image_hi_jad.jpg
例*.jadファイル、 *.jarファイルを記述する
ここにテキスト形式の例をhi.jadファイルです:
MIDlet-1: My_Description,, HelloMIDlet
MIDlet-Jar-Size: 1283
MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar
MIDlet-Name: My_Midlet_Suite
MIDlet-Vendor: Colin Fahey, Inc.
MIDlet-Version: 1.0
(とそのサイズを変更)が変更されるには、 *.jadファイルを生成することができますが簡単に「MIDlet-Jar-Size:」フィールドたびに*.jarファイルを更新することがプログラムされています。  プログラムを検索する場合に便利J2MEするインターネット検索してください。 

サイズフィールドの場合、次のエラーは、携帯電話にダウンロードした後は正常に表示される可能性があります: 「Download Failed」 (ダウンロードに失敗しました) *.jarファイルの正確なバイトの合計を指定していません。 

のMotorola T720携帯電話については、次のエラーメッセージが生成された*.jarファイル内のファイルMANIFEST.MF : 「Failed: File Corrupt」で*.jadファイル、または無効なフィールドに無効なフィールドがinidcate (失敗しました:使用されるかもしれないが壊れ)ファイルを作成します。 
注:もし*.jarファイルは、インターネットのWebサーバー上の対応する*.jadファイルと同じディレクトリにある、その*.jadファイルは単に、完全なURLを指定せずには、以下の例のように、 *.jarファイルのファイル名を示すことができます: 

MIDlet-Jar-URL: hi.jar 

ApacheときにインターネットのWebサーバーからのMotorola T720携帯電話にこれらのファイルをダウンロードし、それは完全なURL含まれていないに受け入れている。  *.jarしない限り、ファイルへのフルパスは、 URLファイル内で指定されている*.jadしかし、インターネットのWebサーバーからのYahoo!一Motorola T720携帯電話に失敗するには、以下の例のように、これらのファイルをダウンロードしようとする試みをダウンロード: 

MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar 

私はこの問題の理由は分からない、と私は、この問題が他の携帯電話(または携帯電話サービスプロバイダ)には影響しません知っている。  ため、別の場所には、サーバー上のすべてのファイルの情報が変更*.jad必要と*.jadファイル内のファイルを移動する場合には、 *.jarファイルのフルURLを指定することは明らかに、不便です。  しかし、完全なURLを指定して、 *.jad特定の携帯電話や、特定の携帯電話サービスプロバイダの信頼性の高いものになるかもしれない。 

4.8 テストでは、プログラムを実行して、 *.jarファイルとファイル*.jad

以下は、クラスを実行する*.jarファイルには、 *.jadファイルで記述を見つけた。 
cmd_prompt_midp_jar_jad.jpg
(カレントディレクトリ: C:\HelloMIDlet )
midp  -classpath c:\j2me\midp\classes;.\hi.jar  -descriptor hi.jad

4.9 リファレンスJ2ME 、 MIDP 、 CLDC開発のための

あまり私がここで提示の多くは他のインターネットサイトで見つけることができます。  しかし、私は、いくつかのエラーが他のインターネットサイトに発見修正し、行方不明の詳細を追加し、これをものにしようとしているかの完全な経験を提示した。  ここは私を開始する手助けは非常に有益なリンクになっています: 
http://wireless.java.sun.com/midp/articles/getstart
http://wireless.java.sun.com/midp/articles/setup

5. 複雑なプログラムJ2ME

5.1 はじめに

の簡単なプログラムはこの文書の前のセクションで紹介だけで、 1つのソースコードされたファイルには、プログラムをほとんど何もないため、携帯電話のプログラミングの良い例ではありません。 

私の友人Sam Robertson ( 「21」 )と呼ばれること「Blackjack」 、カードゲームをプレイする人を教えて興味深いJ2MEプログラムを書いた。  プレーヤーのディーラーはカードで「、カード」の選手のペアは、提示されている選手の何をすべきかを決定する必要があります:滞在、 「ダブルヒットダウン」 、または「分割」 。 

このプログラムは6つのソースコードファイルがあります。  このプログラムはユーザーの入力し、応答簡単な図面やテキストの更新ではありません。 
sbj_screen_on_phone.jpg

5.2 ソースコード

以下のリンクをクリックし、 *.jadファイル「manifest.mf」ファイルをバッチファイルは、すべて1つの便利なZIPファイルのソースコードを入手してください。
sbj.zip
ソースコードは、ファイルに含まZIP
6090 bytes
MD5: bf3922035b7a4eef24e107d03b7524c9
を任意のディレクトリには、抽出した場合「c:\」にWindowsの下には、以下の例で議論することになっても近くにはお客様の実際の状況に抽出します。
sbj_directory_files.jpg
「c:\」にsbj.zip展開したディレクトリが作成されます「c:\sbj」

5.3 マニフェストファイル

ファイル: 「manifest.mf」 :
MIDlet-1: My_Description,, SBJ_MidletT
MIDlet-Name: SBJ_MidletT
MIDlet-Vendor: Sam Robertson
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0

5.4 このバッチファイルは、プログラムを構築する

は、次のバッチファイルをラフですが、その例としてサービスを提供し、お客様のJ2MEプログラムを構築する方法について、独自のバッチファイルの書き込みを開始する可能性があります。  この例では、バッチファイルは以下の通りです:
(1)を削除するファイルを含むディレクトリには、古い*.class ; 
(2)を削除するファイルを含むディレクトリには、古い検証*.class
(3)一「クラスの出力」ディレクトリを作成; 
(4)コンパイル*.classファイルへのすべての*.java筋は、出力は、 classes 「ディレクトリに行く」 。 
(5)を「確認出力」ディレクトリを作成; 
(6)プリベリファイすべてのクラスの「クラス」ディレクトリにある、とする検証クラスは、 「検証」のディレクトリに。 
(7) 、 *.jarファイルを作成し、 mainfestファイルを追加し、ディレクトリ内のすべてのクラスの「検証」 ; 
*(8)テストpreverifiedクラスを介してプログラムを直接; 
*(9)テスト*.jarと*.jadを介してプログラムファイル; 

(*...これらの手順(コメント)私のバッチファイルで無効になっています。 ) 
sbj_build_sbj_bat_file.jpg
このプログラムを構築するためのバッチファイル「build_sbj.bat」
ここにプレーンテキスト形式で同じファイル(「build_sbj.bat」)です:
rmdir /S /Q classes
rmdir /S /Q verified
del /F /Q  *.jar

mkdir classes

javac  -g:none  -target 1.1  -d .\classes  -bootclasspath c:\j2me\midp\classes  *.java

mkdir verified

preverify  -classpath c:\j2me\midp\classes;.\classes  -d .\verified  .\classes

jar  cvfm sbj. jar manifest.mf  -C  .\verified  .

REM  midp  -classpath c:\j2me\midp\classes;.\verified  SBJ_MidletT
REM  midp  -classpath c:\j2me\midp\classes;.\sbj.jar  -descriptor sbj.jad
REM  Finished

5.5 建物は、コマンドプロンプトから

ここには、コマンドラインでバッチファイルを実行している「build_sbj.bat」の結果です:
sbj_build_command_prompt.jpg
このバッチファイルを実行「build_sbj.bat」
は、 「rmdir」と「del」操作のための警告メッセージを削除するだけではないことを示す注意してください。 

あなたとは、バッチファイルを実行してからの結果は、新しい*.jarファイル(すなわち、 「classes」と「verified」 )は、新しいディレクトリを見ることができます:
sbj_new_files_after_build.jpg
ソースコードのファイルと新しいファイルを生成

5.6 *.jadファイル

のsbj.jarファイルを展開するために、我々を作成し、適切なフィールドには、正しい*.jarサイズを持つようにsbj.jadファイルを編集する必要があります:
ファイル: sbj.jad
MIDlet-1: SBJ_MidletT, , SBJ_MidletT
MIDlet-Jar-Size: 7257
MIDlet-Jar-URL: sbj.jar
MIDlet-Name: Sam Blackjack Trainer
MIDlet-Vendor: Sam Robertson
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
*.jar者には、 *.jadファイルは、インターネットサイト上に置いてありますファイルは、完全なURLを追加する必要があるかもしれません-でも私は実験( )は、私は(つまり、私だけが指定したフルX AZEの言及を避けることができたが発見*.jar単独で)ファイル名を指定します。  しかし、 URL完全に置くが、私が観察したことをお知らせしたかった。

5.7 要約

プロジェクト内に複数のソースファイルがある、よくあることですし、このセクションでは、複数のクラスを、パッケージと実行が続く原油建物のイラストを与えた。 

以下のセクションSun Wireless Toolkitは、アプリケーションを構築するより簡単に使用に関する参照してください。 

6. Sun 「Wireless Toolkit (version 1.0.4_01)」

6.1 はじめに

Sun構築とプログラムのJ2ME包装のための便利な開発環境を提供しています: 「Java 2 Platform Micro Edition (J2ME) Wireless Toolkit (version 1.0.4_01)」 。 

(注意:あなたは、以前のセクションで、このツールキットを使用するか、このJava 2 SDKする場合は、このバージョンはすでに持っていない説明されてJava 2 SDK 1.4をダウンロードする必要があります。 ) 

は、次のインターネットサイトには、ツールキットをダウンロードして移動: 

http://java.sun.com/products/j2mewtoolkit/ 
注意! ! !
 

リンク 「2.0 Beta 1 English」 (現在は、トップをダウンロードしないオプションをクリック) Motorola T720開発を行っている場合は-これは、このバージョンのいくつかのX AZDものをしており、これは頭痛が広まっている可能性があります。 
j2me_wireless_toolkit_2_0_download_page.jpg
このバージョンをダウンロードしないでください! ( 「2.0 Beta 1 English」 )
私はこのバージョンを試みたが、と私は最終的混乱の多い設定を変更するためのコードをコンパイルしたが、私を実行しようとしたときに、セキュリティ例外が、すべての努力をした。  気にしないでください! 
ダウンロードするには「1.0.4_01 English」バージョンです。  ここには、ダウンロードページがどのようなことに見えます。 : 
j2me_wireless_toolkit_1_0_4_01_download_page.jpg
ダウンロードページはSun J2ME Wireless Toolkit (version 1.0.4_01)
j2me_wireless_toolkit_1_0_4_01_download_page2.jpg
Sun J2ME Wireless Toolkit (version 1.0.4_01) FTPのサイトリスト
これは以下のファイルがダウンロードされます: 「j2me_wireless_toolkit-1_0_4_01-bin-win.exe」 
お客様のシステムにインストールするには、このプログラムを実行します。

6.2 J2ME Wireless Toolkit :ツールバーを開始

このツールキットが完了したら、 「Start」 (開始)メニューからシステムを起動することができます:インストールされている
j2me_wireless_toolkit_1_0_4_ktoolbar.jpg
ツールバーのプログラムの起動
また、このStart (開始) 「Documentation」メニューの項目を介してMIDP-1.0マニュアルにアクセスすることができます。
j2me_wireless_toolkit_2_0_wtk20_docs_api_index_html.jpg
J2ME Wireless Toolkit (version 1.0.4_01)ドキュメント

6.3 J2ME Wireless Toolkit :プロジェクトを作成し、ビルド

j2me_wireless_toolkit_1_4_ktoolbar_window.jpg
ツールバーの状態になります。  「New Project...」をクリックして新しいプロジェクトを作成します。
j2me_wireless_toolkit_1_4_ktoolbar_new_project.jpg
New Project :プロジェクト名を入力( JAR名と新しいプロジェクトディレクトリの名前)になり、 MIDletクラス名を入力( MIDletクラスから派生した、アプリケーションの基本的には、メインクラス) 。 
j2me_wireless_toolkit_1_4_ktoolbar_project_created.jpg
ツールバー:作成したプロジェクトを作成します。  通知は、コンソール等がお客様の*.javaソースファイルすることがわかる  (例えば、 「c:\WTK104\apps\sbj\src」等) 
j2me_wireless_toolkit_1_4_ktoolbar_project_settings.jpg
ツールバーの「Settings...」をクリックしてこのプロジェクトの設定メニューを取得します。 
値は100バイト( )は、現在では、 「MIDlet-Jar-Size」 「フィールド」無視。  我々は最終セットを取得するには、正しい値が発生します。 
j2me_wireless_toolkit_1_4_ktoolbar_project_midlet_settings.jpg
プロジェクトの設定]ダイアログの[ MIDlets ]タブをクリックします。
は、テーブル( 「MIDlet-1」 )で唯一の行をクリックして強調し、それを選択します。  をクリックし、 [ 「Edit」ボタンをクリックします。 
j2me_wireless_toolkit_1_4_ktoolbar_project_no_icon.jpg
*.jarのファイルに格納する場合には、 *.pngファイルがない「Icon」フィールドをクリアします。 
か、以下の通りです: 

(1) Project --> Clean : *.classファイルをすべて削除します。
(2) Build :すべてのファイルとpreverifiesビルド*.class ;
(3) Project --> Package --> Create Package : *.jarと*.jad生成
j2me_wireless_toolkit_1_4_ktoolbar_clean_build_create_package.jpg
の*.jarと*.jad建物の結果
これらの3つの手順を行うと、結果と*.jadは直ちに*.jarローカルエミュレータ、またはダウンロードを他のインターネットサイトに即時展開のためのエア(OTA)以上の「実行」用に「準備」されています。  の*.jadファイルのサイズフィールドが正しい*.jarされます。  (3)ステップごとに1つの時間を再構築するのを忘れないでね! 

これで、 「Run」 (実行)ボタンを押すことによりテストすることができます。 
j2me_wireless_toolkit_1_4_ktoolbar_project_launch.jpg
j2me_wireless_toolkit_1_4_ktoolbar_project_running.jpg
このプロジェクトのために「Run」を押したのエミュレータには、 *.jadを読み取ります。  あなたが(通常は1つだけ)を開始する、特定のMIDletを選択することができます。 
ただ、指定された場所から*.jarと*.jadファイルをコピー(ツールバーのは、プロジェクトのビルド中にコンソールウィンドウ)などの報告:
(コンソールウィンドウ投稿者: )
Wrote c:\WTK104\apps\sbj\bin\sbj.jar
Wrote c:\WTK104\apps\sbj\bin\sbj.jad
直接変更せずに、インターネットサイトにこれらのファイルを入れて、その仕事をしなければならない。  ここに私は自分の携帯電話での空気(OTA)このコンパイルしたアプリケーションを「ダウンロード後、」何を見ている
sbj_screen_on_phone.jpg
Sam Robertson's Blackjack Trainer私の携帯電話で実行(sbj.jar)

7. インターネットのサイトでソフトウェアを提供

7.1 を確保するには、インターネットのWebサーバー*.jarファイルと*.jadファイルの種類を指定MIME

Apache場合はインターネットのWebサーバーがある場合は、ファイル「.htaccess」 、 Webサイトのルートディレクトリ内の名前を作成する必要があります。  「.htaccess」ファイルを追加する場合は、そのような種類のファイルを上書きまたはMIMEとしてApache構成では、上書きすることができます。  あなたは、 MIME種類*.jarファイルと*.jadファイル、テキストファイルとしては、以下に示すように対応する指定を追加する必要があります: 
htaccess_image.jpg
Apacheインターネットは、 Webサーバーのマイカスタム「.htaccess」ファイルです。  注:私は、このファイルを「.htaccess.txt」単にファイルがWindowsオペレーティングシステムを使用して編集を容易にするに命名した。  ファイル名「.htaccess」にApacheファイルは、インターネットのWebサーバーで使用する前に変更する必要があります。 
ここに私の単純なテキスト形式のファイルです.htaccess :
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
どうやら、作成またはApacheサーバー動作の即時変更の結果、このファイルを変更する。  私はApacheサーバーをチェックしてから、修正ファイルの日付と時間「.htaccess」それぞれの新しい着信時にトランザクション、およびサーバーを再読み込み、そのファイルの改変場合は、日付と時刻を変更されていますね。 

インターネットのWebサーバーの場合は、別の種類があるのなら、 MIMEの種類を指定する方法を決定する必要があり、その*.jarファイルと*.jadファイルは、適切な種類のMIME割り当てられていることを確認する必要があります。 

MIME種類が設定されていない場合は、ファイルをダウンロードして携帯電話を*.jadを拒否し、次のエラー報告を知ることになります: 

「406: Not Acceptable」 

7.2 必要に応じて文書HTMLまたはWML以内に*.jadファイルへのリンクを提供

AT&TサービスとのMotorola T720 J2ME携帯電話を*.jad直接では、携帯電話にファイルを*.jadのURLを入力してファイルをダウンロードすることができます。  これは他の携帯電話サービスプロバイダと他のJ2ME携帯電話のために働く可能性があります。 

しかし、より多くの人々のためのHTML文書内のリンクを選択するか、 WML文書内で*.jadファイルをダウンロードするに便利になるかもしれない。  (注:現在WML時代遅れです。 HTMLするほとんどの携帯電話を解釈することができます。 ) 
file_image_hi_html.jpg
一*.jadファイルへのリンクを使って簡単な文書HTML
file_image_hi_wml.jpg
一*.jadファイルへのリンクを使って簡単なWML (WAP)ページ  (注:現在WML時代遅れです。 HTMLするほとんどの携帯電話を解釈することができます。 ) 

8. インターネットのサイトからソフトウェアをダウンロード

以下の画像を開発し、上記のように、前のセクションで説明配備MIDlet私ダウンロードして実行した操作の正確なシーケンスを示しています。  これらのイメージを自分の携帯電話の画面を撮影したものです。 
t720_screens_download_program.jpg
(1)メイン画面:ときに電話を開くと、メイン画面を参照してください。センターボタンを押すと、メインメニューに移動します。 
(2) Main Menu :その項目に移動する「WebAccess」 。 
(3) WebAccess :その項目に移動する「Go To URL」 。 
(4) Enter URL : *.jadファイルのURLを入力(またはHTMLドキュメント、またはドキュメントのWML ) 。 
(5) Details ;この情報は、 *.jadファイルから解析された。プレスDOWNLDの*.jarファイルをダウンロードします。 
(6) Download Complete 、このメッセージのために消滅するまで待つ; 
(7) Installing 、このメッセージのために消滅するまで待つ; 
(8) xxxx bytes transferred 、このメッセージのために消滅するまで待つ; 
(9) Installed 、このメッセージのために消滅するまで待つ; 


後のプログラムがインストールされているときは、再びWebAccessメニュー、単に各メニューを終了し、メイン画面に戻りますが表示されます。 
t720_screens_start_program.jpg
(1)メイン画面:ときに電話を開くと、メイン画面を参照してください。メインメニューを選択するか、メイン画面の下方にカーソルを押しますを経由して「Games & Apps」オプションを選択します。 
(2) Java Powered :この画面に消えるのを待ちます。 
(3) Games & Apps :選択したアイテムのプログラムの名前で! 
(4)イェーイ!あなたのプログラムの実行に成功! 
携帯電話上のプログラムの外観は非常には、エミュレータ内の姿に似ています。

9. ダウンロードのエラーメッセージとインストールエラーメッセージ

9.1 Motorola T720 (J2ME)エラーメッセージ

は、次のエラーメッセージのみをMotorola T720 (GSM/J2ME)携帯電話に適合している。 

9.1.1 「Download Failed」

原因# 1
1644バイト以上の任意のファイルをインターネットのウェブ(HTML, JAD, JAR, MID, GIF)特定のホストやサーバについては、このエラーが発生します。  ここのホストとサーバーの簡単なリストです: 
Host / Server                                               Error
===================================================    =================
Apache                                                       No
Microsoft Personal Web Server (direct from your PC)          No
Earthlink (Apache)                                           No
Yahoo! (custom server)                                       Yes
この問題は、 Motorola T720 GSM/J2MEファームウェアでは断片ファイルのダウンロードに失敗する原因となる欠陥のためだ。
唯一の明白なソリューションをインターネットのウェブのホストまたはサーバーの種類をスイッチすることです。  他の携帯電話の種類この問題を持っていない。 
原因# 2
一*.jadファイルの「MIDlet-Jar-Size:」フィールドには、対応する*.jarファイルの正確なバイトの合計を示すものではありません。

9.1.2 「Failed: File Corrupt」

原因# 1
この*.jarファイルは、特定の携帯電話で利用できない場合がありますAPI機能を使用しています。 

たとえば、 MIDP 2.0機能は、携帯電話でMotorola T720 GSM/J2ME (のみ) MIDP 1.0している機能は利用できません。  プログラムをエミュレータには、実行可能性がありますが、携帯電話上で実行されない場合があります。 

このソリューションは、ソースコードでMIDP 2.0機能を検索するとMIDP 1.0関数、または排除は、 MIDP 2.0機能を必要とする機能に置き換えています。 
原因# 2
この「manifest.mf」の「jar」ユーティリティ( )を経由してファイルを作成するために使用さ*.jarファイルのエラーが含まれています。 

ことを確認「manifest.mf」ファイルCLDCとMIDPは、以下のバージョンがあります: 
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
「manifest.mf」ファイル全体をほぼ正確には、次のようになります: 
MIDlet-1: My_Description,, HelloMIDlet
MIDlet-Name: My_Midlet_Suite
MIDlet-Vendor: Colin Fahey, Inc.
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
ファイルの最後の行を含む「manifest.mf」ファイル内のテキストの各行は、 carraige戻り(CR; 13; 0x0d) 「文字で」は、ラインフィードが続く文字(LF; 10; 0x0a) 「を」終わらせるべきである。 

が、ここに示す例からファイルの独自のバージョンでは、 「manifest.mf」ファイルのフィールドのみが異なるば、まず最初に3つのフィールドの例で示されています。  最後の3つのフィールドの例では、最後のフィールドの後に復帰改行する必要があります完全に一致し「、ファイルの最後の2つの」文字する必要があります。 

ここで「manifest.mf」ファイルのバージョンで起こり得る問題点は: 
(1)あなたの「manifest.mf」ファイルには、文字ASCIIされていない文字が含まれています。 ASCII文字のチャートで(見て、 0 〜 127の範囲では無効です外に任意の文字) ; 
(2)あなたの「manifest.mf」ファイルには、各ラインの「最後に、各」 (CR) 「文字の後に」改行「文字」を(LF)改行されていない。 
(3)あなたの「manifest.mf」ファイルには、各ラインの最後に終了する前に (CR)(LF)行目に見えないスペースやタブがあります。 
(4)あなたの「manifest.mf」ファイルを「Manifest-Version:」行が含まれて; 
あなたの「manifest.mf」ファイルの(5)最終ラインは、 (CR)(LF)ライン終端で終わることはしませんが、代わりに、単純にファイルの最後に達する; 
(6)あなたの「manifest.mf」ファイルには、正確なフィールドとフィールドの正確な順序を持っていない上記の例に示す; 
(7)あなたのCLDCバージョンを正確に、または1.0されない場合は、 MIDPバージョン1.0正確ではありません。 
(8)あなたのベンダー名をASCII文字はUnicode文字を許可されています(例えば、 )されていない文字があります。 
(9)あなたの「manifest.mf」ファイルは、 「MIDlet-1:」ラインの2番目のカンマの後にスペースがあるのではありません。 
おそらく上記のいくつかのケースが実際に多くの携帯電話向けに、問題が発生しない場合は、すべてのファイルをダウンロードし成功するために上記の排除を有効にする可能性があります。  「manifest.mf」ファイルのパターンでは、ダウンロード後に成功すると、何をダウンロードすることができます実験誤差を生じさせることなく他のものにできることを発見してください。  「manifest.mf」ファイルが変更される場合は、すべてのターゲットは、プログラムをダウンロードする携帯電話や携帯電話サービスプロバイダの仕事を続けるかどうかを確認することが重要です。  一部の携帯電話やサービスを他より少ない柔軟性があります。 

ときに「manifest.mf」ファイルは、 jarプログラムを経由して*.jarファイルに追加されると、 jarプログラムは、 *.jarファイル内のマニフェストファイルの新しいバージョンが作成されます。  *.jarファイル内のマニフェストファイルの生成バージョン「MANIFEST.MF」という名前です。  このjarプログラムは、 「manifest.mf」に存在しないこのファイルには、プログラマが提供するファイルのフィールドを追加する可能性があります。  場合を除き、フィールドの一部を除去するために、残りのフィールドを正確には、上記の例のようにファイル「manifest.mf」見せる準備ができている、 *.jarファイルからファイルを抽出「MANIFEST.MF」しないでください。 

9.1.3 「Unsupported Content Type」

原因# 1
携帯電話は、特定のファイルを、リモートサーバーによって報告は、 MIMEのタイプを受け入れることはできません。 

たとえば、 JPG画像ファイルは、 Motorola T720によってサポートされていない、このエラーが発生します。

サポートされている場合、ファイルの種類のMIMEのタイプ(例えば、 GIF 、 MID 、 JAD 、 JAR )が正しく、サーバーによって報告されていませんこのエラーも発生することができます。  人は、サポートされているファイルの種類のタイプを報告するための正確なMIME注意が必要です。 
原因# 2
自分自身のニーズは、携帯電話上のファイルキャッシュ(例えば、 Browser Settings -> Clear Cache )が0にリセットされます。 

最近では、リモートサーバーにする場合は、 MIMEの種類を追加して、以前のタイプが正しくないか、存在しないMIMEのインストールに失敗したため、ファイルをダウンロードし、携帯電話上で、再度ファイルをダウンロードするための障害となる可能性があるファイルキャッシュを試みた適切なMIMEタイプ。 

また、リモートのファイルが修正されたとは、キャッシュされたバージョンの欠陥がある可能性がありますから、修復したファイルのバージョンが防止されている代替としてダウンロードされています。 

清算は、携帯電話では、ブラウザのキャッシュは、最新のサーバー構成から、その後のダウンロードの利点(新しいMIME設定)例えば、リモートファイルの更新を確保する必要があります。 
原因# 3
Motorolaマニュアル[投稿者: http://developers.motorola.com/developers//wireless/global/emea/other/UCT.html ]
WAPで「Unsupported Content type」エラーを回避する方法 

WAP Unsupported Content type場合は、必ずしもコンテンツタイプの設定が原因ではないのだと言っでエラーになる。  多くのWAPページ(å ö ä)スウェーデン語などの特殊文字が含まれて正しく使用するために文字を指定する必要があります表示するためにそれらを取得します。  そのためにはWAPページで使用されている場合は、サーバーの応答では、文字セットを変更Content-Typeヘッダを含めるために文字セットを指定するために、例えば「Content-Type: text/vnd.wap.wml; iso-8859-1」 。  ユーザーがサーバーからの応答を取得すると、コンテンツが正しく表示するために、すべての必要な情報を持っている必要があります。 

しかし、問題は、このアプローチを使用している。  すべての機種の携帯電話の文字は、リクエストヘッダに設定して、 「Accept-Charset」を使用して、自分の支援にゲートウェイを示しています。  場合は、 Unsupported Content type生成される必要があるエラーが一致しませんHTMLの仕様によると、これは文字には、サーバーの応答で指定を設定し、比較する必要があります。 

この問題をさらに複雑にするために、いくつかのWAPゲートウェイは、文字を比較する気はない、要求デバイスによっては、それゆえ、コンテンツが正しく表示されませんこれらのデバイスでサポートされている設定してください。  もう1つの合併症は、大文字小文字を区別しない文字列ですが、いくつかの文字セットを指定するWAPゲートウェイとしての文字列を扱う大文字と小文字が区別されています。 

すべて一緒には、非常に異なる結果になる場合は、お客様とのWAPゲートウェイを使用してサーバーの応答が何であるかを利用するデバイスによって異なります。 

唯一の方法は、お客様のコンテンツが正常には、常にクライアントによって承認され、その文字を送信する前に設定してご返信変換何文字セットをチェックすることですが表示されますことを確認します。 

9.1.4 「406: Not Acceptable」 (「The server cannot generate a response that your client can accept.」)

原因# 1
あなたはVerizonの携帯電話がある! 

ベライゾンを許可していません(GIF)画像をダウンロードして、顧客の任意のインターネットのWebサーバーからの着信音(MIDI) 、またはプログラムを、 。  のいずれか1つの「Get It Now」サービス、またはUSBケーブルと「Get Around 'Get It Now' (GAGIN)」ソフトウェアを使用して使用する必要があります。 

解決方法:これには、自由市場での「競争のため休場」のプラットフォーム「を排除するのを待つ」 。  全体の技術は、この成功したことにより、時代遅れかもしれないが、これは何時だけどん欲に導かれている企業が追加されています。 
原因# 2
このエラーメッセージは、 MIMEのタイプのファイル拡張子のファイル(例えば、 .gif 、 .mid 、 .jar )は、インターネット関連のWebサーバーで指定されていないダウンロードさを示しています。

Apache場合は、インターネットウェブサーバーが、例えば、しては、以下の行を追加する「.htaccess」ファイルを変更する必要があります:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid

9.1.5 「413: Requested Entity Too Large」

原因# 1
は、サーバーのファイルをホストすること(例えば、 GIF 、 MID 、 JAR )ファイルの種類を指定していないMIMEダウンロードしている。  したがって、携帯電話は、そのファイルはテキスト形式を想定しています。  また、携帯電話のサイズ(バイト数)は、サイズ(バイト)のバイナリファイル(例えば、 GIF 、 MID 、 JAR )の上限よりも小さくされたテキストファイルでは限界がある可能性があります。  したがって、バイナリファイルをテキストファイルとして解釈の最大のテキストファイルのサイズを超えることが、可能性があるため、エラーが発生します。 

Apache場合は、インターネットウェブサーバーが、例えば、しては、以下の行を追加する「.htaccess」ファイルを変更する必要があります:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
原因# 2
設立どうやらこのエラーが発生する可能性もリモートサーバーが適切な場合でもMIME種類があります。  私はまだありませんが、このエラーの代わりにこのような状況が発生するの「Download Failed」決定していない。 

どうやら、携帯電話は、ファイルのMotorola T720 GSM/J2MEできるHTTP 1.1仕様の一面を処理できませんのフラグメントには、複数の要求を「GET」必要が壊れている。 

が、特定のインターネットWebサーバーの種類から任意の(例えば、 HTML 、 JAD 、 JAR 、 MID 、 GIF ) 1644バイトより大きいファイルをダウンロードしてファイルは、このエラーが発生するMotorola T720 GSM/J2ME携帯電話を使用しています。  ここにインターネットのウェブホスティングプロバイダの簡単なリストを表示しているかどうかは、インターネットのウェブホスティングプロバイダは、 Motorola T720 GSM/J2ME携帯電話用の問題が発生する:
Host / Server                                               Error
===================================================    =================
Apache                                                       No
Microsoft Personal Web Server (direct from your PC)          No
Earthlink (Apache)                                           No
Yahoo! (custom server type)                                  Yes
この問題は断片的にファイルをダウンロードする能力に影響を与えるのMotorola T720 GSM/J2ME携帯電話では、ファームウェアによるものです。 

唯一の見掛けのソリューションは、 Motorola T720 GSM/J2ME携帯電話にダウンロードするときに、特定のインターネットWebサーバーの種類を回避するためにホスティングされています。  他のほとんどの携帯電話の種類は、この問題を持っていないので、この問題は無視される可能性があります。 

9.1.6 「Connection unsuccessful.  Try again later.」

原因# 1
このエラーは、要求されたファイルをホストしているインターネットサーバーとは関係がない。 

このエラーが表示される場合は、私は次のようなことをすることをお勧め: 
ブラウザのキャッシュをクリアする(1) ; 
ブラウザの履歴をクリアする(2) ; 
電話をして(3)ターン; 
(4)削除、バッテリー; 
(5)数秒間待って; 
(6)背面の携帯電話には、電池を入れ; 
パワー(7)電話を; 
(8)再度ダウンロードしてみてください。 
私は数日後、私は最初に携帯電話の購入のための「Connection unsuccessful.  Try again later.エラーメッセージを受け取った。  次に、ランダムなチャンスを、私はバッテリーを削除しました。  私が後ろには、携帯電話には、バッテリーに言えば、私はすぐにインターネットにアクセスしていた。 

私は、その後の6ヶ月の間、数回このエラーを受信するたびに、プロシージャの上には、インターネットへのアクセスを復元している。  私は、最も重要なことかもしれないが、手続きの手順を決定していないが、私は単純に、バッテリーを取り外し、背面の携帯電話には、電池を入れ十分かもしれないと考えています。 

私の意見ではあまりにも漠然とした、このエラーメッセージが表示されます。  なぜ接続するための試みが失敗だったのですか?  携帯電話サービスのネットワークがビジー状態だったのだろうか?  携帯電話サービスの「ゲートウェイ」サーバーが機能していないか?  私の携帯電話を受信できない場合、または十分な無線信号強度を送信するか?  もう一度 、ダウンロードしようとしても良い時間になるのだろう?  今から10秒ですか?  今から1時間ですか?  今から1週間か?  場合には、問題の原因に関する特定のエラーメッセージが表示されたとすればより多くの可能性ソリューションの詳細については参考になるだろう。 
原因# 2
もしされた場合は、インターネットにアクセスできることがないし、 「Master Reset」 、でしたが携帯電話では、ネットワーク設定を確認してください。  ネットワーク設定の一例(のMotorola T720 GSM/J2ME携帯電話の場合は、 Los Angeles, CaliforniaエリアAT&Tサービスのために)には、次のリンクで指定されたセクションを参照してください: 
AT&T携帯電話の構成設定は、ネットワーク( )

10. を作成し、提供し、 「着信音」をダウンロードする

10.1 MIDI (*.mid)ファイルを作成または取得

MIDI音を作成したり、任意のソースから(*.mid)ファイルを取得する。  私はインターネットを簡単に検索して、テレビ番組「Knight Rider」 (1982-1986) MIDI形式(例えば、 「knightrider.mid」 )のテーマ音楽を発見した。 

次の画像表示の方法をMIDIファイルをエディタで表示されますMIDIいくつかのアイデアを提供します。  それをお使いの携帯電話に音楽を入手するためのエディタMIDIにする必要はありません。  何かのソースから既存のMIDIファイル(*.mid)を得ることができます。  ただし、自分のオリジナルの多声音楽の作成にお好みのエディタを使用してMIDIすることができます。 
home_studio_midi_knight_rider.jpg
Cakewalk Home Studio : 「knightrider.mid」再生

10.2 確実で、あなたのインターネットのWebサーバーは、 MIDI MIMEのタイプを知っている

Apache場合は、インターネットウェブサーバーが、例えば、しては、以下の行を追加する「.htaccess」ファイルを変更する必要があります: 
AddType audio/midi mid
この「.htaccess」ファイルを指定するか、様々な種類のファイルを上書きMIMEの種類については、サーバーによって示さ(通常.MID 、 .GIF 、 .JARなどのファイル拡張子による) 。 

既に他の種類のファイルタイプ他MIME追加して、お客様の完全な「.htaccess」ファイルは、次のテキストに似可能性があります:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
どうやら、作成またはApacheサーバー動作の即時変更の結果、このファイルを変更する。  私はApacheサーバーをチェックしてから、修正ファイルの日付と時間「.htaccess」それぞれの新しい着信時にトランザクション、およびサーバーを再読み込み、そのファイルの改変場合は、日付と時刻を変更されていますね。 

インターネットのWebサーバーの場合は、別の種類があるのなら、 MIMEの種類を指定する方法を決定する必要があり、その*.jarファイルと*.jadファイルは、適切な種類のMIME割り当てられていることを確認する必要があります。 

MIME種類が設定されていない場合は、ファイルをダウンロードして携帯電話を*.jadを拒否し、次のエラー報告を知ることになります: 

「406: Not Acceptable」 

10.3 あなたのインターネット上のWebサーバーにファイルをMIDI入れ(*.mid)

私は私のMIDIインターネットのWebサーバーのルートディレクトリに「kr.mid」という名前のファイルがコピーされます。  あなたが「Filezilla」などのFTP転送するシンプルで便利なソフトウェアを使用することができます。 

10.4 ダウンロードしてお使いの携帯電話サービスのインターネットサービスを使って携帯電話にMIDIファイル

のMotorola T720 GSM/J2ME携帯電話の場合は、ファイルをダウンロードMIDIの「WebAccess」メニューで始まります。  、 URLのMIDIファイルの入力が続く、 「Go To URL」を選択すると、ダウンロードが開始されます。  例えば、私は以下のURLを入力:
http://www.colinfahey.com/kr.mid
ダウンロードする場合は、成功するとMotorola T720 cellular phoneを使用している場合は、お使いの携帯電話上のファイルを格納するオプションが与えられます。  決めるときには、ファイルを保存するために、単純に着信音の設定では、現在の着信音の代わりに格納するファイルの設定のオプションを与えられています(これはまた、副作用として、着信音の設定で店) 。 
以下の画像をダウンロードしてMotorola T720 GSM/J2ME携帯電話用MIDIファイルを演奏するの過程を要約する。  他のJ2ME 、他の携帯電話サービスプロバイダと、同様のダウンロード手順をしている可能性が高い携帯電話が有効になっている。  ある場合Verizon携帯電話のサービスプロバイダをついているが、これはどれも動作すると、移動電話市場を破壊し、閉鎖「を」支援するため「の「Android」電話」を購入する! 
t720_screen_midi_download.jpg
(1)メイン画面:プレスは、適切なボタンをクリックするとメインメニューが表示されます。 
(2) Main Menu : 「WebAccess」項目に移動します。 
(3) WebAccess : 「Go to URL」項目に移動します。 
(4) Enter URL :インターネットのWebサイトでMIDIファイル(*.mid)のURLを入力します。 
(5) Connecting :ダウンロードを開始する待ちます。 (もし、その後は、インターネットのWebサーバー(*.mid)ファイル) MIDIのための適切なタイプを割り当てるMIMEしなかった「406: Not Acceptable」エラーメッセージが表示されます。 ) 
(6) Downloading :ダウンロードが完了するのを待ちます。 
(7) Download Complete :この画面に消えるのを待ちます。 
(8) MIDI Playback : MIDIファイルをすぐに再生が開始されます。を押して、メニューボタンをTone Menuに行って、 (9) 、または「STORE」ボタンを押すと手順に進みますと(12)の手順に進みます。 
(9) Tone Menu :あなたがプレーするという選択肢があります... 
(10) Tone Menu :あなたの詳細を取得するオプションがあります。 
(11) Details :ここでは、バイト単位でのサイズを参照してください。 
(12) Store Options :投稿者「STORE」ボタンを押すことができるステップは、このメニューにする(8) 。  あなたの曲の携帯電話のコレクションに格納するオプションがあります。  55731 「SELECT」保管してください。 
(13) Stored : MIDI曲格納されています。 
(14) Total Bytes Transferred :これだけの数のバイトをダウンロード通知されるので、今度はあなたの携帯電話サービス法案に驚きではない! 

10.5 再生は、携帯電話でいつでもMIDIファイル

あなたの携帯電話でいつでも保存MIDIファイルを再生でき、着信音として、お客様の任意のMIDIファイルを使用することができます。
t720_screen_midi_playback.jpg
(1)メイン画面:メインメニューに行くを押して、適切なボタンをクリックします。 
(2) Main Menu : 「Media Center」に移動します。 
(3) Media Center : 「My Tones」に移動します。 
(4) My Tones :強調トーンすぐに再生が開始されます。  あなたは「EDIT」オプションでは、名前を変更することができます。  メニューボタンを押した場合は、他のオプションを提供します。 

10.6 設定ファイルを使用するスタイルをMIDIリング

以下のメニュー画面を移動:

(1)メイン画面 
(2) Main Menu 
(3) Ring Styles :プレス「SELECT」 
(4) [Silent, Soft, Loud] Detail :プレス「CHANGE」 
(5) Calls: [current ring style/tune] :プレス「CHANGE」 


しかしスクロールリングスタイルのリスト(サイレント、振動スタイル、恒久的環曲、等) 、および下部に、お客様のダウンロード曲が表示されます。  単に新しいリング調整を有効にするに「SELECT」ボタンを押して! 

11. を作成し、提供し、画像をダウンロードする

11.1 (*.gif)を120 * 160 GIFイメージファイルを作成する

は、以下の手順を120 * 160 GIFイメージファイルの作成に使用することができます適切なのMotorola T720 GSM/J2ME携帯電話で表示するため(*.gif) 、メイン画面のいずれか、または、イメージギャラリーで画像としての背景画像として。 
Microsoft PaintまたはAdobe Photoshopまたはその他の適当な画像編集ソフトウェアで(1)任意の画像ファイルを開きます。 
(2)スケールや作物120ピクセル、幅160ピクセル高さ(すなわち、 120 * 160ピクセルの画像)に画像; 
(3)をGIF画像フォーマットでファイルを保存(*.gif) ;この操作を実行する( Adobe Photoshopでは、方法です: File -> Export -> Gif89a ) 
イメージファイルは、画像ファイルの形式でGIFようMotorola T720携帯電話をデコードして、画像を表示できるようにする必要があります。  画像のサイズを正確に120 * 160場合は、そのイメージを完璧にMotorola T720携帯電話の画面に収まることになります。それ以外の画像を2つの側面に空の境界線があります。 
注:私は正常にダウンロードして118 * 120ピクセル、 120 * 160の画面サイズよりも小さくなっています*.gifされた画像ファイルが表示されます。  私は、画面の残りの部分は色のイメージの国境から選択さに満ちていると思う。  おそらく画像の左上のピクセルのピクセルの色は空の境界線は、画像の2つの側面周囲の色として使用されます。 
このMotorola T720携帯電話は、私12-bit RGB (4-4-4)としてエンコードだと思う4096色、表示することができます。  したがって、私は思うの小さなカラーグラデーションは、スパン大部分は避ける必要がありますして画像を、これらのグラデーションの境界は非常に明白にすることと、人の画像を見て、気が散る。  また、フォーマット自体は256異なる色GIFため、一人がこの制限を認識しているにもニーズに限られている。  いずれにせよ、それは常に最高のイメージだけで、携帯電話で見て知っているか否かの画像を携帯電話に適しています。 
si.gif
Space Invaders (スペース侵略者) : 120 * 160 GIF画像

11.2 GIFイメージを入れて、あなたのインターネットのWebサーバーにファイルを(*.gif)

私は私のGIFインターネットのWebサーバーのルートディレクトリに「si.mid」という名前のファイルをコピーされます。  あなたが「Filezilla」などのFTP転送するシンプルで便利なソフトウェアを使用することができます。 

11.3 ダウンロードしてお使いの携帯電話サービスのインターネットサービスを使って携帯電話にGIFファイル

のMotorola T720 GSM/J2ME携帯電話については、 GIFイメージファイルをダウンロードする「WebAccess」メニューで始まります。  、 URLのGIFファイルの入力が続く、 「Go To URL」を選択すると、ダウンロードが開始されます。  例えば、私は以下のURLを入力:
http://www.colinfahey.com/si.gif
ダウンロードする場合は、成功するとMotorola T720 cellular phoneを使用している場合は、お使いの携帯電話上のファイルを格納するオプションが与えられます。  決めるときには、ファイルを保存するために、単純に画像のセットではなく、現在の背景や格納するファイルの設定のオプションを与えている(すなわち、 「壁紙」 ) 。 
以下の画像は、 Motorola T720 GSM/J2ME携帯電話用GIFイメージファイルをダウンロードするプロセスを要約する。  他のJ2ME 、他の携帯電話サービスプロバイダと、同様のダウンロード手順をしている可能性が高い携帯電話が有効になっている。  ある場合Verizon携帯電話のサービスプロバイダをついているが、これはどれも動作すると、移動電話市場を破壊し、閉鎖「を」支援するため「の「Android」電話」を購入する! 
t720_screen_image_download.jpg
(1) WebAccess : 「Go to URL」項目に移動します。 
(2) Enter URL :インターネットのWebサイトでGIFイメージファイル(*.gif)のURLを入力します。 
(3) Connecting :ダウンロードを開始する待ちます。 (もし、その後は、インターネットのWebサーバーGIFイメージのための適切なタイプを割り当てるMIMEしなかった「406: Not Acceptable」エラーメッセージが表示されます) (*.gif)ファイルです。 ) 
(4)プレビュー画像のダウンロード、 「STORE」するオプションは、携帯電話のメモリに(店)のイメージで; 
(5) Store Options : GIFイメージだけ、または保存することができますが、メイン画面(背景)は、 「現在」の「壁紙」を交換することをスクリーンセーバとして(すなわち、 「表示される」画像「を」使用することができます使用することができますが、携帯電話ボタンの時間を指定された金額)を製作されていない。 
(6) Changed: Wallpaper [image name] :これは単純に壁紙画像が「変更され」ている通知されています。 
壁紙後、携帯電話のメイン画面の(7)の「外観」 (すなわち、背景の)イメージが変更されています。  私の携帯電話は、 「スペースインベーダー」を制覇してきました! 

11.4 携帯電話では、 「スクリーンセーバー」として使用するためにアニメーション画像GIF

イメージとしては、スクリーンセーバーをあなたの携帯電話で使用「するには、アニメーション」 GIFイメージをダウンロードするには、単純に準備し、画像のダウンロードについては、この文書の前のセクションの指示に従ってください。 
GIF場合は、画像を、 「スクリーンセーバー」をGIFアニメーションこのアニメーションが表示されます。 
単純にスクリーンセーバーを「画像として」設定した後、画像をダウンロードされている。 
は、次のアニメーションGIF画像は、 Motorola T720 GSM/J2ME携帯電話で「、アニメーションスクリーン」セーバーの画像として使用することができます。 
sun.gif
アニメーションGIF像はMotorola T720 GSM/J2ME携帯電話では、 「アニメーションスクリーン」セーバーの画像として使用することができます。
悲しいことに、 Motorola T720携帯電話の壁紙画像を「アニメーションされていません」 。  それは非常に携帯電話を開くことがすごいだろうし、メイン画面上のアニメーションの背景を参照してください!  :^( 

あなただけのアニメーションが表示されますGIFのMotorola T720携帯電話で電話が「必要な場合があります」が30秒以上のスクリーンセーバーが起動するモードに入るに表示されます。  ( 1つのメニューで、この遅延を設定することができます。 )  照明は、画面が表示される前のスクリーンセーバーを無効にする可能性があります。  「スクリーンセーバー」がアクティブな電話の通話中には表示されません。  したがって、これらすべての事実を考えると、 Motorola T720 「携帯」電話のスクリーンセーバーの特徴はむしろ下手です。 

12. のAT&T携帯電話ネットワークのMotorola T720 GSM/J2ME携帯電話の設定

12.1 はじめに

これは、このセクションでは、非常に特殊な携帯電話( Motorola T720 GSM/J2ME )にとって非常に特定の携帯電話サービスプロバイダ( AT&T )にとって非常に特定の地域(南カリフォルニア)の設定について説明し、本書のこのセクションで誰にも役立つことが、可能性は低いです。  しかし、私は歴史的な利益のためにこの情報が含まれています。 

12.2 Web Sessions設定

Main Screen
  Main Menu
    More... (Not necessary if list view instead of icon view)
      Web Sessions
        mMode (NOTE: Do [New Entry] if no nMode entry)
          (*** Hit menu key, not LAUNCH! ***)
            Edit
              Name:           mMode
              Homepage:       http://home
              WAP IP 1:       10.250.250.250
              WAP Port 1:     9203
              WAP IP 2:       10.250.250.250
              WAP Port 2:     9203
              Timeout:        2 minutes
              CSD No. 1:      ____________ (blank)
              User Name 1:    ____________ (blank)
              Password 1:     ____________ (blank)
              Speed (Bps) 1:  9600
              Line Type 1:    ISDN
              CSD No. 2:      ____________ (blank)
              User Name 2:    ____________ (blank)
              Password 2:     ____________ (blank)
              Speed (Bps) 2:  9600
              Line Type 2:    Modem
              GPRS APN:       proxy
              User Name:      ____________ (blank)
              Password:       ____________ (blank)
また、 JavaプログラムのDNS設定です:
Main Menu
  Settings
    Java Tools
      DNS IP:  10.250.1.10

12.3 コメント

(1) 9201に「設定さ」れますWAP Port 「番号」マスターリセット「を行う」ので、これらの9203に変更する「必要」が「あります」 。 

(2)の二次WAP IP and Port同じIPとポートは、プライマリとしてWAP設定するように設定されています。  私はURLに行く)は、完全に空白の二次WAP設定で(すなわち、 「mMode」を使用することができたが、私は当時「Line Type 1: Modem」していた。  「ISDN」を設定する場合、私にはわからないよりは、二次WAPの設定を使用する可能性が高いです。 

(3) 「マスタリセット」 「Timeout:」フィールド「15 minutes」になります。  「2 minutes」に値を変更します。 

(4)の「Name:」 、 「Homepage:」 、 「GPRS APN:」フィールドをすべて手動で入力する文字や記号に含まれています。 

(5)のフィールドは、上記の例では空が本当にしないように意図している任意のテキストが表示されます。  空欄偶然ではない。 

13. 他の携帯電話のリソースへのリンク

13.1 Motorola J2ME SDK 3.0

Motorolaは、ソフトウェア開発キットSDKは、エミュレータは、 T720を含む多くのMotorola電話をエミュレートする能力が含まれている。  あなたが無料でこのSDKを得ることができ、 エミュレータを使用する場合は、 電話 CodeWarrior必要はありませんがSDK 、 Motorola Webサイト上のすべての言及にもかかわらずCodeWarrior含まれています。  また、私はあなたをCodeWarriorまたはMotorola SDKなしの場合でも、 T720ための専門的開発を行っていると思う一般的に得ることができます。

Motorola場合でも、 J2ME SDKについて学ぶには、登録する必要がありますだけではそれをダウンロードしてみよう。 

http://kb.motorola.metrowerks.com/motorola/developmentTools.do

が、さらに「*.wav」ファイルを再生するためのいくつかの機能を「Compact MIDI」されています。  をインストールし、詳細を知るために、ドキュメントを読む。 
ここに私は電子メールで受け取ったコメント:
Motorola J2ME SDKは、エミュレータのスキンは、他のこと「( )の中」には、エミュレータをプログラミングしている携帯電話のようになります。できます。  それ以上の化粧品だ。  画面サイズ例えば、これは、ターゲットと一致する場合は、エミュレータがここで画面サイズの問題は、確かに役立つ何かを設計して変化することができます。  このSDKもMotorolaのLightweight Windowing Toolkitは、いくつかのあなたは真のUIを持つアプリケーションを作成する-様々なX AZGウィジェットと呼ばれるオープンX AZD何を必要とするクラスが作成されています。 

あなたなしで得ることができますが、その場合は、おそらくこれが欲しいです深刻な仕事をした。  もし私Sony EricssonまたはNokiaまたは他の携帯電話用のものを作成すると、私もそのSDKsするべきです。 
ここMotorola'sのWebサイトからの引用はSDKについて:
のJ2ME™プラットフォーム用のMotorola Software Development Kit (SDK)のツールの開発とJavaプログラミング言語で書かれたプログラムは、テストのために使用されます。  このSDKは簡単にMotorola J2ME™デバイスエミュレータを使用してMIDlets (J2ME™ Programs)打ち上げをするアプリケーションが含まれます。  一緒にこれらのツールを開発し、ターゲットデバイスにダウンロードする前に、エミュレーションのごJ2ME™プログラムをデバッグすることができます。  このMotorola SDK Metrowerks' CodeWarrior™ Wireless Studio, Professional Edition, Version 7に統合することができます。 

SDKのこのバージョンは、パフォーマンスと安定のために数多くの拡張機能が含まれています。  すべての以前のバージョンの機能を、これらの新しい機能がサポートされています: 

このバージョンでサポートされて携帯電話: A830 。 

新しい機能はこのバージョンでサポート: 

A830 -ゲームX AZC、シリアルポート接続、 X AZDプロトコルをサポートしています。
All devices -グラフィック性能の向上

SDKは、以下のデバイスをサポートしています:
*Motorola Accompli (008/6288 and 388)™
*Motorola T280i
*Motorola T720
*Motorola v60i
*Motorola v66i
*Motorola iDEN i1000
*Motorola iDEN Platform
*Motorola StarTAC™
*Motorola i85s

13.2 Sun ONE Studio 4 update 1, Mobile Edition

私の友人は明らかに問題はないと、このツールキットを使用してダウンロードしていた-どうやら、あなたはX AZCなどをX AZBや余分なすべてのツールを必要とする  自分で試していないしている。  ここに、このツールキット上の他のコメントは: 
一Slashdot投稿から引用: 
あなた自身のツールキットをインストールさまざまないくつかの面倒をすべて保存している可能性がある。  [sun.com] Sun ONE Studio 4 update 1, Mobile Editionだけをダウンロードして、完全に無料(ビールのように) 、と偉大な統合開発環境20 MB (約ダウンロード)です。  すべてのツールは、エミュレータおよびデモの記事からバンドルされています。  私RH Linux 7.2の下で実行していることは先週、 512mb ram (YOU NEED LOTS OF RAM!!!)の以来。 

ステップへのデバッガでは、このワームの試合を通じて、 regestration画面をスキップからとっただけで1分[sun.com]  (私はいつも/ヘビ/かじるすべての化身で、ゲームのデモ版を提供したワームの愛を美しくプログラムされている-が、オブジェクト指向的で多国籍な単純なコードのわずかな量のスレッド) 。 

あなたがダウンロードして登録する必要があります。  サポートされるプラットフォーム: Linux, Windows, Solaris 。
一Slashdot投稿から引用:
のsunダウンロードfaq [sun.com]投稿者: 
「当社のダウンロードサービスセッション管理を処理する方法のため、あなたのリンクを再度クリックして、一部のブラウザウィンドウにダウンロードを再開することはできません。むしろ、使用しているダウンロードマネージャを開き、ダウンロードマネージャ自体内からのダウンロードが再開されます。

我々のエンジニアでより多くのプラットフォーム上でよりダウンロードマネージャーのサポートを有効にするために、作業を続行。だが今のところ、他のダウンロードマネージャーやユーティリティをダウンロードして問題が発生している場合はオフにしてください。」
linux下sunから大きなファイルをダウンロードして実際には約1年では難しいしている。  最近まで唯一のダウンロードマネージャを動作させることができるとされていたDAP windowsの下で(警告:スパイウェア)だった。  Sun's [不誠実対処することができなくなります基本的に、ほとんどのダウンロードマネージャ( prozgui 、 getright 、 opera ) ] 。  Ludicrouslyではなく、ウェブサイトだけで仕事を修正、 Sun独自のダウンロードマネージャ[sun.com]書かれている。  javaでは、その小さな140KB書かのみ!  は、驚くべきことに、これは本当に素晴らしいダウンロードマネージャ、小さなフットプリントは、ブラウザの乗っ取り、アドウェア/スパイウェア、されているすべてOSの下で、自動ファイルの確認、自動unzips 、固体は、岩のように活動をしています 

13.3 ランダムなフォーラムの投稿:

JadとJarのファイルは、ファイルのみを携帯電話上のアプリケーションを実行する必要があると、電話に応じて、方法では、携帯電話にアプリを転送すると、あなただけがjar必要があります。 

Over the Air (OTA)場合、アプリケーションは、ウェブ経由でURL場合は、ページには、電話( wml 、 cHtml 、 cHtml例で読める上のリンクを作成する) JADファイルをする必要がありますすなわち送信されます。  OTAダウンロードについても、ウェブサーバーjarとjadファイルの種類を処理するように設定する必要があります。  apacheには、 httpd.confファイルに次の行を追加する必要があります: 

AddType text/vnd.sun.j2me.app-descriptor jad 
AddType application/java-archive jar 

また、必ずそのjarファイルのURL 、サーバー上のJARファイルのURLではなく、ローカルURLされている必要があります。 

あなたIR 、 Bluetoothやケーブルを経由するだけの携帯電話には、ファイル転送をインストールし、実行する必要がある一方で転送する場合。  JADファイルは、一般的に、特に携帯電話などの情報をダウンロードしてOTA 、 Nokia 7650といくつかの他のモデルのみjar以外のファイルを転送する必要があるために必要なOTA転送を提供するために使用されます。 

13.4 http://wireless.java.sun.com/midp/questions/sar/

SAR (またはWTP-SAR ) Segmentation and Reassemblyの略です。  それWAP以内にWireless Transaction Protocol (WTP)のオプションの機能だ。  SARをWAPゲートウェイを、例えば)に小さな塊(分割)をダウンロードしている携帯電話のバック一緒に作品をファイル( JAR大きなメッセージを破るための方法を定義しています(再) 。 

すべての携帯電話を使用していないSARが、ほとんどはWAPゲートウェイを介してWebサーバーにアクセスします。  Motorola中のファイルを一度に1つの小さな塊を取得するためにして組み立て直すHTTP 1.1の機能を使用してNokia 、 SAR使用しています。 

1つの問題は、ゲートウェイWAP懸念MIMEタイプでは、 Webサーバーから返さ発生します。  JADまたはJAR場合は、サーバーが誤ってファイルを転送処理を行うので、間違ったMIMEのタイプは、ゲートウェイと、その後の電話は、ユーザーの要求を返します。  は、次のMIMEの種類を使用しMIDletsの適切なダウンロードを確保するには: 

text/vnd.sun.j2me.app-descriptor jad 
application/java-archive jar 

13.5 ランダムなフォーラムの投稿

場合は、サーバー上の適切な設定が必要だMIMEファイルが格納.JAD/.JAR 。  は、アプリケーションをデバイスにダウンロードできるようになりますした。  (必ずしも) WAプロトコルを使用していないことを心に留めてください: -このプロセスはデバイス固有のものです  -X AZBへの絶対パスをしている方が良いだろうとX AZC(すなわちX AZD)に設定 

13.6 ランダムなフォーラムの投稿

Siemensデバイスには、少なくとも、あなたJavaこれは、 GPRSのWAPとは異なるため、ある特定の設定をしている。  あなたがWAPでは、移動することがありますmidletときに、別のセットアップが自動的にダウンロードを達成するに変更されて発見されています。  のM50便利で、ご自分のプロバイダのパラメータに応じてJavaプロファイルを設定する必要があります。 c55便利で、同じ設定「HTTP profile」と呼ばれ、また、アプリケーションのダウンロード(例えば、他の種類のhttp接続のために使用されます) 。 

13.7 高度な署名のMIDletのものその他の興味深いリンク

http://wirelesssoftware.info/midp_2.0/javax/microedition/midlet/doc-files/PKIAppendix.html

13.8 とてもクールなアプリケーションプログラミングの導入

http://wireless.java.sun.com/midp/articles/getstart

13.9 http://wireless.java.sun.com/midp/articles/deploy/

リモートからワイヤレスアプリケーションを展開するには: 

リモートのWebサーバーにアップロードあなたのアプリケーションファイル( JADとJAR ) 。  もしあなたのプロジェクトのゲームの名前は、例えば、プロジェクトの家のbinディレクトリ(たとえばからファイル: games.jadとgames.jarアップロード、 <toolkit>/apps/games/bin ) 。  は、 2つのファイルを、サーバー上の同じディレクトリに終わる必要があります。 

Webサーバーを再構成するようにファイルJADと認識JAR : 

ファイルの種類はJADについては、 .jadにtext/vnd.sun.j2me.app-descriptorにMIMEのタイプのファイル拡張子を設定してください。 

ファイルの種類はJARについては、 .jarにapplication/java-archiveにMIMEのタイプのファイル拡張子を設定してください。 

どのように構成するにはWebサーバーによって異なりますが1つを使用している。  例えば、もし、あなたのweb.xmlファイルは、以下の行が含まれていることを確認Tomcatを使用している: 

<mime-mapping> 
<extension>jad</extension> 
<mime-type>text/vnd.sun.j2me.app-descriptor</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>jar</extension> 
<mime-type>application/java-archive</mime-type> 
</mime-mapping> 


あなたのJADファイルのプロパティを変更MIDlet-Jar-URLをJARファイルのURLを指定します。  たとえば、 games.jadの場合は、サーバーを変更するにはアップロードのコピーに... 

MIDlet-Jar-URL: games.jar 

...  ...

MIDlet-Jar-URL: http://YourWebServerAddress:port/pathTo/games.jar 

13.10 その他のリンク

http://www.microjava.com/articles/techtalk/midp?PageNo=3 
http://www.corej2me.com/DeveloperResources/sourcecode/general/multipleMIDlets/index.shtml 

13.11 Nokia J2MEプログラム開発リンク

一Nokiaサイト投稿者:
Nokia's J2MEの実装では、業界標準のMIDP 1.0とCLDC 1.0構成されます。  このプラットフォームは、 Nokia User Interface (UI) APIが延長されます。  これはCLDC 1.0またはMIDP 1.0で指定されていない特定のアプリケーション開発者の基本的な電話機能にアクセスできます。  Nokia UI APIシンプルなオーディオ機能は、振動、ディスプレイ照明、グラフィックの強化だけでなく、いくつかの関連へのアクセスを提供しています。 
私は受け取った電子メールメッセージ投稿者:
Nokiaので、それを考えることもできますカスタム変更するあらゆる種類の携帯電話はとても開放ているようだ。  javaゲームをするには、かかるイメージし、実際にアップロードする写真をあなたのサイトに吹き出しの追加振動を追加する可能性がある!  君は自分のサーバーの書き込み可能性があると、人々がアップロードするもの! 
ここにいくつかのクールな7650リンクです:
DOOMの7650!!  : http://www.wildpalm.co.uk/Doom7650.html 
この7650ページ: http://www.nokia.com/nokia/0,1522,,00.html?orig=/phones/7650/index.html 
Nokia J2ME FAQ : http://www.nokia.com/nokia/0,5184,2776,00.html 
ダウンロードSDKs 、 J2MEチュートリアル、および詳細: http://www.forum.nokia.com 

13.12 携帯電話のプログラムのリンク

(1) http://midlet.org 
(2) http://spruce.jp/freemidlets 
(3) http://www.gameloft.com 
(4) http://www.microjava.com 

14. J2ME対BREW

14.1 はじめに

この2つの主要な携帯端末向けソフトウェアプラットフォーム: J2MEとBREWされています。  多くの携帯電話キャリアJ2ME電話サポートを提供する:決めたAT&T 、 T-Mobile 、 Sprint 。  1つの主要航空会社しかBREW支援を提供する電話: Verizonことを決定しました。 

J2MEがJ2MEプログラムを実行することができますBREWプログラムを実行することはできませんをサポートする携帯端末。  BREW BREWは、モバイルデバイスをサポートするプログラムを実行することができますが、 J2MEプログラムを実行することはできません。 

モバイルデバイスの製造業者はしばしば、いくつかのバージョンの異なる無線放送基準に基づいて提供しています。  たとえば、 MotorolaのT720の2つのバージョン: GSMとCDMA提供しています。  偶然にも、 T720のGSMのバージョン、およびT720のCDMAバージョンのプログラムをサポートしていますJ2MEアプリケーションBREWサポートしています。  したがって、無線放送規格は技術的に電話オペレーティングシステムでは、市場の状況に関連していないが、この偶然の相関関係につながっている。 

14.2 携帯電話サービスプロバイダは、顧客が携帯電話のデバイスで何ができるかを決める

ここに携帯電話サービスプロバイダーの顧客に何ができるの要約です: 
[A]  AT&T :
   [1] J2ME Applications:
         Download from any site on the Internet, Over The Air (OTA);
   [2] GIF Files (Images):
         Download from any site on the Internet, Over The Air (OTA);
   [3] MIDI Files (Ring Tones):
         Download from any site on the Internet, Over The Air (OTA);
   [4] Data Cable:
         Cannot (officially) be used to transfer files;

[B] Verizon :
   [1] BREW Applications:
         Download for a fee through Get It Now! (GIN), Over The Air (OTA);
   [2] GIF Files (Images):
         Download for a fee through Get It Now! (GIN), Over The Air (OTA);
   [3] MIDI Files (Ring Tones):
         Download for a fee through Get It Now! (GIN), Over The Air (OTA);
   [4] Data Cable:
         Cannot (officially) be used to transfer files;

[C] Sprint :
   [1] J2ME Applications:
         **** UNKNOWN ****
   [2] GIF Files (Images):
         Download from any site on the Internet, Over The Air (OTA);
   [3] MIDI Files (Ring Tones):
         Download from any site on the Internet, Over The Air (OTA);
   [4] Data Cable:
         Cannot (officially) be used to transfer files;

[D] T-Mobile :
   [1] J2ME Applications:
         Download for a fee through T-Mobile's service, Over The Air (OTA);
   [2] GIF Files (Images):
         **** UNKNOWN ****
   [3] MIDI Files (Ring Tones):
         **** UNKNOWN ****
   [4] Data Cable:
         Cannot (officially) be used to transfer files;
AT&Tと携帯電話のデバイスへの開発者のアクセスやマルチメディアファイルを、インターネット上で最高の顧客を提供しています。  どうやら、彼らのネットワークを通じてAT&Tバイト運搬のビジネスに集中するのではなく、販売することにしたマルチメディアコンテンツのビジネスになると試みる。 

Verizonそれら全ての中で最も過酷な携帯電話サービスプロバイダーです。  マルチメディアコンテンツの販売は、人工のビジネスを保護するために、自分の携帯電話機器の使用を制限する顧客「Get It Now!」彼らのビジネスモデルは、 Verizonとの契約を終了するか、または「Get It Now!」ポータルをバイパスする方法を見つける多くの不満の顧客に刺激を受けています。  顧客が競争のために簡単にアクセスが不足している)これらの状況(すなわち、食品の代替エネルギー源にアクセスできない映画館やスポーツアリーナと同様、マルチメディアVerizonにアクセスするための非常に高い金額を請求することができるファイルの食べ物を非常に高い金額を請求することができますとソフトウェアのプログラムのための顧客を簡単にマルチメディアファイルやソフトウェアプログラムのための代替ソースにアクセスすることはできません。 

14.3 Binary Runtime Environment for Wireless (BREW)

BREW 「Binary Runtime Environment for Wireless 、プロプライエタリなソフトウェアプラットフォームQUALCOMMによって開発されています。  は、次のインターネットサイトにアクセスしBREWの詳細については: 

http://www.qualcomm.com/brew

このSDK Qualcommからダウンロードすることができます。  2002年には、 SDK 、およびソフトウェアMicrosoft Visual C++ 6.0を使用してビルドするプログラムは、携帯電話に転送される可能性がある、テストの署名なしで「使用される可能性がある」 。 

Verizon契約ですべての電話BREW使用しています。  すべてのソフトウェア、画像、音楽Verizon's 「Get It Now!」ポータルを通じて、転送する必要があります通常は、ネットワーク帯域幅のコストを超えて手数料を支払っている。 

14.4 Java 2 Platform, Micro Edition (J2ME)

J2ME 「Java 2 Platform, Micro Edition」 、 Javaランタイム環境は、 「高度に最適化」されています。  は、次のインターネットサイトにアクセスしJ2MEの詳細については: 

http://java.sun.com/j2me

既にいくつかのJavaプログラミングしている可能性があります。  J2MEのJavaクラスのデスクトップコンピュータプログラムに使用されるの多くが含まれています。  もちろん、純粋なJavaコードされているすべてJavaクラス、および任意のハードウェアに依存しないか、またはオペレーティングシステムの機能を、任意の仮想マシンJavaのコンテキスト内で実行するためにコンパイルすることができます。 

人のスレッドは、ソケットを作成することができます、グラフィックキャンバスなど、非常に簡単です。  人しか*.JARファイル(および可能性を*.JADファイル)をダウンロードするための携帯電話上のアプリケーションをインストールする必要があります。 

Java SDKダウンロードは無料です。  Javaのためのマニュアルを徹底されています。  百万人ものJava用のコードを開発した。  は非常に多くのインターネットフォーラムJavaプログラミングのさまざまな側面について議論されています。 

インターネット検索のほんの数分で、私は、何百もの興味深いソフトウェアプログラムを検出し、画像、サウンドエフェクト、すべてのMotorola T720 GSM/J2ME携帯電話の-そして、すべてのファイルをダウンロードするには何もコスト。 

私は自分の財産のマルチメディア面を最大限に利用する(すなわち、私の携帯電話を取ることができることで)何かの携帯電話ネットワークを使用するよりも私の携帯電話サービスプロバイダを支払うことなく、興奮しています。 

14.5 マイBREWとVerizonホラーストーリー

私は両方のプラットフォームJ2MEとBREWと、私の意見で、私は両方の技術の長所と短所がある、と思うと、かなりの能力は非常に簡単に洗練されたプログラムの作成に使用されているソフトウェアを作成している。 

しかし、ビジネスを作成し、携帯電話向けソフトウェアの販売で1つの質問:もし私がソフトウェアの開発を検討することから始める「必要があります、私はそれを販売できるようになる興味を持っているのか。」 

ビジネスJ2MEプラットフォームの場合は、ほとんどの携帯電話サービスプロバイダーの顧客すべてのインターネットサイトにアクセスし、任意のJ2MEソフトウェアをダウンロードして、携帯電話ネットワークを介して転送バイト数のコストを超えてすべての費用を課すことなくできるソフトウェアを開発しています。  したがって、ソフトウェア開発ビジネスの潜在的な顧客にアクセスすることができるように、特定の顧客から任意のソフトウェアの購入のための資金を集め、その独自の手配をすることができます。 

ビジネスの場合はBREWプラットフォーム用のソフトウェアを開発し、 Verizon決定するかどうかは、ソフトウェアの顧客に販売できるようになります。  さらに、 Verizonの権利のためには、ソフトウェアの販売価格の大きな割合を展開するとは排他的なポータルを通じてソフトウェアの販売を許可している。 

ここに私のBREWとVerizon恐怖物語です: 

私は携帯電話用のソフトウェアプログラムのための時間が開始された携帯電話でBREWとJ2MEプログラムを実行できるようにするには、ユニークなアイディアを持っていた。  私はこれを作成することも考えられ、これらのプラットフォームのための長蛇の前に、競合他社も同様の製品を作成する準備ができているようなユニークなプログラムを公開私はとても興奮していた。  私は最終的には、メイン裕福になる私の人生で何かをするだろうと確信していた。  だから、私は自分の仕事を辞めると私のソフトウェアのアイデアのBREWのバージョンで動作を開始した。  ハードワークの6ヶ月間、無収入の後、私はBREWプログラムを終了させて!  私Qualcommにテスト用に送信できる状態になった。 

その時私はゾッとするような発見をしたの:たとえ私のプログラムは、品質保証テストに合格し、 Verizon私のソフトウェアの販売を承認する必要がある-とX AZC何らかの理由の明白な理由(以降の私のソフトウェアの不承認可能性がある、または攻撃されてVerizon'sビジネスのいくつかの他の側面との競争) 。  私は単純に、この可能性を想像していない。  すべて私BREW開発については、チャレンジ品質保証テストに合格して黙示をお読みください。  私は、必要なソフトウェアを携帯電話のサービスプロバイダによって承認しても何も言及を読む。  私は、携帯電話サービスプロバイダーの攻撃や悪意のあるプログラムを販売しないように、このような配慮が選択する可能性がありますので私の特定のプロジェクトでは、私は、より一般的な概念については、携帯電話のサービスプロバイダを選択するかもしれないとは思わないの取るに足りないようだ学ぶことに驚いたされていないと普通のソフトウェアプログラムを販売しないように! 

売りVerizon場合、ネットワーク上では私のソフトウェアを承認するとVerizonを通じて1つは、すでにいくつかのビデオゲームのプログラムを販売していた私の友人で、一Verizon代表質問...  同関係者は述べたVerizon 「:」いいえ、幅広いジャンルが存在するため、すでにいくつかの他のソフトウェアプログラムされた。  私のソフトウェアは、語彙の家庭教師のSATとGRE標準化テスト用の特別な配慮を( )だったが、 Verizon代表は、単語ゲームのジャンルは、プログラムは、 「取得」の合計が10単語に満たないという事実が関連して「いる」にもかかわらず、混雑「は今すぐ!」 、および他のプログラムは非常に異なっていた(例えば、クロスワードパズル、 「Scrabble」 、 「Boggle」 、等)のポータル。  私のプログラムは、技術的な達成されました:これは、類義語とantonymsに沿って、単語の意味グループ(ので、クイズの質問に)挑戦となる、 1 MB未満されたプログラムで5000単語の定義を格納します。  私のプログラムされ、市場が何カ月も、数年ごとに異なる可能性がある。 

私は、落ち込んで、怒っていた財政を破った。  仕事の6カ月間、すべての理由は、売上高はポータル内のみVerizon何千ものコピーを販売する特定されたソフトウェアを、そして私のソフトウェアは、高Verizon代表販売していたと思うしていない可能性を無駄にした。 

ここに私はこの苦い経験から学んだ最も重要な教訓です:  作業を開始する前には事業計画のすべての部分を確認してください。  (理想的には、事業計画のあらゆる部分を繰り返し、様々な重要な手続きの実際の実行によって、前と努力は、製品を作成する時にテストされる可能性があります。 ) 

私の前に私は、ソフトウェアの開発を始めましたかがあるかどうか私のソフトウェアを販売するすべての障害になる可能性はないチェックが必要です。  私は私のVerizonソフトウェアの販売を許可しないことを選択できることに気がついただろう。 

私は2番目の教訓を学んだこと:  は、他の人の能力かどうかを顧客にアクセスすることを決定する必要がある状況を避ける! 
colinfahey.com
連絡先情報
English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية