ホームページ >Java >&#&チュートリアル >J2MEプログラム開発の徹底基礎解説まとめ(2)
17. J2MEネットワークプログラミングでCMWAPプロキシを使用する
China Mobileが提供するネットワーク接続はCMNETとCMWAPの2種類に分かれており、このうちCMNETはインターネットに無制限にアクセスでき、料金は比較的高価です。 CMWAP は HTTP コードに似ており、HTTP をサポートするアプリケーションにのみアクセスできますが、料金は安く、安定性は比較的劣ります。
実際の J2ME ネットワークプログラミングでは、通常、J2ME ではネットワークに接続するために CMWAP プロキシを提供する必要があります。コードは次のとおりです。
HttpConnection http = (HttpConnection)Connector。 .open(( "http://10.0.0.172/"+url);
http.setRequestPROperty("X-Online-Host",ServerName);
たとえば、アクセスする必要があるアドレスは次のとおりです: http:/ /www.test.com/login/loginServlet
上記のコードは、
HttpConnection http = (HttpConnection)Connector.open(("http://10.0.0.172/"+
"login/loginServlet");
http .setRequestProperty("X -Online-Host","www.test.com");
実際に使用する場合は、ServerNameの代わりに、実際にアクセスする必要があるアドレスのドメイン名またはIPを使用するだけで済みます。例の「www.test.com」は、コード内の URL を後続のアドレス クラスを使用して置き換えます (例の「login/loginServlet」など)。プログラムでは実際に CMWAP プロキシを使用して接続できます。開発 時間処理について簡単に説明します
1. 時間の表現
J2MEでは時間には2つの表現があります:
1. GMT 1970年1月1日午前0時から現在までのミリ秒数を表します。メソッドは2つの時間の差を比較するのに適しています
2. オブジェクトの形式で表現されます
2. 時間処理関連クラス
J2MEには時間処理が関係します: 3つのクラス:
1. システムクラス
long time = System . currentTimeMillis();
現在の時刻を取得するには、このメソッドを使用します。 時間の式は、上記の 2. Date クラス
Date date = new Date();
現在の時刻を取得して表現します。オブジェクトの形式
3. Calendarクラス
Calendar Calendar = Calendar.getInstance();
3. 時刻処理の具体的な操作
1 , 上記3つの式の変換:
a) で得られた時刻を変換します。 System クラスを Date オブジェクトに変換します
Date date = new Date (System.currentTimeMillis());
b) Date 型オブジェクトを Calendar 型オブジェクトに変換します
Calendar Calendar = getInstance(); Date();
Calendar.setTime(date);
2. Calendar を使用して、いくつかの日付操作を完了します。
Calendar は、最も一般的に使用され、時間処理で最も多くの機能を備えています。特定の時刻の日付と曜日として。
日付の取得:
Calendar Calendar = Calendar.getInstance();
……
int day = Calendar.get(Calendar. DATE);
日付、年、週を取得する操作はこれと同様です。
カレンダーで月を表す数字は実際の数字とは1つ異なります。つまり、1月は数字0で表され、2月は数字1で表され、...12月は数字で表されます。 11.
19. J2MEにおける乱数処理完全ガイド
プログラム内で乱数を生成し、人工知能分野などでの用途を比較する J2MEにおける乱数生成の操作を簡単にまとめました。 . 皆さんのお役に立てれば幸いです。
J2SEとは異なり、J2MEは乱数を生成するためにMathクラスの乱数を使用できません。乱数を生成するにはjava.utilパッケージのRandomクラスのみを使用できます。
1. Random 型のオブジェクトを作成します:
Random random = new Random(); これは次のコードと完全に等価です:
Random random = new Random(System. currentTimeMillis());
これは、作成するシード番号として現在の時刻を指定します。
2つ目は、自分でシード番号を指定して作成する方法です。
必要に応じて、上記の 2 つの方法のいずれかを使用できます。
2. 乱数を生成する:
ランダムオブジェクトを作成した後、乱数を生成できます:
ランダムな整数を生成します:
int k =random.nextInt();
ランダムな長整数を生成します:
long l =random。 nextLong();
3. 指定した範囲の数値を生成します:
たとえば、0-10の間の乱数を生成します:
int k = random.nextInt();
int j = Math.abs(k % 10);
まずランダムな整数 k を生成し、次に k と 10 を使用して剰余を計算し、最後に Math クラスの abs メソッドを使用して絶対値を取得し、0 ~ 10 の範囲の乱数を取得します。
次のような 0 ~ 15 の範囲の乱数を取得します:
int k =random.nextInt();
int j = Math.abs(k % 15);
10 ~ 20 の範囲の乱数を取得します:
int k =random.nextInt(); int j = Math.abs(k % 10) + 10; —Font は低レベルのユーザー インターフェイスでより優れたパフォーマンスを実現できるので、Font クラスを使用する方法は?
まず第一に、携帯電話デバイスの制限により、携帯電話でサポートされるフォントの種類は非常に限られているため、J2ME では携帯電話でサポートされるデフォルトのフォントのみを使用して Font クラス オブジェクトを構築できます。 Font クラスのオブジェクトを作成するときに使用されるメソッドは次のとおりです:
GetFont(int face, int style, int size); 例: Font font = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_MEDIUM);
どのパラメータであっても、システムによって設定された値のみを使用できます。これらの値の具体的なサイズは、携帯電話によって異なる場合があります。以下は 3 つのパラメータの値の詳細な紹介です:
face パラメータはフォントの外観を指し、その値は次のとおりです:
FACE_MONOSPACE——等幅フォント
FACE_PROPORTIONAL——バランスフォント
FACE_SYSTEM ——システムフォント
styleパラメータはフォントのスタイルとその値を指します:
STYLE_BOLD - 太字
STYLE_ITALIC - 斜体
STYLE_PLAIN - 通常
STYLE_UNDERLINED - 下線
STYLE_BOLD STYLE_ITALIC - 太字斜体
STYLE_UNDERLINED STYLE_BOLD - 下線付き B古い
STYLE_UNDERLINED style_italic-下線付き斜体
スタイル_underlined style_italic style_bold -bold bold italic
サイズパラメーターは、フォントのサイズ、その値、size_small -smaze size_medium -medium
size_lar ge——big
nem上記のパラメータを使用して、必要なフォント オブジェクトを組み合わせることができます。
以下は一般的に使用されるフォント操作の一部です:
1. システムのデフォルトフォントを取得します:
Font font = Font.getDefaultFont();
2. panit メソッド内で、Graphics パラメーターの名前が g であると仮定して、get現在のフォント メソッドは次のとおりです:
Font font = g.getFont();
3. panit メソッド内で、Graphics パラメーターの名前が g であると仮定すると、現在のフォントを設定するメソッドは次のとおりです:
g.setFont( font);
ここで、 font はフォント オブジェクトを構築します。
4. MIDP2.0では、Listで各行のフォント形式を設定できます。そのメソッドは、
list.setFont(0,font);
上記のコードは、リストの最初の行をフォントタイプfontに設定します。 。
21. J2MEモバイルプログラム開発における色の使い方
J2ME携帯電話の開発過程では、プログラムのパフォーマンスを向上させるために、描画に色を使用することがよくあります。
J2MEテクノロジーは比較的シンプルであるため、特別なカラークラスを実装せず、RGBの概念のみを使用して色を表現します。 RGB の概念を簡単に説明します。色は赤、緑、青の 3 つの原色で構成されます。したがって、これら 3 つの色の組み合わせを使用して、その中の特定の色を表すことができます。 B の各値は 0 ~ 255 です。色を表現する場合、3つの数字で表現することもできますし、0X00RRGGBBのような16進数で表現することもできます。 一般的な色の表現形式は以下の通りです:
赤: (255,0,0 ) または 0x00FF0000
緑: (0,255,0) または 0x0000FF00
青: (255,255,255) または 0x00FFFFFF
他の色も上記の方法で組み合わせることができます。
色の表現を理解した後、J2ME プログラムで色の使用方法を紹介します。関連するメソッドはすべて Graphics クラスにあり、次のものが含まれます:
1.getColor():
現在使用されている色を取得、戻り値。 value は、0x00RRGGBB 形式の数値です。例:
int color = g.getColor();
ここで、 g は Graphics タイプのオブジェクトです。
2.setColor(int RGB):
使用する色を設定します。例:
g.setColor(0x00ff0000);
3.setColor(int red, int green, int blue)
上記のメソッドと同じ効果があります。例:
g.setColor(255,0,0 );
Graphicsで使用する色を設定した後、描画時に指定した色を描画できるようになります。
22. J2MEネットワーキングアプリケーションでクライアントの携帯電話番号を取得します
J2ME プログラムの開発プロセスでは、特定のニーズに応じてユーザーの携帯電話番号を取得する必要があることがよくありますが、この機能は標準の J2ME クラス ライブラリには提供されていません。
チャイナモバイルのCMWAP方式を使用してネットワークに接続すると、チャイナモバイルはx-up-calling-line-idというヘッダー情報にユーザーの携帯電話番号を入れ、そのヘッダー情報を読み取ることでユーザーのIDを取得できます。具体的なコードは以下の通りです:
String usermphone = http.getHeader("x-up-calling-line-id");
ここで http は HttpConnction 型のオブジェクトです。
23. J2MEを使用して携帯電話のショートメッセージを送信する
プログラムでは、ショートメッセージを送信する方法は一般に3つあります:
1. プログラムを使用して、メジャー
上記は、J2ME プログラム開発の包括的な基本説明のまとめ (パート 2) です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) をご覧ください。