Dunia adalah jaringan. Apakah itu seni, ilmu pengetahuan atau perdagangan jaringan di mana-mana. Dengan demikian, dunia ponsel tidak dapat berbeda. Bahkan ponsel adalah sebuah ikon dari dunia terhubung dan jaringan. Salah satu tugas dasar yang Java 2 Platform, Micro Edition dikandung adalah untuk konektivitas antara ponsel dan server.
Platform J2ME memungkinkan kita untuk berkomunikasi dengan server web yang sangat mudah. Komunikasi dengan web server mungkin diperlukan karena salah satu alasan berikut:
- Berkomunikasi data kontak penting
- Mengkomunikasikan informasi keuangan
- Multi-player game
- Komunikasi pribadi misalnya. Pesan Instan
Bahkan,
saat ini jaringan arsitektur telah berkembang ke n-tier arsitektur dan
ponsel dan personal digital assistant merupakan bagian tidak terpisahkan
dari mereka. Jadi kita melihat bahwa komunikasi adalah salah satu tugas paling penting dari setiap aplikasi ponsel berbasis. Dalam bab ini kita akan berkonsentrasi pada komunikasi ponsel dengan server web. Kami
tidak akan masuk ke dasar-dasar jaringan komunikasi karena ini adalah
di luar cakupan buku dan juga tidak sangat penting untuk membangun
aplikasi praktis. Kita akan melihat masalah konektivitas jaringan dari sudut HttpConnection antarmuka.
The Mobile Information Device Profile 1.0 mendukung serangkaian sub HTTP. Antarmuka javax.microedition.io.HttpConnection adalah kunci untuk komunikasi kita dengan server. Interface ini mendukung HTTP 1.1. Meskipun
antarmuka HttpConnection merupakan pilihan terbaik saat menghubungkan
ke web server tetapi Anda dapat menghubungkan ke web server baik
menggunakan StreamConnection atau ContentConnection untuk mengambil
data.
Antarmuka HttpConnection memberikan metode dan kolom untuk mengatur dan mengelola koneksi HTTP. Interface ini mewarisi antarmuka ContentConnection. Ini adalah antarmuka yang sangat besar yang membantu dalam mengelola semua tiga negara bagian sambungan, yaitu:
- Pengaturan
- Terhubung
- Tutup
Antarmuka HttpConnection memungkinkan pengiriman permintaan di GET serta mode POST. Oleh karena antarmuka HttpConnection memberi kita semua yang kita butuhkan untuk aplikasi yang terhubung.
Sekarang kita akan membahas contoh praktis untuk antarmuka HttpConnection. Dalam contoh ini kita akan mengatur koneksi jaringan ke URL tertentu. Maka kita akan mendapatkan InputStream dan membaca isi yang kita mengambil dari halaman web pada URL tertentu.
Contoh Kode: Mengambil data dari server web menggunakan HttpConnection
/ *
* ConnectMIDlet.java
*
* Dibuat pada tanggal 8 Juni, 2004 21:38
* /
mengimpor javax.microedition.midlet *;.
mengimpor javax.microedition.lcdui *;.
import java.io. *;
mengimpor javax.microedition.io *;.
/ **
* Sebuah MIDlet yang menunjukkan contoh sederhana untuk menghubungkan ponsel ke web server
* Dan mengambil data.
* @ Author Saurabh Jain
* @ Version 1.0.0
* /
ConnectMIDlet public class MIDlet meluas mengimplementasikan CommandListener
{
/ / Variabel untuk mengetahui keadaan inisialisasi
boolean swasta init;
/ / Command Variabel
swasta Command exitCommand; / / Perintah keluar
Komando pribadi Connect;
/ / Variabel aplikasi Penting
swasta Tampilan layar; / / Layar untuk MIDlet ini
swasta TextBox t;
swasta String st;
public void startApp ()
{
if (init == false)
{
menampilkan Display.getDisplay = (ini);
Hubungkan Command = baru ("Connect", Command.OK, 1);
exitCommand = new Command ("Keluar", Command.EXIT, 2);
t = new TextBox ("SKJ Explorer", "http://www.skjworld.com", 400, 0);
t.addCommand (Connect);
t.addCommand (exitCommand);
t.setCommandListener (ini);
init = true;
}
display.setCurrent (t);
}
/ **
* Jeda adalah no-op karena tidak ada kegiatan latar belakang atau
* Catatan toko yang perlu ditutup.
* /
public void pauseApp () {
}
/ **
* Destroy harus semuanya pembersihan tidak ditangani oleh kolektor sampah.
* Dalam hal ini tidak ada yang perlu pembersihan.
* /
public void destroyApp (boolean unconditional) {
}
/ *
* Menanggapi perintah, termasuk keluar
* Pada pembersihan keluar perintah, dan memberitahukan bahwa MIDlet telah dihancurkan.
* /
public void commandAction (Command c, s dapat ditampilkan)
{
if (c == this.Connect)
{
t.setString (this.INet (t.getString ()));
}
else if (c == exitCommand)
{
destroyApp (false);
notifyDestroyed ();
}
}
/ / Metode untuk mendapatkan konten dari URL tertentu
private String Inet (String url)
{
/ / Inisialisasi variabel lokal penting
HttpConnection c = null;
InputStream adalah = null;
StringBuffer sb = new StringBuffer ();
String s = "1";
mencoba
{
/ / Membuat sebuah HttpConnection
c = (HttpConnection) Connector.open (url);
c.setRequestProperty ("Terima", "text / html");
/ / Mendapatkan InputStream akan membuka koneksi
adalah = c.openInputStream ();
/ / Dapatkan panjang dan mengolah data
int len = (int) c.getLength ();
if (len> 0)
{
int i, data;
i = 0;
data = 0;
while (i <t.getMaxSize () && data = -1!)
{
data = is.read ();
sb.append ((char) data);
i + +;
}
s = sb.toString ();
}
lain
{
int ch;
while ((ch = is.read ())! = -1)
{
sb.append (ch);
}
s = sb.toString ();
}
}
catch (Exception e)
{
s = e.toString ();
}
akhirnya
{
mencoba
{
jika (ini! = null)
is.close ();
if (c! = null)
c.close ();
}
catch (Exception e)
{
e.toString ();
}
}
kembali s;
}
}
|
Tidak ada komentar:
Posting Komentar