▼MIDP2.0メモ▼
HTTP通信を行う
HTTP通信を行う。
プログラム
HttpEx.java import javax.microedition.lcdui.*; import javax.microedition.midlet.*; //HTTP通信を行う(本体) public class HttpEx extends MIDlet implements Runnable { static HttpCanvas c;//キャンバス //コンストラクタ public HttpEx() { c=new HttpCanvas(); (new Thread(this)).start(); } //処理 public void run() { Display.getDisplay(this).setCurrent(c); c.exe(); } //アプリの開始 public void startApp() { } //アプリの一時停止 public void pauseApp() { } //アプリの終了 public void destroyApp(boolean flag) { } }
HttpCanvas.java import javax.microedition.io.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; import java.io.*; //HTTP通信を行う(キャンバス) class HttpCanvas extends Canvas { private final static String URL=//URL "http://www.saturn.dti.ne.jp/~npaka/sorami/test.txt"; private String info="?";//情報 //処理 void exe() { try { info=readText(URL); } catch (Exception e) { info=e.toString(); } repaint(); } //描画 public void paint(Graphics g) { g.setColor(255,255,255); g.fillRect(0,0,getWidth(),getHeight()); g.setColor(0,0,0); g.drawString(info,0,0,g.LEFT|g.TOP); } //テキストの読み込み private String readText(String url) throws Exception { return new String(readByte(url)); } //バイトデータの読み込み private byte[] readByte(String url) throws Exception { byte[] w=new byte[10240]; int rc,size; HttpConnection c =null; InputStream in =null; ByteArrayOutputStream out=null; try { //ネットとの接続 c =(HttpConnection)Connector.open(url); in =c.openInputStream(); out=new ByteArrayOutputStream(); //レスポンスコードのチェック rc=c.getResponseCode(); if (rc!=HttpConnection.HTTP_OK) { throw new Exception(); } //データの読み込み while (true) { size=in.read(w); if (size<=0) break; out.write(w,0,size); } //ネットとの切断 out.close(); in.close(); c.close(); return out.toByteArray(); } catch (Exception e) { //例外処理 try { if (out!=null) out.close(); if (in !=null) in.close(); if (c !=null) c.close(); } catch (Exception e2) { } throw e; } } }
S!アプリ(P型)の通信制限
- 50KB制限
- MIMEタイプは「application/Java-archive」「application/Java」
- JADには「MIDlet-Network: Y」が必要
HttpEx.jad MIDlet-1: HttpEx, , HttpEx
MIDlet-Jar-Size: 2098
MIDlet-Jar-URL: HttpEx.jar
MIDlet-Name: HttpEx
MIDlet-Vendor: My Vendor
MIDlet-Version: 1.0
MicroEdition-Profile: MIDP-1.0
MicroEdition-Configuration: CLDC-1.0
MIDlet-Application-Range: 0,0
MIDlet-Network: Y
S!アプリ(3GC)の通信制限
- ストレージアクセス時の確認ダイアログを消すには、ユーザーがアプリのメニューで「確認ダイアログを表示しない」を選択する必要がある。
- MIMEタイプは「application/Java-archive」「application/Java」
- JADには「MIDlet-Permissions: javax.microedition.io.Connector.http」が必要
HttpEx.jad MIDlet-1: HttpEx, , HttpEx
MIDlet-Jar-Size: 2133
MIDlet-Jar-URL: HttpEx.jar
MIDlet-Name: HttpEx
MIDlet-Vendor: My Vendor
MIDlet-Version: 1.0
MicroEdition-Profile: MIDP-2.0
MicroEdition-Configuration: CLDC-1.1
MIDxlet-ScreenSize: 240,260
MIDlet-Permissions: javax.microedition.io.Connector.http