<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title></title>
	<atom:link href="http://www.andisun.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.andisun.com</link>
	<description></description>
	<lastBuildDate>Tue, 30 Mar 2010 02:20:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>J2ME: Menampilkan Gambar dengan Class Canvas</title>
		<link>http://www.andisun.com/tutorials/j2me-programming/j2me-menampilkan-gambar</link>
		<comments>http://www.andisun.com/tutorials/j2me-programming/j2me-menampilkan-gambar#comments</comments>
		<pubDate>Fri, 15 Jan 2010 02:52:08 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[J2ME-Mobile Programming]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[J2ME]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=551</guid>
		<description><![CDATA[Salah satu kelebihan class Canvas adalah dapat menampilkan gambar. Pada modul ini kita akan membahas kode program untuk menampilkan file gambar di layar handphone.
Pertama anda siapkan file gambar yang akan ditampilkna. Biasanya file gambar yang ditampilkan dalam layar HP bertipe “PNG”.
Siapkan gambar degan nama dan extensi berikut: &#8220;btw.png,globe.png,ipod.png,printer.png,sepeda.png&#8221;
File di atas dapat diganti sesuai dengan keinginan [...]]]></description>
			<content:encoded><![CDATA[<p>Salah satu kelebihan class Canvas adalah dapat menampilkan gambar. Pada modul ini kita akan membahas kode program untuk menampilkan file gambar di layar handphone.</p>
<p>Pertama anda siapkan file gambar yang akan ditampilkna. Biasanya file gambar yang ditampilkan dalam layar HP bertipe “PNG”.</p>
<p>Siapkan gambar degan nama dan extensi berikut: &#8220;btw.png,globe.png,ipod.png,printer.png,sepeda.png&#8221;<br />
File di atas dapat diganti sesuai dengan keinginan kita.</p>
<p><strong>MIDShowImage.java</strong></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p551code2'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p5512"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
</pre></td><td class="code" id="p551code2"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.microedition.midlet.*</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.microedition.lcdui.*</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ShowImageNext <span style="color: #000000; font-weight: bold;">extends</span> MIDlet <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> Display display<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Acanvas+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Canvas</span></a> canvas<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> Command cmdNExt<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">int</span> counter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> ShowImageNext<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
canvas <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> CanvasShowImg<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> startApp<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
display.<span style="color: #006633;">getDisplay</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setCurrent</span><span style="color: #009900;">&#40;</span>canvas<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> pauseApp<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> destroyApp<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">boolean</span> unconditional<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//End of MIDlet</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> CanvasShowImg <span style="color: #000000; font-weight: bold;">extends</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Acanvas+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Canvas</span></a> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a> currentImg<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> CanvasShowImg<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #000066; font-weight: bold;">void</span> paint<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Agraphics+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Graphics</span></a> g<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//set background to white</span>
&nbsp;
g.<span style="color: #006633;">setColor</span><span style="color: #009900;">&#40;</span>0xFFFFFF<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
g.<span style="color: #006633;">fillRect</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">getWidth</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">getHeight</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> option <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">&quot;/btw.png&quot;</span>, <span style="color: #0000ff;">&quot;/globe.png&quot;</span>, <span style="color: #0000ff;">&quot;/ipod.png&quot;</span>, <span style="color: #0000ff;">&quot;/printer.png&quot;</span>, <span style="color: #0000ff;">&quot;/sepeda.png&quot;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
&nbsp;
currentImg <span style="color: #339933;">=</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a>.<span style="color: #006633;">createImage</span><span style="color: #009900;">&#40;</span>option<span style="color: #009900;">&#91;</span>counter<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>counter<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Exception</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
e.<span style="color: #006633;">getMessage</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
g.<span style="color: #006633;">drawImage</span><span style="color: #009900;">&#40;</span>currentImg, getWidth<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span>, getHeight<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span>, <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Agraphics+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Graphics</span></a>.<span style="color: #006633;">VCENTER</span> <span style="color: #339933;">|</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Agraphics+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Graphics</span></a>.<span style="color: #006633;">HCENTER</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> keyPressed<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> keycode<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">switch</span> <span style="color: #009900;">&#40;</span>getGameAction<span style="color: #009900;">&#40;</span>keycode<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">case</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Acanvas+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Canvas</span></a>.<span style="color: #006633;">RIGHT</span><span style="color: #339933;">:</span>
&nbsp;
counter <span style="color: #339933;">=</span> counter <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
&nbsp;
repaint<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">case</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Acanvas+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Canvas</span></a>.<span style="color: #006633;">LEFT</span><span style="color: #339933;">:</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">default</span><span style="color: #339933;">:</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Hasil program di atas adalah sebagai berikut:</p>
<div id="attachment_554" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.andisun.com/wp-content/uploads/2010/01/tampil_gambar1.png"><img class="size-full wp-image-554" title="tampil_gambar" src="http://www.andisun.com/wp-content/uploads/2010/01/tampil_gambar1.png" alt="Program menampilkan gambar" width="300" height="383" /></a><p class="wp-caption-text">Program menampilkan gambar</p></div>
<p><strong>Keterangan:</strong></p>
<p>Klik panah ke kanan untuk melihat gambar selanjutnya.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/tutorials/j2me-programming/j2me-menampilkan-gambar/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Memanfaatkan Notepad++ untuk membuat Syntax highlight Code pada Microsoft Word 2007</title>
		<link>http://www.andisun.com/artikel/memanfaatkan-notepad-untuk-membuat-syntax-highlight-code-pada-microsoft-word-2007</link>
		<comments>http://www.andisun.com/artikel/memanfaatkan-notepad-untuk-membuat-syntax-highlight-code-pada-microsoft-word-2007#comments</comments>
		<pubDate>Wed, 14 Oct 2009 01:25:51 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Artikel]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[highlight]]></category>
		<category><![CDATA[Notepad++]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[word]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=501</guid>
		<description><![CDATA[Syntax highlight adalah bagaimana menyajikan kode program dengan warna berbeda berdasarkan keyword, nama variabel, nama function, yang biasanya ditemukan pada kode editor bahasa pemrograman.
Secara default kode program yang akan dimasukkan ke word dari editor akan berwarna hitam. Hal itu berbeda dengan warna yang ada pada editornya. Warna hitam pada semua kode program akan menyulitkan untuk memahami kode program yang dituliskan pada word.
]]></description>
			<content:encoded><![CDATA[<p>Syntax highlight adalah bagaimana menyajikan kode program dengan warna berbeda berdasarkan keyword, nama variabel, nama function, yang biasanya ditemukan pada kode editor bahasa pemrograman.</p>
<p>Secara default kode program yang akan dimasukkan ke word dari editor akan berwarna hitam. Hal itu berbeda dengan warna yang ada pada editornya. Warna hitam pada semua kode program akan menyulitkan untuk memahami kode program yang dituliskan pada word.</p>
<p>Software tambahan yang dibutuhkan akan text editor <a href="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a>. <a href="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a> adalah editor kode program yang mensupport beberapa bahasa pemrograman. Notepad++ dapat didownload (<a href="http://notepad-plus.sourceforge.net/uk/download.php">klik disini</a>) gratis. Berjalan pada lingkungan windows dan penggunaan di atur oleh <a href="http://www.gnu.org/copyleft/gpl.html">GPL</a> License. Bahasa pemrograman yang dapat dukung oleh Notepad++ adalah:</p>
<table style="width: 448px;" border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="95" valign="bottom">C</td>
<td width="65" valign="bottom">C++</td>
<td width="64" valign="bottom">Java</td>
<td width="89" valign="bottom">C#</td>
<td width="64" valign="bottom">XML</td>
<td width="71" valign="bottom">HTML</td>
</tr>
<tr>
<td width="95" valign="bottom">PHP</td>
<td width="65" valign="bottom">CSS</td>
<td width="64" valign="bottom">makefile</td>
<td width="89" valign="bottom">ASCII art (.nfo)</td>
<td width="64" valign="bottom">doxygen</td>
<td width="71" valign="bottom">ini file</td>
</tr>
<tr>
<td width="95" valign="bottom">batch file</td>
<td width="65" valign="bottom">Javascript</td>
<td width="64" valign="bottom">ASP</td>
<td width="89" valign="bottom">VB/VBS</td>
<td width="64" valign="bottom">SQL</td>
<td width="71" valign="bottom">Objective-C</td>
</tr>
<tr>
<td width="95" valign="bottom">RC resource file</td>
<td width="65" valign="bottom">Pascal</td>
<td width="64" valign="bottom">Perl</td>
<td width="89" valign="bottom">Python</td>
<td width="64" valign="bottom">Lua</td>
<td width="71" valign="bottom">TeX</td>
</tr>
<tr>
<td width="95" valign="bottom">TCL</td>
<td width="65" valign="bottom">Assembler</td>
<td width="64" valign="bottom">Ruby</td>
<td width="89" valign="bottom">Lisp</td>
<td width="64" valign="bottom">Scheme</td>
<td width="71" valign="bottom">Properties</td>
</tr>
<tr>
<td width="95" valign="bottom">Diff</td>
<td width="65" valign="bottom">Smalltalk</td>
<td width="64" valign="bottom">Postscript</td>
<td width="89" valign="bottom">VHDL</td>
<td width="64" valign="bottom">Ada</td>
<td width="71" valign="bottom">Caml</td>
</tr>
<tr>
<td width="95" valign="bottom">AutoIt</td>
<td width="65" valign="bottom">KiXtart</td>
<td width="64" valign="bottom">Matlab</td>
<td width="89" valign="bottom">Verilog</td>
<td width="64" valign="bottom">Haskell</td>
<td width="71" valign="bottom">InnoSetup</td>
</tr>
<tr>
<td width="95" valign="bottom">CMake</td>
<td width="65" valign="bottom">YAML</td>
<td width="64" valign="bottom"></td>
<td width="89" valign="bottom"></td>
<td width="64" valign="bottom"></td>
<td width="71" valign="bottom"></td>
</tr>
</tbody>
</table>
<h1>Install Notepad++</h1>
<p>Sebelum menginstall Notepad++, aplikasi harus didownload secara gratis (<a href="http://notepad-plus.sourceforge.net/uk/download.php">klik disini untuk download</a>).</p>
<div id="attachment_502" class="wp-caption aligncenter" style="width: 149px"><a href="http://www.andisun.com/wp-content/uploads/2009/10/notepad_master_file.png"><img class="size-full wp-image-502  " title="notepad_master_file" src="http://www.andisun.com/wp-content/uploads/2009/10/notepad_master_file.png" alt="File master Notepad++" width="139" height="139" /></a><p class="wp-caption-text">File master Notepad++</p></div>
<p>Setelah proses download selesai, maka install <a href="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a> tersebut dengan mendobel klik file masternya.</p>
<h1>Memulai Mengetikkan Kode Program</h1>
<p>Ketikkan kode program yang dinginkan di <a href="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a>. Selain megetik, kode program yang juga dapat diperolah dengan mengkopi dari software atau editor lain.</p>
<p>Pada artikel ini penulis menggunakan kode PHP sebagai contoh.</p>
<div id="attachment_504" class="wp-caption aligncenter" style="width: 511px"><a href="http://www.andisun.com/wp-content/uploads/2009/10/syntax_kode_program01.png"><img class="size-full wp-image-504" title="syntax_kode_program01" src="http://www.andisun.com/wp-content/uploads/2009/10/syntax_kode_program01.png" alt="Kode program sebelum dipilih bahasanya" width="501" height="480" /></a><p class="wp-caption-text">Kode program sebelum dipilih bahasanya</p></div>
<h1><span id="more-501"></span></h1>
<h1>Memilih Bahasa</h1>
<p>Tentukan bahasa pemrograman kode program yang dituliskan dapat dipilih dari menu Language – (pilih bahasa yang dinginkan).</p>
<div id="attachment_505" class="wp-caption aligncenter" style="width: 253px"><a href="http://www.andisun.com/wp-content/uploads/2009/10/syntax_menu01.png"><img class="size-full wp-image-505  " title="syntax_menu01" src="http://www.andisun.com/wp-content/uploads/2009/10/syntax_menu01.png" alt="Menu memilih jenis bahasa" width="243" height="242" /></a><p class="wp-caption-text">Menu memilih jenis bahasa</p></div>
<p>Karena program kita adalah PHP, maka pilih PHP pada Language.</p>
<p>Setelah di pilih bahasa yang digunakan, maka warna kode akan berubah seperti berikut:</p>
<div id="attachment_506" class="wp-caption aligncenter" style="width: 511px"><a href="http://www.andisun.com/wp-content/uploads/2009/10/syntax_kode_program02.png"><img class="size-full wp-image-506" title="syntax_kode_program02" src="http://www.andisun.com/wp-content/uploads/2009/10/syntax_kode_program02.png" alt="Kode program setelah dipilih bahasa" width="501" height="480" /></a><p class="wp-caption-text">Kode program setelah dipilih bahasa</p></div>
<p>Dari gambar di atas terlihat warna yang berbeda-beda.</p>
<p>Seleksi kode program yang akan dimasukkan ke Microsoft Word. Jika menginginkan semua program tidak perlu diseleksi.</p>
<p>Pilih menu NppExport – Copy all format to clipboard.</p>
<div id="attachment_507" class="wp-caption aligncenter" style="width: 458px"><a href="http://www.andisun.com/wp-content/uploads/2009/10/syntax_menu02.png"><img class="size-full wp-image-507" title="syntax_menu02" src="http://www.andisun.com/wp-content/uploads/2009/10/syntax_menu02.png" alt="Menu copy format to clipboard" width="448" height="241" /></a><p class="wp-caption-text">Menu copy format to clipboard</p></div>
<p>Dari menu diatas kita dapat memilih beberapa pilihan. Dianjurkan pilih menu “Copy all format to clipboard”.</p>
<p>Intinya adalah kode yang akan dikopi harus berbentuk RTF (termasuk juga menu Copy all format to clipboard).</p>
<h1>Memasukkan Kode Program ke Microsoft Word</h1>
<p>Buka Microsoft Word, kemudian tentukan lokasi kode program, pilih Paste.</p>
<p>Hasilnya adalah sebagai berikut:</p>
<div id="attachment_508" class="wp-caption aligncenter" style="width: 591px"><a href="http://www.andisun.com/wp-content/uploads/2009/10/syntax_kode_program03.png"><img class="size-full wp-image-508" title="syntax_kode_program03" src="http://www.andisun.com/wp-content/uploads/2009/10/syntax_kode_program03.png" alt="Hasil Syntax highlight di Microsoft Word 2007" width="581" height="480" /></a><p class="wp-caption-text">Hasil Syntax highlight di Microsoft Word 2007</p></div>
<p>Setelah di Paste, maka terlihat kode program PHP pada Microsoft Word berwarna beragam seperti pada kode editor. Perbedaan warna tersebut memudahkan pembaca untuk memahami kode program yang diketik.</p>
<p>Selamat Mencoba.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/artikel/memanfaatkan-notepad-untuk-membuat-syntax-highlight-code-pada-microsoft-word-2007/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Menambah Barcode pada Ms. Word 2007</title>
		<link>http://www.andisun.com/artikel/menambah-barcode-pada-ms-word-2007</link>
		<comments>http://www.andisun.com/artikel/menambah-barcode-pada-ms-word-2007#comments</comments>
		<pubDate>Sun, 04 Oct 2009 02:13:42 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Artikel]]></category>
		<category><![CDATA[barcode]]></category>
		<category><![CDATA[component]]></category>
		<category><![CDATA[word]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=523</guid>
		<description><![CDATA[Perkembangan teknologi khususnya teknologi dalam teknik memasukkan data, maka semua tugas dari mata kuliah saya harus dilengkapi dengan barcode. Tutorial menambahkan barcode dapat dibaca pada artikel ini. Tutorial ini menggunakan Microsoft Word 2007 sebagai contohnya.
Berikut salah satu komponen barcode yang dapat digunakan dan didapatkan dengan gratis. Komponen tersebut bernama “TechnoRiver Free Barcode Component”.
1. Download komponen [...]]]></description>
			<content:encoded><![CDATA[<p>Perkembangan teknologi khususnya teknologi dalam teknik memasukkan data, maka semua tugas dari mata kuliah saya harus dilengkapi dengan barcode. Tutorial menambahkan barcode dapat dibaca pada artikel ini. Tutorial ini menggunakan Microsoft Word 2007 sebagai contohnya.</p>
<p>Berikut salah satu komponen barcode yang dapat digunakan dan didapatkan dengan gratis. Komponen tersebut bernama “TechnoRiver Free Barcode Component”.</p>
<p>1. Download komponen barcode “TechnoRiver Free Barcode Component” URL berikut:</p>
<ul>
<li><a href="http://www.technoriversoft.com/freebarcodesoftware.html">http://www.technoriversoft.com/freebarcodesoftware.html</a></li>
<li><a href="http://www.fileguru.com/TechnoRiver-Free-Barcode-Software-Component/download">http://www.fileguru.com/TechnoRiver-Free-Barcode-Software-Component/download</a></li>
<li><a href="http://www.download3000.com/download_13954.html">http://www.download3000.com/download_13954.html</a></li>
<li><a href="http://www.topshareware.com/TechnoRiver-Free-Barcode-Software-Component-download-43077.htm">http://www.topshareware.com/TechnoRiver-Free-Barcode-Software-Component-download-43077.htm</a></li>
</ul>
<p>2. Setelah selesai didownload, install komponen tersebut dengan cara mendouble klik pada file tersebut untuk.</p>
<div id="attachment_524" class="wp-caption aligncenter" style="width: 173px"><a href="http://www.andisun.com/wp-content/uploads/2009/11/freecomponent.png"><img class="size-full wp-image-524 " title="freecomponent" src="http://www.andisun.com/wp-content/uploads/2009/11/freecomponent.png" alt="Software TechnoRiver Free Barcode Component" width="163" height="187" /></a><p class="wp-caption-text">Software TechnoRiver Free Barcode Component</p></div>
<p>3. Setelah selesai, langkah selanjutnya adalah membuka Miscrosoft Word 2007, dan memasukkan ke Microsoft Word.<br />
4. Tempatkan kursor di tempat yang ingin dimasukkan barcode.<br />
5. Pilih menu Insert</p>
<div id="attachment_525" class="wp-caption aligncenter" style="width: 487px"><a href="http://www.andisun.com/wp-content/uploads/2009/11/pilih_insert.png"><img class="size-full wp-image-525  " title="pilih_insert" src="http://www.andisun.com/wp-content/uploads/2009/11/pilih_insert.png" alt="Pilih Menu Insert" width="477" height="159" /></a><p class="wp-caption-text">Pilih Menu Insert</p></div>
<p>6. Pilih Menu Object &#8211; Object</p>
<p style="text-align: center;">
<div id="attachment_526" class="wp-caption aligncenter" style="width: 420px"><a href="http://www.andisun.com/wp-content/uploads/2009/11/pilih_object.png"><img class="size-full wp-image-526   " title="pilih_object" src="http://www.andisun.com/wp-content/uploads/2009/11/pilih_object.png" alt="Pilih Object - Object" width="410" height="126" /></a><p class="wp-caption-text">Pilih Object - Object</p></div>
<p style="text-align: left;">Jika menggunakan Microsoft Office 20003, pilih menu Insert – Object.</p>
<p style="text-align: left;"><span id="more-523"></span>7.    Kemudian pilih “TechnoRiver Free Barcode Component”, klik OK.</p>
<p style="text-align: left;">
<div id="attachment_527" class="wp-caption aligncenter" style="width: 457px"><a href="http://www.andisun.com/wp-content/uploads/2009/11/pilih_komponen_barcode.png"><img class="size-full wp-image-527  " title="pilih_komponen_barcode" src="http://www.andisun.com/wp-content/uploads/2009/11/pilih_komponen_barcode.png" alt="Pilih object TechnoRiver Free Barcode Component" width="447" height="310" /></a><p class="wp-caption-text">Pilih object TechnoRiver Free Barcode Component</p></div>
<p>8.    Masukkan Nim Anda, kemudian klik OK.</p>
<div id="attachment_528" class="wp-caption aligncenter" style="width: 427px"><a href="http://www.andisun.com/wp-content/uploads/2009/11/barcode_properti.png"><img class="size-full wp-image-528" title="barcode_properti" src="http://www.andisun.com/wp-content/uploads/2009/11/barcode_properti.png" alt="masukkan NIM" width="417" height="336" /></a><p class="wp-caption-text">masukkan NIM</p></div>
<p>9.    Hasilnya adalah sebagai berikut:</p>
<div id="attachment_529" class="wp-caption aligncenter" style="width: 346px"><a href="http://www.andisun.com/wp-content/uploads/2009/11/hasil_barcode.png"><img class="size-full wp-image-529" title="hasil_barcode" src="http://www.andisun.com/wp-content/uploads/2009/11/hasil_barcode.png" alt="Contoh hasil pada halaman cover" width="336" height="432" /></a><p class="wp-caption-text">Contoh hasil pada halaman cover</p></div>
<p><strong>Tip and Trik:</strong></p>
<ul>
<li> Jika akan mengedit Nim, double klik pada barcode yang ingin diedit.</li>
<li>Hasil barcode tidak perlu diresize (biarkan apa adanya) untuk menghindari rusak dan tidak terbaca oleh barcode reader.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/artikel/menambah-barcode-pada-ms-word-2007/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Cara cepat setting IP Address</title>
		<link>http://www.andisun.com/artikel/cara-cepat-setting-ip-address</link>
		<comments>http://www.andisun.com/artikel/cara-cepat-setting-ip-address#comments</comments>
		<pubDate>Wed, 16 Sep 2009 00:24:25 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Artikel]]></category>
		<category><![CDATA[Automatic]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Gateway]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[Netsh]]></category>
		<category><![CDATA[Setting]]></category>
		<category><![CDATA[Subnet Mask]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=488</guid>
		<description><![CDATA[Ketika menggunakan laptop kemungkinan kita berpindah tempat sangat besar. Misal di kantor suatu saat kita dari ruang kita pergi ke ruang lain. Hal ini akan timbul permasalahan ketika ingin terhubung dengan jaringan baik wireless atau kabel sering disibukkan mensetting IP Address, subnet mask, dafault gateway, dan DNS server. Hal ini memakan waktu, karena harus mengklik [...]]]></description>
			<content:encoded><![CDATA[<p>Ketika menggunakan laptop kemungkinan kita berpindah tempat sangat besar. Misal di kantor suatu saat kita dari ruang kita pergi ke ruang lain. Hal ini akan timbul permasalahan ketika ingin terhubung dengan jaringan baik wireless atau kabel sering disibukkan mensetting IP Address, subnet mask, dafault gateway, dan DNS server. Hal ini memakan waktu, karena harus mengklik menu, ke sub menu, ke sub menu lagi dan seterusnya, kemudian mengetikkan konfigurasi IP Address.</p>
<p>Setting jaringan biasanya dimulai  dari &#8220;Control Panel&#8221; pilih “Network Connections” atau dari &#8220;System Tray&#8221; klik kanan pada icon Network, pilih &#8220;Open Network Connections&#8221; . Window ini biasanya disebut Network Interface Card. Pada window ini, biasanya ada dua pilihan:</p>
<ul>
<li> &#8220;Local Area Connection&#8221; untuk jaringan kabel</li>
<li> &#8220;Wireless Network Connection&#8221; untuk jaringan wireless</li>
</ul>
<p>Pilih salah satu item tersebut, klik kanan pilih &#8220;Properties&#8221;, pilih &#8220;Internet Protokol (TCP/IP)&#8221; di situlah kita akan merubah setting IP. Langkah setting ini akan selalu Anda lakukan ketika pindah ke tempat lain dengan.</p>
<div id="attachment_490" class="wp-caption aligncenter" style="width: 346px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/window_setting_ip1.png"><img class="size-full wp-image-490" title="window_setting_ip" src="http://www.andisun.com/wp-content/uploads/2009/09/window_setting_ip1.png" alt="Window setting IP Address" width="336" height="378" /></a><p class="wp-caption-text">Window setting IP Address</p></div>
<p>Ada cara lebih baik untuk menyelesaikan masalah itu yaitu menggunakan perintah &#8220;<span style="font-family: courier new,courier;">netsh</span>&#8221; dari &#8220;Command Prompt&#8221;. Agar dapat masuk ke &#8220;Command Prompt&#8221; dengan cepat, klik &#8220;Start/Run&#8221; masukkan &#8220;cmd&#8221;. masukkan perintah &#8220;netsh /?&#8221; akan terlihat opsi dan parameter yang dapat digunakan.</p>
<div id="attachment_491" class="wp-caption aligncenter" style="width: 324px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/window_run.png"><img class="size-full wp-image-491" title="window_run" src="http://www.andisun.com/wp-content/uploads/2009/09/window_run.png" alt="window_run" width="314" height="170" /></a><p class="wp-caption-text">Window Run</p></div>
<p>Setelah diklik tombol “OK”, maka muncul window “Command Prompt”.</p>
<div id="attachment_492" class="wp-caption aligncenter" style="width: 458px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/window_command_prompt.png"><img class="size-full wp-image-492" title="window_command_prompt" src="http://www.andisun.com/wp-content/uploads/2009/09/window_command_prompt.png" alt="Window Command Prompt" width="448" height="227" /></a><p class="wp-caption-text">Window Command Prompt</p></div>
<p>Yang perlu diperhatikan adalah teks yang harus dimasukkan pada file name adalah seperti pada gambar.</p>
<div id="attachment_493" class="wp-caption aligncenter" style="width: 458px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/script_dan_item_network.png"><img class="size-full wp-image-493" title="script_dan_item_network" src="http://www.andisun.com/wp-content/uploads/2009/09/script_dan_item_network.png" alt="Nama Network Connection" width="448" height="144" /></a><p class="wp-caption-text">Nama Network Connection</p></div>
<p>Contoh gambar di atas mempunyai arti network yang akan di setting bernama “Wireless Network Connection”. Jika ingin menganti item yang disetting tinggal diganti sesuai dengan nama yang terdapat pada komputer Anda.</p>
<p>Pembahasan berikutnya adalah bagaimana mensetting IP melalui &#8220;Command Prompt&#8221;.</p>
<h2>Setting Static</h2>
<ul>
<li>Setting “IP address” dan “Subnet mask”:</li>
</ul>
<p style="padding-left: 30px;">Ketikkan perintah berikut pada jendela &#8220;Command Prompt&#8221;</p>
<pre>Netsh interface ip set address source=static addr=192.168.0.25 mask=255.255.255.0</pre>
<ul>
<li>Setting “Default gateway”:</li>
</ul>
<p style="padding-left: 30px;">Ketikkan perintah berikut pada jendela&#8221;Command Prompt&#8221;</p>
<pre>Netsh interface ip set address gateway=192.168.0.1 gwmetric=0</pre>
<ul>
<li>Setting Preferred DNS server:</li>
</ul>
<p style="padding-left: 30px;">Ketikkan perintah berikut pada jendela &#8220;Command Prompt&#8221;</p>
<pre>Netsh interface ip set dns source=static addr=202.91.9.2</pre>
<ul>
<li>Setting Alternate DNS server:</li>
</ul>
<p style="padding-left: 30px;">Ketikkan perintah berikut pada jendela &#8220;Command Prompt&#8221;</p>
<pre>Netsh interface ip add dns addr=202.91.9.3</pre>
<p>Setelah Anda setting menggunakan &#8220;Command Prompt&#8221; di atas hasilnya adalah seperti gambar berikut.</p>
<div id="attachment_494" class="wp-caption aligncenter" style="width: 346px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/setelah_setting_dari_command_prompt.png"><img class="size-full wp-image-494" title="setelah_setting_dari_command_prompt" src="http://www.andisun.com/wp-content/uploads/2009/09/setelah_setting_dari_command_prompt.png" alt="Hasil setting IP Address menggunakan skrip" width="336" height="378" /></a><p class="wp-caption-text">Hasil setting IP Address menggunakan skrip</p></div>
<p>Untuk melihat setting IP dari &#8220;Command Prompt&#8221; menggunakan perintah:</p>
<ul>
<li>
<pre>Netsh int ip show config</pre>
</li>
</ul>
<p style="padding-left: 30px;">Atau menggunakan perintah:</p>
<ul>
<li>
<pre>ipconfig /all</pre>
</li>
</ul>
<p><span id="more-488"></span></p>
<p>Hasil pada &#8220;Command Prompt&#8221; adalah:</p>
<pre>
C:\Documents and Settings\Andi>Netsh int ip show config

Unable to access configuration because it is already being accessed by
another configuration utility.  Close other windows and try again.

Unable to access configuration because it is already being accessed by
another configuration utility.  Close other windows and try again.

C:\Documents and Settings\Andi>Netsh int ip show config

Configuration for interface "Wireless Network Connection"
    DHCP enabled:                         No
    IP Address:                           192.168.0.25
    SubnetMask:                           255.255.255.0
    Default Gateway:                      192.168.0.1
    GatewayMetric:                        0
    InterfaceMetric:                      0
    Statically Configured DNS Servers:    202.91.9.2
                                          202.91.9.3
    Statically Configured WINS Servers:   None
    Register with which suffix:           Primary only
</pre>
<h2>Setting DHCP (Dynamic Host Control Protocol)</h2>
<ul>
<li>Setting &#8220;IP Address&#8221;, &#8220;Subnet Mask&#8221; dan &#8220;Gateway&#8221; ke DHCP.</li>
</ul>
<p style="padding-left: 30px;">Ketikkan perintah berikut pada jendela &#8220;Command Prompt&#8221;.</p>
<pre>Netsh interface ip set address dhcp</pre>
<ul>
<li>Setting DNS server ke DHCP</li>
</ul>
<p style="padding-left: 30px;">Ketikkan perintah berikut pada jendela Command Prompt</p>
<pre>Netsh interface ip set dns dhcp</pre>
<p>Setelah Anda setting menggunakan &#8220;Command Promt&#8221; di atas hasilnya adalah seperti gambar berikut.</p>
<div id="attachment_495" class="wp-caption aligncenter" style="width: 346px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/hasil_setting_dhcp.png"><img class="size-full wp-image-495" title="hasil_setting_dhcp" src="http://www.andisun.com/wp-content/uploads/2009/09/hasil_setting_dhcp.png" alt="Hasil setting DHCP menggunakan skrip" width="336" height="378" /></a><p class="wp-caption-text">Hasil setting DHCP menggunakan skrip</p></div>
<p>Langkah-langkah di atas mungkin masih meakan waktu yang lama. Ide yang baik adalah mengumpulkan perintah-perintah di atas ke dalam file BATCH (.bat).</p>
<h2>Setting menggunakan file BATCH</h2>
<h3>Berikut isi file .bat untuk setting IP “Static”</h3>
<p>Misalkan Anda berinama &#8220;Setting IP Keuangan.bat&#8221;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p488code5'); return false;">View Code</a> BATCH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4885"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
</pre></td><td class="code" id="p488code5"><pre class="batch" style="font-family:monospace;">@ECHO OFF
Set varan=Wireless Network Connection
Set varip=192.168.0.25
Set varnm=255.255.255.0
Set vargw=192.168.0.1
Set vardns1=202.91.9.2
Set vardns2=202.91.9.3
&nbsp;
ECHO Auto Setting IP (myandisun@gmail.com)
ECHO for: &quot;%varan%&quot;
ECHO ---------------------------------------------
&nbsp;
ECHO Setting &quot;IP Address&quot; and &quot;Subnet Mask&quot;
Netsh interface ip set address source=static addr=%varip% mask=%varnm%
&nbsp;
ECHO Setting &quot;Gateway&quot;
Netsh interface ip set address gateway=%vargw% gwmetric=0
&nbsp;
ECHO Setting &quot;Primary DNS&quot;
Netsh interface ip set dns source=static addr=%vardns1%
&nbsp;
ECHO Setting &quot;Secondary DNS&quot;
Netsh interface ip add dns name = &quot;%varan%&quot; addr=%vardns2%
&nbsp;
ECHO Here are the new settings for %computername%:
&nbsp;
Netsh int ip show config
&nbsp;
Pause</pre></td></tr></table></div>

<p>Hasil setting menggunakan file &#8220;Setting IP Keuangan.bat&#8221;:</p>
<pre>Auto Setting IP (myandisun@gmail.com)
for: "Wireless Network Connection"
---------------------------------------------
Setting "IP Address" and "Subnet Mask"
Ok.

Setting "Gateway"
Ok.

Setting "Primary DNS"
Ok.

Setting "Secondary DNS"
Ok.

Here are the new settings for MYANDISUN:

Configuration for interface "Wireless Network Connection"
 DHCP enabled:                         No
 IP Address:                           192.168.0.25
 SubnetMask:                           255.255.255.0
 Default Gateway:                      192.168.0.1
 GatewayMetric:                        0
 InterfaceMetric:                      0
 Statically Configured DNS Servers:    202.91.9.2
 202.91.9.3
 Statically Configured WINS Servers:   None
 Register with which suffix:           Primary only

Configuration for interface "Local Area Connection"
 DHCP enabled:                         No
 IP Address:                           192.168.10.5
 SubnetMask:                           255.255.255.192
 Default Gateway:                      192.168.10.1
 GatewayMetric:                        0
 InterfaceMetric:                      0
 Statically Configured DNS Servers:    202.91.9.2
 202.91.9.3
 Statically Configured WINS Servers:   None
 Register with which suffix:           Primary only

Press any key to continue . . .</pre>
<h3>Berikut isi file .bat untuk setting “DHCP”</h3>
<p>Misalkan Anda simpan dengan nama file &#8220;Setting IP Lobi Depan.bat&#8221;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p488code6'); return false;">View Code</a> BATCH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4886"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code" id="p488code6"><pre class="batch" style="font-family:monospace;">@ECHO OFF
ECHO Auto Setting IP to DHCP (myandisun@gmail.com)
ECHO ---------------------------------------------
&nbsp;
ECHO Setting &quot;IP Address&quot;, &quot;Subnet Mask&quot; and &quot;Gateway&quot; to DHCP
Netsh interface ip set address dhcp
&nbsp;
ECHO Setting &quot;DNS&quot; to DHCP
Netsh interface ip set dns dhcp
&nbsp;
ECHO Here are the new settings for %computername%:
&nbsp;
Netsh int ip show config
&nbsp;
Pause</pre></td></tr></table></div>

<p>Hasil setting menggunakan file &#8220;Setting IP Lobi Depan.bat&#8221;:</p>
<pre>Auto Setting IP to DHCP (myandisun@gmail.com)
---------------------------------------------
Setting "IP Address", "Subnet Mask" and "Gateway" to DHCP
Ok.

Setting "DNS" to DHCP
Ok.

Here are the new settings for MYANDISUN:

Configuration for interface "Wireless Network Connection"
 DHCP enabled:                         Yes
 InterfaceMetric:                      0
 DNS servers configured through DHCP:  None
 WINS servers configured through DHCP: None
 Register with which suffix:           Primary only

Configuration for interface "Local Area Connection"
 DHCP enabled:                         No
 IP Address:                           192.168.10.5
 SubnetMask:                           255.255.255.192
 Default Gateway:                      192.168.10.1
 GatewayMetric:                        0
 InterfaceMetric:                      0
 Statically Configured DNS Servers:    202.91.9.2
 202.91.9.3
 Statically Configured WINS Servers:   None
 Register with which suffix:           Primary only

Press any key to continue . . .</pre>
<p>Keuntungan meggunakan file BATCH ini, tinggal double klik untuk menjalankannya, secara otomatis perintah yang ada di dalamnya aka dijalankan.</p>
<p>Agar lebih mempermudah buatlah setting tiap ruangan kemudian simpan menggunakan nama yang berbeda-beda. Jika berpindah tempat tinggal mendoble klik pada file .bat yang diinginkan.</p>
<p>Selamat mencoba.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/artikel/cara-cepat-setting-ip-address/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Overview AJAX (Asynchronus JavaScript and XML)</title>
		<link>http://www.andisun.com/jurnal/overview-ajax-asynchronus-javascript-and-xml</link>
		<comments>http://www.andisun.com/jurnal/overview-ajax-asynchronus-javascript-and-xml#comments</comments>
		<pubDate>Tue, 15 Sep 2009 22:05:00 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Jurnal]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Asynchronus]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=481</guid>
		<description><![CDATA[AJAX is not a new programming language, but a technique for creating better, faster, and more interactive web applications. With AJAX, your JavaScript can communicate directly with the server, using the JavaScript XMLHttpRequest object. With this object, your JavaScript can trade data with a web server, without reloading the page. AJAX uses asynchronous data transfer (HTTP requests) between the browser and the web server, allowing web pages to request small bits of information from the server instead of whole pages. The AJAX technique makes Internet applications smaller, faster and more user-friendly. Web applications have many benefits over desktop applications; they can reach a larger audience, they are easier to install and support, and easier to develop. However, Internet applications are not always as "rich" and user-friendly as traditional desktop applications. With AJAX, Internet applications can be made richer and more user-friendly.]]></description>
			<content:encoded><![CDATA[<p>by: Andi Sunyoto</p>
<p style="text-align: center;"><strong>Abstraksi</strong></p>
<p style="text-align: center;"><em>AJAX is not a new programming language, but a technique for creating better, faster, and more interactive web applications. With AJAX, your JavaScript can communicate directly with the server, using the JavaScript XMLHttpRequest object. With this object, your JavaScript can trade data with a web server, without reloading the page. AJAX uses asynchronous data transfer (HTTP requests) between the browser and the web server, allowing web pages to request small bits of information from the server instead of whole pages. The AJAX technique makes Internet applications smaller, faster and more user-friendly. Web applications have many benefits over desktop applications; they can reach a larger audience, they are easier to install and support, and easier to develop. However, Internet applications are not always as &#8220;rich&#8221; and user-friendly as traditional desktop applications. With AJAX, Internet applications can be made richer and more user-friendly.</em></p>
<p><em> </em></p>
<p>Key Word: AJAX, Internet, JavaScript, XML, Asynchronus</p>
<h1>1      Pengenalan AJAX</h1>
<p>AJAX diperkenalkan oleh Jesse James Garret dari Adaptive Path pada tahun 2005. Ia mendeskripsikan bagaimana mengembangkan web yang berbeda dengan metode tradisional. Ia mempublikasikan sebuah artikel yang berjudul <em>“AJAX: A New Approach to Web Applications”</em>. Pada artikelnya, Garret yakin bahwa aplikasi web dapat menutup jurang pemisah antara web dan aplikasi desktop.</p>
<p>Pengembangan web secara tradisional bekerja secara <em>synchronously</em><em>,</em> antara aplikasi dan server, setiap kali melakukan link atau melakukan operasi “submit” pada form. Caranya, browser mengirim data ke server, server merespons dan seluruh halaman akan di refresh.</p>
<p>Aplikasi web yang bekerja dengan AJAX bekerja secara <em>asynchronously</em>, yang berarti mengirim dan menerima data dari user ke server tanpa perlu me-load kembali seluruh halaman, melainkan hanya melakukan penggantian pada bagian web yang hendak diubah. Penggunaan AJAX mulai popular ketika digunakan oleh Google pada tahun 2005.</p>
<p>AJAX bukanlah bahasa pemrograman baru, tetapi merupakan teknik baru penggunaan standar yang telah ada. Dengan AJAX kita dapat menjadi lebih baik, cepat dan menambah unsur user-friendly dan interaktif pada aplikasi web kita. AJAX berbasiskan pada JavaScript dan request HTTP.</p>
<p>AJAX berbasiskan standar terbuka seperti:</p>
<ul>
<li>JavaScript</li>
<li>XML</li>
<li>HTML/XHTML</li>
<li>CSS</li>
</ul>
<p>Dengan menggunakan JavaScript AJAX dapat mengirim dan menerima data antara web server dan web browser. Teknik yang dimiliki AJAX akan bergantian bertukar data dan mere-load ulang seluruh halaman.</p>
<p>Dengan demikian, untuk mempelajari AJAX, harus dipahami pula konsep standar di atas. AJAX di-support sebagian besar browser popular sehingga aplikasi AJAX adalah aplikasi <em>cross-platform</em> dan <em>cross-browser</em>.</p>
<p>Melalui AJAX, JavaScript dapat dikomunikasikan secara langsung dengan server menggunakan obyek JavaScript XMLHttpRequest. Obyek JavaScript ini dapat men-<em>trade</em> data sebuah web server tanpa harus me-<em>reload</em> <em>(refresh</em><em>)</em> halaman web.</p>
<p>AJAX menggunakan <em>asynchronouse</em> data transfer (pada HTTP request) antara browser dan web server, yang memperbolehkan halaman web me-request bit yang kecil atau seluruh informasi dari server. Teknik AJAX membuat aplikasi internet menjadi kecil, cepat dan lebih user-friendly.</p>
<p>AJAX adalah aplikasi web yang lebih baik. Aplikasi web menambah keuntungan dibanding aplikasi desktop:</p>
<ul>
<li>Dapat  menjangkau pengguna yang luas</li>
<li>Mudah diinstal</li>
<li>Mudah dikembangkan</li>
<li>Mudah dipelihara</li>
</ul>
<p>Seperti yang kita ketahui, aplikasi internet tidak selalu susah dan user friendly seperti aplikasi dekstop. Dengan AJAX aplikasi internet semakin kecil, cepat dan mudah digunakan.</p>
<h1>2      Model-Model Web</h1>
<h2>2.1    Model Tradisional</h2>
<p>Yang dimaksud dengan model tradisional di sini adalah model yang sering digunakan tanpa AJAX. Pertama, browser membuat sebuah HTTP request dikirim ke server, misalnya /index.html.</p>
<div id="attachment_482" class="wp-caption aligncenter" style="width: 445px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/ajax_arsitektur_model_tradisional.png"><img class="size-full wp-image-482" title="ajax_arsitektur_model_tradisional" src="http://www.andisun.com/wp-content/uploads/2009/09/ajax_arsitektur_model_tradisional.png" alt="Arsitektur model tradisional" width="435" height="137" /></a><p class="wp-caption-text">Arsitektur model tradisional</p></div>
<p>Pada model ini, server mengirimkan response berisi seluruh halaman termasuk header, logo, navigasi, footer, dll. Ketika mengklik next maka akan menampilkan halaman baru lagi (artinya, header, logo, footer, navigasi dikirim ulang) dan seterusnya akan mengirimkan data halaman baru lagi setiap diminta request dari user.</p>
<p>Halaman seperti ini tidak masalah ketika data yang ditampilkan tidak memerlukan response yang cepat. Namun, akan menjadi masalah jika user menginginkan response yang cepat, misalnya ketika dipilih <em>drop-down</em> tertentu maka data yang ditampilkan berubah menurut nilai dari <em>drop-down</em>.</p>
<p><span id="more-481"></span></p>
<h2>2.2    Model AJAX</h2>
<p>Perlu diingat, AJAX akan berkomunikasi dengan server tanpa harus me-refresh semua halaman. Konsep ini berbeda dengan aplikasi web sistem tradisional. Dalam model AJAX, aksi dari sisi klien dibagi menjadi dua bagian, yaitu layer user interface dan layer AJAX.</p>
<div id="attachment_483" class="wp-caption aligncenter" style="width: 445px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/ajax_arsitektur_model_ajax.png"><img class="size-full wp-image-483" title="ajax_arsitektur_model_ajax" src="http://www.andisun.com/wp-content/uploads/2009/09/ajax_arsitektur_model_ajax.png" alt="Arsitektur model AJAX" width="435" height="114" /></a><p class="wp-caption-text">Arsitektur model AJAX</p></div>
<p>Ketika user mengklik sebuah link atau mengirimkan sebuah form maka input tersebut akan ditangani oleh layer AJAX dan diinteraksikan dengan server, kemudian meng-update user interface (UI). Jadi, dalam AJAX, interaksi UI secara logika terpisah dengan interaksi jaringan.</p>
<p>Pendekatan yang digunakan AJAX adalah bagaimana mengirimkan jumlah data yang kecil dari dan ke server atas request dari user. Model aplikasi web tradisional di mana browser akan merespons sendiri atas inisialisasi request, memproses request dari web server. Dalam AJAX terdapat layer yang diberi nama “AJAX engine” untuk menangani komunikasi. “AJAX Engine” adalah sebuah obyek JavaScript atau function yang dipanggil ketika informasi diperlukan dari server.</p>
<p>Proses yang dilakukan mesin AJAX <em>(AJAX Engine</em><em>)</em><em> </em><em>adalah </em>menerima respons dari server, melakukan parsing data dan melakukan sedikit perubahan untuk keperluan menampilkan informasi. Oleh karena proses mengirimkan sedikit informasi, jika dibanding dengan model aplikasi web tradisional maka user interface di-update lebih cepat dan user mampu melakukan pekerjaannya dengan cepat.</p>
<p>Beberapa poin penting untuk menggambarkan AJAX:</p>
<ul>
<li>Layer AJAX tidak memerlukan komunikasi dengan server (contohnya untuk validasi form karena dapat ditangani sepenuhnya oleh <em>client-side</em>).</li>
<li>Oleh karena request antara layer AJAX dan server berupa bagian kecil dari informasi (tidak komplit satu halaman) maka sering digunakan untuk interaksi dengan database sehingga waktu render dan waktu pengiriman menjadi pendek.</li>
<li>Layer UI secara langsung tergantung pada respons server sehingga user dapat melanjutkan interaksi dengan sebuah halaman selama aktivitas dikerjakan di background <em>(</em><em>background process</em><em>)</em><em>.</em> Berarti, untuk beberapa interaksi, waktu tunggu user hampir tidak ada.</li>
<li>Komunikasi antarhalaman dan server tidak selama memerlukan AJAX untuk mengubah perubahan UI. Contoh, beberapa aplikasi menggunakan AJAX  untuk notifikasi dengan halaman, tetapi tidak melakukan apa pun terhadap response dari server.</li>
</ul>
<h1>3      Teknologi di Balik AJAX</h1>
<p>Teknologi AJAX di dalamnya meliputi beberapa komponen, yaitu:</p>
<div id="attachment_484" class="wp-caption aligncenter" style="width: 306px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/ajax_teknologi_dibawah_ajax.png"><img class="size-full wp-image-484" title="ajax_teknologi_dibawah_ajax" src="http://www.andisun.com/wp-content/uploads/2009/09/ajax_teknologi_dibawah_ajax.png" alt="Teknologi dibalik AJAX" width="296" height="285" /></a><p class="wp-caption-text">Teknologi dibalik AJAX</p></div>
<ul>
<li>XHTML <em>(</em><em>Extensible HyperText Markup Language</em><em>)</em><em> </em>adalah bahasa markup seperti HTML, tetapi dengan gaya bahasa lebih baik. XHTML digunakan membuat halaman web dan dokumen-dokumen lain yang dapat ditampilkan dalam browser. XHTML merupakan standard internasional dengan spesifikasi yang ditetapkan oleh W3C <em>(</em><em>World Wide Web Consortium</em><em>)</em><em>.</em> Versi terakhir saat tulisan ini dibuat adalah HTML 2.0.</li>
<li>CSS <em>(</em><em>Cascading Style Sheets</em><em>)</em> adalah sebuah mekanisme sederhana untuk memberikan style (seperti font, warna, jarak spasi, dll) kepada dokumen web yang ditulis dalam HTML atau XML (termasuk beberapa variasi bahasa XML seperti XHTML dan SVG).</li>
<li>JavaScript adalah bahasa scripting kecil, ringan, berorientasi-objek dan lintas platform. JavaScript tidak dapat berjalan dengan baik sebagai bahasa mandiri, melainkan dirancang untuk ditanamkan pada produk.</li>
<li>DOM <em>(</em><em>Document Object Model</em><em>)</em> adalah sebuah API <em>(</em><em>Application Program Interface</em><em>)</em> untuk dokumen HTML dan XML. DOM menyediakan representasi dokumen secara terstruktur, dimungkinkan untuk  mengubah isi dan presentasi visual. Pada dasarnya, DOM menghubungkan halaman web dengan script atau bahasa pemrograman.</li>
<li>XML <em>(</em><em>Extensible Markup Language</em><em>)</em><em> </em>adalah bahasa markup untuk keperluan umum yang disarankan oleh W3C untuk membuat dokumen markup keperluan khusus. Keperluan utama XML adalah untuk pertukaran data antarsistem yang beraneka ragam.</li>
<li>XSLT <em>(</em><em>Extensible Stylesheet Language Transformations</em><em>)</em> adalah sebuah bahasa berbasis-XML untuk transformasi dokumen XML. Walaupun proses merujuk pada transformasi, dokumen asli tidak berubah melainkan dokumen XML baru dibuat dengan basis isi dokumen yang sudah ada. XSLT biasanya digunakan untuk mengubah skema XML ke halaman web atau dokumen PDF.</li>
<li>Objek XMLHttpRequest berkemampuan melakukan pertukaran data secara asinkron dengan web server. AJAX menggunakan obyek XMLHttpRequest untuk melakukan pertukaran data dengan web server.</li>
<li>JSON <em>(JavaScript Object Notation</em><em>)</em> yaitu format pertukaran data komputer yang ringan dan mudah. Keuntungan JSON dibandingkan dengan XML adalah pada proses penerjemahan data menggunakan Javascript. Javascript dapat menerjemahkan JSON menggunakan built-in procedure eval().</li>
</ul>
<p>Dalam kenyataannya, semua teknologi dapat digunakan untuk AJAX, tetapi hanya tiga yang dibutuhkan: HTML/XHTML, DOM dan JavaScript. XHTML ternyata diperlukan untuk menampilkan informasi, sedangkan DOM diperlukan untuk halaman XHTML tanpa di-reload ulang.</p>
<p>JavaScript dibutuhkan untuk komunikasi <em>client-server</em><em>, sementara</em> manipulasi DOM untuk meng-update halaman web. Teknologi lain digunakan agar AJAX lebih bagus, tetapi bukan merupakan hal yang pokok. Untuk pembuatan aplikasi agar lebih <em>powerful</em> maka AJAX dapat digabung dengan aplikasi <em>server-side programming</em> seperti PHP, ASP, Java servlet atau .NET.</p>
<h1>4      Pengguna AJAX</h1>
<p>Beberapa web komersial sudah menggunakan teknologi AJAX untuk menaikkan pelayanan terhadap user. Berikut beberapa contoh web yang menggunakan AJAX.</p>
<ul>
<li>Google Suggest: <a href="http://www.google.com/webhp?complete=1" target="_blank">http://www.google.com/webhp?complete=1</a></li>
<li>Gmail: <a href="http://www.gmail.com" target="_blank">http://www.gmail.com</a></li>
<li>Google Maps: <a href="http://maps.google.com" target="_blank">http://maps.google.com</a></li>
<li>Yahoo! News: <a href="http://news.yahoo.com" target="_blank">http://news.yahoo.com</a></li>
<li>Bitflux Blog: <a href="http://blog.bitflux.ch" target="_blank">http://blog.bitflux.ch</a></li>
<li>dll</li>
</ul>
<h1>5      Keistimewaan AJAX</h1>
<p>AJAX sebagai sebagai teknik pemrograman baru memiliki beberapa keistimewaan. Keistimewaan AJAX antara lain:</p>
<ul>
<li>Membuat permintaan kepada server tanpa memuat kembali <em>(</em><em>reload</em><em>)</em><em> </em>halaman.</li>
<li>Mengurai <em>(</em><em>parse</em><em>)</em> dan bekerja dengan dokumen XML dan atau JSON.</li>
<li>Data yang dikirim sedikit sehingga menghemat bandwidth dan  mempercepat koneksi.</li>
<li>Proses dilakukan di belakang layar.</li>
<li>Banyak didukung oleh browser-browser modern yang popular.</li>
<li>Aplikasi yang dibangun semakin interaktif dan dinamis.</li>
</ul>
<p>Penggunaan AJAX akan mendatangkan beberapa keuntungan. Keuntungan tersebut antara lain.</p>
<ul>
<li><em>High Interactivity</em>: Aplikasi AJAX lebih interaktif dibanding dengan aplikasi web konvensional.</li>
<li><em>High Usability</em>: Update data tidak me-reload keseluruhan halaman, melainkan hanya yang relevan.</li>
<li><em>High Speed</em>: Aplikasi AJAX lebih cepat dibanding dengan aplikasi web konvensional</li>
</ul>
<h1>6      Contoh penerapan AJAX</h1>
<p>Berikut contoh penerapan AJAX. Pada penerapan ini ada dua file yang dibutuhkan, yaitu file HTML dan file PHP. Isi file JavaScript adalah sebagai berikut (time.html):</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p481code7'); return false;">View Code</a> HTML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4817"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
</pre></td><td class="code" id="p481code7"><pre class="html" style="font-family:monospace;">&lt;html&gt;
&lt;body&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
function AJAXFunction()
  {
  var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;);
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);
        }
      catch (e)
        {
        alert(&quot;Your browser does not support AJAX!&quot;);
        return false;
        }
      }
    }
    xmlHttp.onreadystatechange=function()
      {
      if(xmlHttp.readyState==4)
        {
        document.myForm.time.value=xmlHttp.responseText;
        }
      }
    xmlHttp.open(&quot;GET&quot;,&quot;time.php&quot;,true);
    xmlHttp.send(null);
  }
&lt;/script&gt;
&nbsp;
&lt;form name=&quot;myForm&quot;&gt;
&nbsp;
Name: &lt;input type=&quot;text&quot;
&nbsp;
onkeyup=&quot;AJAXFunction();&quot; name=&quot;username&quot; /&gt;
&nbsp;
Time: &lt;input type=&quot;text&quot; name=&quot;time&quot; /&gt;
&nbsp;
&lt;/form&gt;
&nbsp;
&lt;/body&gt;
&lt;/html&gt;</pre></td></tr></table></div>

<p>Sebelum menjalankan skrip di atas, perlu disiapkan dahulu skrip server side-nya. Skripnya adalah sebagai berikut (time.php):</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p481code8'); return false;">View Code</a> PHP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4818"><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code" id="p481code8"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?</span>
<span style="color: #b1b100;">echo</span> <a href="http://www.php.net/date"><span style="color: #990000;">date</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'H:m:s'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p>Jalankan file “time.htm”, kemudian ketikkan username. Dengan demikian, setiap mengetikkan huruf di user name, jam langsung ter-update. Output program ketika dijalankan adalah sebagai berikut:</p>
<div id="attachment_485" class="wp-caption aligncenter" style="width: 416px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/tampilan_time_with_ajax.png"><img class="size-full wp-image-485" title="tampilan_time_with_ajax" src="http://www.andisun.com/wp-content/uploads/2009/09/tampilan_time_with_ajax.png" alt="Tampilan aplikasi jam dengan AJAX" width="406" height="165" /></a><p class="wp-caption-text">Tampilan aplikasi jam dengan AJAX</p></div>
<h1>7      Daftar Pustaka</h1>
<ul>
<li>Sunyoto, Andi., “<a href="http://www.andisun.com/buku/ajax-membangun-web-dengan-teknologi-asynchronous-javascript-dan-xml">AJAX: Membangun Web dengan Teknologi Asynchronouse JavaScript &amp; XML</a>”., Penerbit Andi., 2007</li>
<li>Castagnetto, Jesus., et.al., &#8220;Profesional PHP Programming&#8221;, Wrox Press, 1999.</li>
<li>Dubois, Paul., &#8220;MySQL: The Definitive Guide to Using, Programming, and Administering MySQL 4.1 and 5.0 Third Edition, 2005.</li>
<li>Eichorn, Joshua., &#8220;Understanding AJAX: Using JavaScript to Create Rich Internet Applications&#8221;, Prentice Hall, 2006.</li>
<li>Heilmann, Christian., &#8220;Beginning JavaScript with DOM Scripting and Ajax: From Novice to Professional&#8221;, Apress, 2006.</li>
<li>Langerstrom, Randles, Larry., &#8220;Programming the Web using XHTML and JavaScript&#8221;, McGraw-Hill, 2003.</li>
<li>W3Schools, &#8220;Learn PHP, Learn AJAX, Learn XML, Learn JavaScript, Learn XML and XHTML DOM, Learn MySQL&#8221;, www.w3schools.com, 2007.</li>
<li>Woychowsky, Edmond., &#8220;Ajax: Creating Web Pages with Asynchronous JavaScript and XML&#8221;, Prentice Hall, 2006.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/jurnal/overview-ajax-asynchronus-javascript-and-xml/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Intro JavaScript and Hello World</title>
		<link>http://www.andisun.com/tutorials/javascript-tutorials/intro-javascript-and-hello-world</link>
		<comments>http://www.andisun.com/tutorials/javascript-tutorials/intro-javascript-and-hello-world#comments</comments>
		<pubDate>Sun, 13 Sep 2009 02:17:40 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Hello World]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=453</guid>
		<description><![CDATA[JavaScript adalah bahasa scripting yang popular di internet dan dapat bekerja di sebagian besar browser popular seperti Internet Explorer (IE), Mozilla FireFox, Netscape dan Opera. Kode JavaScript dapat disisipkan dalam halaman web menggunakan tag SCRIPT.]]></description>
			<content:encoded><![CDATA[<p>JavaScript adalah bahasa <em>scripting</em> yang popular di internet dan dapat bekerja di sebagian besar browser popular seperti Internet Explorer (IE), Mozilla FireFox, Netscape dan Opera. Kode JavaScript dapat disisipkan dalam halaman web menggunakan tag SCRIPT.</p>
<p>Beberapa hal tentang JavaScript:</p>
<ol>
<li>JavaScript didesain untuk menambah interaktif suatu web.</li>
<li>JavaScript merupakan sebuah bahasa <em>scripting.</em></li>
<li>Bahasa <em>scripting</em> merupakan bahasa pemrograman yang ringan.</li>
<li>JavaScript berisi baris kode yang dijalankan di komputer (web browser).</li>
<li>JavaScript biasanya disisipkan <em>(</em><em>embedded</em><em>)</em> dalam halaman HTML.</li>
<li>JavaScript adalah bahasa interpreter (yang berarti skrip dieksekusi tanpa proses kompilasi).</li>
<li>Setiap orang dapat menggunakan JavaScript tanpa membayar lisensi.</li>
</ol>
<p>Contoh skrip JavaScript dapat dilihat pada contoh berikut:</p>
<p><strong>Nama file: js01.html</strong></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p453code9'); return false;">View Code</a> HTML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4539"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
</pre></td><td class="code" id="p453code9"><pre class="html" style="font-family:monospace;">&lt;html&gt;
&lt;head&gt;
  &lt;title&gt;JavaScript&lt;/title&gt;
&lt;/head&gt;
&nbsp;
&lt;body&gt;
  &lt;script type=&quot;text/javascript&quot;&gt;
    document.write(&quot;Hello world!&quot;);
    document.write(&quot;&lt;p&gt;Apa Kabar &lt;br /&gt;&quot; +
                   &quot;&lt;i&gt;anda&lt;/i&gt;?&lt;/p&gt;&quot;);
  &lt;/script&gt;
&nbsp;
  &lt;p&gt;Demo output untuk menampilkan teks.
  &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</pre></td></tr></table></div>

<p><strong>Output file: js01.html</strong></p>
<div id="attachment_461" class="wp-caption aligncenter" style="width: 385px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/JavaScript_hello_world.png"><img class="size-full wp-image-461" title="JavaScript_hello_world" src="http://www.andisun.com/wp-content/uploads/2009/09/JavaScript_hello_world.png" alt="Menampilkan skrip pada HTML" width="375" height="256" /></a><p class="wp-caption-text">Menampilkan skrip pada HTML</p></div>
<p>Keterangan:</p>
<ul>
<li>document.write : untuk menampilkan teks di halaman HTML.</li>
</ul>
<p>Teks yang akan ditampilkan dapat dimasukkan ke dalam tag HTML. Tag akan dieksekusi oleh browser ketika teks ditampilkan. Hal mendasar yang perlu diperhatikan dalam JavaScript adalah:</p>
<ul>
<li>Seperti pada C++/Java, perintah dalam Java diakhiri dengan ”;” (titik koma).</li>
<li>Komentar menggunakan:</li>
</ul>
<p style="padding-left: 30px;">//           : untuk satu baris perintah</p>
<p style="padding-left: 30px;">/*&#8230;*/  : untuk kelompok program (banyak baris)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/tutorials/javascript-tutorials/intro-javascript-and-hello-world/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>J2ME: Form dan Ticker</title>
		<link>http://www.andisun.com/tutorials/j2me-programming/j2me-form-dan-ticker</link>
		<comments>http://www.andisun.com/tutorials/j2me-programming/j2me-form-dan-ticker#comments</comments>
		<pubDate>Fri, 11 Sep 2009 02:07:24 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[J2ME-Mobile Programming]]></category>
		<category><![CDATA[Form]]></category>
		<category><![CDATA[J2ME]]></category>
		<category><![CDATA[MIDlet]]></category>
		<category><![CDATA[ticker]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=442</guid>
		<description><![CDATA[Apabila sedang menyaksikan tayangan pada televisi akan sering terlihat berita pada bagian bawah layar yang berupa tulisan berjalan. Atau pada acara yang berhubungan dengan bursa efek akan bisa dilihat juga berupa tulisan berjalan yang memberikan informasi mengenai keadaan saham pada saat itu. Untuk membuat “tayangan” seperti itu pada layar ponsel dapat digunakan class Ticker.
Class Ticker [...]]]></description>
			<content:encoded><![CDATA[<p>Apabila sedang menyaksikan tayangan pada televisi akan sering terlihat berita pada bagian bawah layar yang berupa tulisan berjalan. Atau pada acara yang berhubungan dengan bursa efek akan bisa dilihat juga berupa tulisan berjalan yang memberikan informasi mengenai keadaan saham pada saat itu. Untuk membuat “tayangan” seperti itu pada layar ponsel dapat digunakan class Ticker.</p>
<p>Class Ticker tampak seperti animasi teks berjalan terus menerus dari kanan ke  kiri. Untuk menampilkan obyek Ticker yang telah dibuat, kita perlu memanggil method setTicker() yang didefinisikan pada class Displayable. Ini artinya, method tersebut dapat kita panggil dari obyek turunan dari kelas Screen maupun Canvas.</p>
<p>Pada modul ini akan mengekplorasi ticker. Disini akan membuat obyek Ticker dan mengkaitkannya dengan obyek Form.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p442code12'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p44212"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
</pre></td><td class="code" id="p442code12"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.microedition.midlet.*</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.microedition.lcdui.*</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MIDTicker <span style="color: #000000; font-weight: bold;">extends</span> MIDlet <span style="color: #000000; font-weight: bold;">implements</span> CommandListener <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Form form<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Display display<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Ticker ticker<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Command cmdKeluar<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> MIDTicker<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		cmdKeluar <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Command<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Keluar&quot;</span>, Command.<span style="color: #006633;">EXIT</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		ticker <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Ticker<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Saham TELKOM naik 10 point&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Form<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ticker&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">setTicker</span><span style="color: #009900;">&#40;</span>ticker<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">addCommand</span><span style="color: #009900;">&#40;</span>cmdKeluar<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">setCommandListener</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> startApp<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		display <span style="color: #339933;">=</span> Display.<span style="color: #006633;">getDisplay</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		display.<span style="color: #006633;">setCurrent</span><span style="color: #009900;">&#40;</span>form<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> pauseApp<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> destroyApp<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">boolean</span> unconditional<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> commandAction<span style="color: #009900;">&#40;</span>Command c, Displayable d<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>c <span style="color: #339933;">==</span> cmdKeluar<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			destroyApp<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			notifyDestroyed<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Berikut keterangan kode program di atas:</p>
<p>Untuk membuat objek ticker digunakan baris berikut :</p>
<pre>ticker = new Ticker("Ini text berjalan yang akan ditampilan pada layar ");</pre>
<p>Sedangkan untuk menambahkan objek ticker pada form digunakan method setTicker(objekTicker), seperti di bawah ini :</p>
<pre>form.setTicker(ticker);</pre>
<p>Berbeda pada ponsel lainnya, pada Siemens, teks dari objek ticker menempati baris sama dengan title dari form. Selain itu, teks pada objek ticker hanya berjalan setelah layar saja.</p>
<p><a href="http://www.andisun.com/wp-content/uploads/2009/09/midlet_ticker01.png"><img class="aligncenter size-full wp-image-443" title="midlet_ticker01" src="http://www.andisun.com/wp-content/uploads/2009/09/midlet_ticker01.png" alt="midlet_ticker01" width="239" height="308" /></a></p>
<h2>1.1.    Setting Teks pada Ticker</h2>
<p>Pada class Ticker terdapat dua method yaitu getString() dan setString(String str). Berikut adalah contoh untuk aplikasi yang memberikan fasilitas bagi user untuk mengubah teks yang ditampilkan oleh objek ticker. Berikut adalah contoh dari aplikasi tersebut. Aplikasi ini dapat memodifikasi aplikasi ticker sebelumnya.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p442code13'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p44213"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
</pre></td><td class="code" id="p442code13"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.microedition.midlet.*</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.microedition.lcdui.*</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MIDTickerLanjut <span style="color: #000000; font-weight: bold;">extends</span> MIDlet <span style="color: #000000; font-weight: bold;">implements</span> CommandListener <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Form form<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Display display<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Ticker ticker<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Command cmdKeluar<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> Command cmdTicker<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Atextfield+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">TextField</span></a> textField<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> MIDTickerLanjut<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		cmdKeluar <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Command<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Keluar&quot;</span>, Command.<span style="color: #006633;">EXIT</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		cmdTicker <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Command<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Set Ticker&quot;</span>, Command.<span style="color: #006633;">SCREEN</span>, <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		textField <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Atextfield+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">TextField</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Teks : &quot;</span>, <span style="color: #0000ff;">&quot;&quot;</span>, <span style="color: #cc66cc;">50</span>, <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Atextfield+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">TextField</span></a>.<span style="color: #006633;">ANY</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		ticker <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Ticker<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Form<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ticker&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">append</span><span style="color: #009900;">&#40;</span>textField<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">addCommand</span><span style="color: #009900;">&#40;</span>cmdKeluar<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">addCommand</span><span style="color: #009900;">&#40;</span>cmdTicker<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		form.<span style="color: #006633;">setCommandListener</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> startApp<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		display <span style="color: #339933;">=</span> Display.<span style="color: #006633;">getDisplay</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		display.<span style="color: #006633;">setCurrent</span><span style="color: #009900;">&#40;</span>form<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> pauseApp<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> destroyApp<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">boolean</span> unconditional<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> commandAction<span style="color: #009900;">&#40;</span>Command c, Displayable d<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>c <span style="color: #339933;">==</span> cmdKeluar<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			destroyApp<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			notifyDestroyed<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
		<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>c <span style="color: #339933;">==</span> cmdTicker<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			form.<span style="color: #006633;">setTicker</span><span style="color: #009900;">&#40;</span>ticker<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			ticker.<span style="color: #006633;">setString</span><span style="color: #009900;">&#40;</span>textField.<span style="color: #006633;">getString</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Aplikasi ini merupakan hasil modifikasi dari MIDTickerLanjut.java. Objek yang ditambahkan adalah objek textField yang akan digunakan oleh user untuk memasukkan teks yang akan digunakan oleh objek ticker. Pada konstruktor hanya dilakukan pembuatan objek ticker dan belum ditambahkan pada objek form. Setelah “tombol” Ticker ditekan baru objek ticker ditambahkan pada form dengan baris seperti berikut ini:</p>
<pre>if (c == cmdTicker) {
  form.setTicker(ticker);
  ticker.setString(textField.getString());
}</pre>
<p>Untuk menampilkan teks yang diisikan user pada textField digunakan baris berikut:</p>
<pre>ticker.setString(textField.getString());</pre>
<p><a href="http://www.andisun.com/wp-content/uploads/2009/09/midlet_ticker02.png"><img class="aligncenter size-full wp-image-444" title="midlet_ticker02" src="http://www.andisun.com/wp-content/uploads/2009/09/midlet_ticker02.png" alt="midlet_ticker02" width="487" height="314" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/tutorials/j2me-programming/j2me-form-dan-ticker/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Mobile Tracking Memanfaatkan Teknologi Global Positioning System (GPS) dan General Packet Radio Service (GPRS)</title>
		<link>http://www.andisun.com/jurnal/mobile-tracking-memanfaatkan-teknologi-global-positioning-system-gps-dan-general-packet-radio-service-gprs</link>
		<comments>http://www.andisun.com/jurnal/mobile-tracking-memanfaatkan-teknologi-global-positioning-system-gps-dan-general-packet-radio-service-gprs#comments</comments>
		<pubDate>Tue, 08 Sep 2009 03:14:23 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Jurnal]]></category>
		<category><![CDATA[GPRS]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[J2ME]]></category>
		<category><![CDATA[NMEA]]></category>
		<category><![CDATA[Tracking]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=429</guid>
		<description><![CDATA[by: Andi Sunyoto
ABSTRACT
An integration of a GPS receiver module and GPRS for monitoring and tracking of vehicle position has been designed and implemented. The GPS receiver module is a equipment able to generate position data, but it unable to send the data position to the control system. A GPRS technology in mobGPile device can transmit [...]]]></description>
			<content:encoded><![CDATA[<p>by: Andi Sunyoto</p>
<p><em>ABSTRACT</em></p>
<p><em>An integration of a <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS receiver</a> module and GPRS for monitoring and tracking of vehicle position has been designed and implemented. The <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS receiver</a> module is a equipment able to generate position data, but it unable to send the data position to the control system. A GPRS technology in mobGPile device can transmit data over internet, so it can be used to transmit object position to control system in order to be monitored.</em></p>
<p><em>This research aims to build a system for monitoring and tracking the vehicle’s position. The system are divided into three parts: block I, block II and block III. Block I consist of two devices : A <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS receiver</a> module and a cellular phone running a java application (<a href="http://www.andisun.com/artikel/sekilas-java-2-microedition-j2me">J2ME</a>). The application is used to stream, parse and processed <a href="http://www.andisun.com/artikel/national-marine-electronics-association-nmea-0183-tipe-rmc">NMEA</a> data from the <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS receiver</a> module before transmiting it to the control system (block II) over a GPRS connection. Block II consists of a web server and a database server for catching the data position sent from block I and store it in database server. Block III consists of visualization and monitoring application to visualize vehicle’s positions over the digital map. The last position of the vehicle data are taken from the database server.</em></p>
<p><em>The result of this research is an integration of two technologies that can be used to monitor and track of vehicles position. The success of the monitoring and tracking are dependent on : the <a href="http://www.andisun.com/artikel/national-marine-electronics-association-nmea-0183-tipe-rmc">NMEA</a> data stream from the <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS receiver</a> module, the accuracy of <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS receiver</a> module and the digital map used by the system.</em></p>
<p>Key words : GPS, GPRS, NMEA, Tracking, J2ME</p>
<h1>1.  PENGANTAR</h1>
<p>Kasus yang membutuhkan mekanisme pemantauan posisi kendaraan semakin banyak, misalkan kasus dalam perusahaan taksi, distribusi barang, penyalahgunaan pemakaian mobil dinas dan sistem pengiriman BBM, barang pada perusahaan jasa.</p>
<p>Perusahaan maupun instansi biasanya menggunakan media komunikasi radio untuk mengetahui dengan menanyakan kepada pengemudi dimana posisinya. Jawaban yang diberikan pengemudi dijadikan dasar untuk mengetahui posisi kendaraan tersebut. Cara ini membuat data yang diberikan kadang tidak akurat, karena tergantung dari jawaban dari pengemudi.</p>
<p>Kemajuan teknologi penentuan lokasi seperti <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS <em>(Global Positioning System)</em></a> berkembang pesat dengan tingkat akurasi yang semakin teliti, bermacam variasi dan semakin murah. Posisi dapat diketahui jika membawa alat yang diberi nama <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps"><em>GPS receiver</em></a> yang berfungsi untuk menerima sinyal dari satelit GPS. <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS <em>receiver</em></a> berbentuk modul menghasilkan data <a href="http://www.andisun.com/artikel/national-marine-electronics-association-nmea-0183-tipe-rmc">NMEA</a> yang berisi data posisi.</p>
<p>Perkembangan jaringan teknologi <em>(wireless)</em> khususnya <em>handphone</em> semakin pesat. Sebuah <em>handphone</em> tipe tertentu sudah dilengkapi fitur Java dan GPRS. Fitur Java memungkinkan menambahkan aplikasi yang dibangun dengan <a href="http://www.andisun.com/artikel/sekilas-java-2-microedition-j2me">J2ME</a>. Teknologi GPRS <em>(General Packet Radio Service) </em>dapat digunakan sebagai media pengiriman data secara nirkabel melalui koneksi internet.</p>
<p>Tracking kendaraan adalah mekanisme bagaimana memantau keberadaan kendaraan yang bergerak dan jalurnya di muka bumi. Pengertian bergerak dalam perpektif geografi adalah perpindahan posisi suatu obyek dari suatu koordinat ke koordinat lain. Tracking diperoleh dengan merekam data perpindahan tersebut. Penerapan sistem ini, pihak operator tidak perlu menanyakan ke pengemudi tentang posisinya.</p>
<p>Modul <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS<em> receiver</em></a> mempunyai karekteristik dapat menghasilkan informasi data posisi tetapi tidak dapat mengirimkan data tersebut dengan jarak jauh. GPRS sebagai teknologi komunikasi <em>wireless</em> dapat mengirimkan data melalui jaringan internet. Karakteristik yang dimiliki oleh <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS</a> dan GPRS dapat diintegrasikan untuk membangun sistem monitoring posisi dan tracking kendaraan.</p>
<h1>2.  CARA PENELITIAN</h1>
<p>Penelitian ini secara garis bersar dibagi menjadi beberapa blok, yaitu blok I, blok II, dan blok III. Pembagian masing-masing blok dapat dilihat pada gambar berikut.</p>
<div id="attachment_430" class="wp-caption aligncenter" style="width: 536px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_consept.png"><img class="size-full wp-image-430" title="mobile_tracking_consept" src="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_consept.png" alt="Pembagian komponen blok sistem" width="526" height="301" /></a><p class="wp-caption-text">Pembagian komponen blok sistem</p></div>
<h2>2.1 Komponen Blok I</h2>
<p>Pada Blok I berisi seperangkat GPS dan <em>handphone</em>. Blok I bertugas mengirimkan data posisi yang dibaca dari <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS</a> ke Blok II secara otomatis.</p>
<div id="attachment_431" class="wp-caption aligncenter" style="width: 502px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_user_blok.png"><img class="size-full wp-image-431" title="mobile_tracking_user_blok" src="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_user_blok.png" alt="Proses komponen blok I" width="492" height="252" /></a><p class="wp-caption-text">Proses komponen blok I</p></div>
<p>Modul <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps"><em>GPS receiver</em></a> dan <em>handphone</em> dikoneksikan menggunakan bluetooth, kemudian data posisi dari modul <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps"><em>GPS receiver</em></a> diambil <em>handphone</em> melalui aplikasi <a href="http://www.andisun.com/artikel/sekilas-java-2-microedition-j2me">J2ME</a>. Aplikasi ini pertama mengambil data <a href="http://www.andisun.com/artikel/national-marine-electronics-association-nmea-0183-tipe-rmc">NMEA</a> tipe RMC. Data tersebut kemudian di <em>parsing</em> untuk dipisahkan antara data longitude, latitude dan kecepatan dikirimkan ke Web Server melalui jaringan GPRS. Gambar proses yang terjadi di Blok I dapat dilihat pada gambar di atas.</p>
<h2>2.2 Komponen Blok II</h2>
<p>Blok II berisi Web server dan Database server yang berfungsi menerima data dari Blok I. Proses yang terjadi pada Blok II dapat dilihat pada gambar berikut.</p>
<div id="attachment_432" class="wp-caption aligncenter" style="width: 283px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_server_block.png"><img class="size-full wp-image-432" title="mobile_tracking_server_block" src="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_server_block.png" alt="Proses komponen blok II" width="273" height="188" /></a><p class="wp-caption-text">Proses komponen blok II</p></div>
<p>Web server dilengkapi dengan pemrograman internet <em>server-side scripting</em> ASP untuk menangkap data posisi <em>(longitude dan latitude)</em>, kecepatan dan status yang dikirim dari Blok I.</p>
<p><span id="more-429"></span></p>
<h2>2.3 Komponen Blok III</h2>
<p>Blok III berfungsi memvisualisasikan posisi kendaraan di atas peta digital. Data posisi dan tracking kendaraan diambil dari database. Tipe koordinat yang digunakan pada MapObject (ActiveX untuk menampilkan peta) adalah D.d, sehingga data longitude dan latitude dari database (dalam bentuk DM.m) perlu dikonversi ke bentuk D.d. Data tersebut dijadikan dasar untuk memvisulisasikan posisi kendaraan yang diwakili dengan sebuah titik di atas peta digital yang telah diload dari file *.shp sebelumnya. Proses pada blok III dapat dilihat pada gambar 4.</p>
<p style="text-align: center;">
<div id="attachment_436" class="wp-caption aligncenter" style="width: 540px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_admin_block.png"><img class="size-full wp-image-436 " title="mobile_tracking_admin_block" src="http://www.andisun.com/wp-content/uploads/2009/09/mobile_tracking_admin_block.png" alt="Komponen blok III" width="530" height="316" /></a><p class="wp-caption-text">Proses komponen blok III</p></div>
<h1>3.  HASIL DAN PEMBAHASAN</h1>
<p>Penelitian  dengan melakukan perjalanan langsung pada sebagain jalan di kota DIY dengan membawa modul<a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps"> GPS <em>receiver</em></a> dan <em>handphone</em> yang sudah dilengkapi dengan program J2ME.</p>
<p>Sistem ini dilihat dari sisi operator berisi tampilan peta digital dan titik-titik yang mengambarkan posisi kendaraan. Operator hanya dengan melihat tampilan monitoring, maka visualisasi akan selalu terupdate secara otomatis.</p>
<h2>3.1 Pembacaan Informasi dari GPS</h2>
<p>Data posisi dikirim dari modul <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS</a> dalam format <a href="http://www.andisun.com/artikel/national-marine-electronics-association-nmea-0183-tipe-rmc">NMEA</a>-0183 tipe RMC dengan koneksi melalui bluetooth. Pada penelitian ini data yang diterima di <em>handphone</em> tidak selamanya lengkap. Perbandingan data penuh dan tidak penuh adalah sebagai berikut:</p>
<p>Contoh data lengkap:</p>
<pre>$GPRMC,065102,A,0745.6301,S,11024.5308,E,000.0,066.2,030306,001.1,E*65</pre>
<p>Contoh data tidak lengkap:</p>
<pre>A,0745.6301,S,11024.5308,E,000.0,066.2,030306,001.1,E*65</pre>
<p>Pembacaan data penuh akan menghasilkan informasi posisi dan visualisasi yang baik. Aplikasi yang dibangun belum stabil, karena pada waktu tertentu aplikasi akan tertutup sendiri tanpa ada pesan kesalahan.</p>
<h2>3.2 Hasil Pengiriman Data Posisi</h2>
<p>Berdasarkan hasil penelitian di lapangan dengan pengaturan interval pengiriman dalam <em>handphone</em> adalah 3 detik diperoleh data seperti pada tabel 1.</p>
<p>Tabel 1.  Data posisi hasil pengiriman</p>
<table style="width: 589px; height: 539px;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="53"><strong>ID</strong></td>
<td width="161"><strong>GtTgl</strong></td>
<td width="78"><strong>GtLong</strong></td>
<td width="85"><strong>GtLat</strong></td>
<td width="46"><strong>Speed</strong></td>
<td width="86"><strong>Jam</strong></td>
<td width="62"><strong>Interval</strong></td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:49:47.623</td>
<td width="78">11025.8600</td>
<td width="85">-0746.2964</td>
<td width="46">0.0</td>
<td width="86">10:49:47.623</td>
<td width="62"></td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:49:55.170</td>
<td width="78">11025.8592</td>
<td width="85">-0746.2967</td>
<td width="46">6.3</td>
<td width="86">10:49:55.170</td>
<td width="62">00:07.5</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:02.030</td>
<td width="78">11025.8568</td>
<td width="85">-0746.3147</td>
<td width="46">25.0</td>
<td width="86">10:50:02.030</td>
<td width="62">00:06.9</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:09.077</td>
<td width="78">11025.8544</td>
<td width="85">-0746.3478</td>
<td width="46">33.5</td>
<td width="86">10:50:09.077</td>
<td width="62">00:07.0</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:15.983</td>
<td width="78">11025.8506</td>
<td width="85">-0746.3878</td>
<td width="46">40.5</td>
<td width="86">10:50:15.983</td>
<td width="62">00:06.9</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:23.043</td>
<td width="78">11025.8469</td>
<td width="85">-0746.4323</td>
<td width="46">42.2</td>
<td width="86">10:50:23.043</td>
<td width="62">00:07.1</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:30.780</td>
<td width="78">11025.8428</td>
<td width="85">-0746.4773</td>
<td width="46">44.4</td>
<td width="86">10:50:30.780</td>
<td width="62">00:07.7</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:38.013</td>
<td width="78">11025.8375</td>
<td width="85">-0746.5316</td>
<td width="46">45.0</td>
<td width="86">10:50:38.013</td>
<td width="62">00:07.2</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:45.060</td>
<td width="78">11025.8329</td>
<td width="85">-0746.5786</td>
<td width="46">46.1</td>
<td width="86">10:50:45.060</td>
<td width="62">00:07.0</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:51.950</td>
<td width="78">11025.8291</td>
<td width="85">-0746.6154</td>
<td width="46">18.1</td>
<td width="86">10:50:51.950</td>
<td width="62">00:06.9</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:50:59.200</td>
<td width="78">11025.8283</td>
<td width="85">-0746.6197</td>
<td width="46">0.0</td>
<td width="86">10:50:59.200</td>
<td width="62">00:07.3</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:51:06.043</td>
<td width="78">11025.8288</td>
<td width="85">-0746.6256</td>
<td width="46">14.2</td>
<td width="86">10:51:06.043</td>
<td width="62">00:06.8</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:51:13.013</td>
<td width="78">11025.8259</td>
<td width="85">-0746.6535</td>
<td width="46">32.6</td>
<td width="86">10:51:13.013</td>
<td width="62">00:07.0</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:51:20.077</td>
<td width="78">11025.8217</td>
<td width="85">-0746.6906</td>
<td width="46">37.9</td>
<td width="86">10:51:20.077</td>
<td width="62">00:07.1</td>
</tr>
<tr>
<td width="53">3</td>
<td width="161">2007-01-04 10:51:26.920</td>
<td width="78">11025.8177</td>
<td width="85">-0746.7319</td>
<td width="46">40.5</td>
<td width="86">10:51:26.920</td>
<td width="62">00:06.8</td>
</tr>
</tbody>
</table>
<p>Keterangan:</p>
<p>Interval = waktu pengiriman dikurangi waktu pengiriman sebelumnya.</p>
<p>Dari tabel 1 di atas dapat diambil kesimpulan bahwa:</p>
<ol>
<li>Rata-rata jeda waktu pengiriman         : 7.1 detik</li>
<li>Pengiriman tercepat                                  : 6.8 detik</li>
<li>Pengiriman terlama                                   : 7.7 detik</li>
</ol>
<h2>3.3 Besar Data GPRS</h2>
<p>Besar data yang dikirim penulis dapat dari daftar log GPRS pada <em>handphone</em>.</p>
<p>Hasil penelitian didapat data sebagai berikut:</p>
<ol>
<li>Jumlah data     : 51 data</li>
<li>Total <em>sent </em> : 26.14 kb</li>
<li>Total <em>receiver </em>: 29.01 kb</li>
</ol>
<p>Jumlah data yang dikirim per satu kali kirim berdasarkan data di atas dirumuskan sebagai berikut:</p>
<p><a href="http://www.andisun.com/wp-content/uploads/2009/09/formula.png"><img class="alignnone size-full wp-image-434" title="formula" src="http://www.andisun.com/wp-content/uploads/2009/09/formula.png" alt="formula" width="296" height="45" /></a></p>
<p><a href="http://www.andisun.com/wp-content/uploads/2009/09/formula_result.png"><img class="alignnone size-full wp-image-435" title="formula_result" src="http://www.andisun.com/wp-content/uploads/2009/09/formula_result.png" alt="formula_result" width="137" height="42" /></a></p>
<p>Jadi per satu kali pengiriman data posisi sebuah taksi adalah : 1.08 Kb.</p>
<h2>3.4 Monitoring Posisi Terakhir</h2>
<p>Sebelum ditampilkan dalam MapObject, maka data dari Database yang berformat DM.m harus diubah menjadi D.d.</p>
<div id="attachment_433" class="wp-caption aligncenter" style="width: 540px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/screenshoot_tracking_monitoring.png"><img class="size-full wp-image-433" title="screenshoot_tracking_monitoring" src="http://www.andisun.com/wp-content/uploads/2009/09/screenshoot_tracking_monitoring.png" alt="Visualisasi posisi terakhir" width="530" height="398" /></a><p class="wp-caption-text">Visualisasi posisi terakhir</p></div>
<p>Posisi titik yang menggambarkan taksi selalu berpindah-pindah sesuai data posisi terakhir yang diambil dari database.</p>
<h2>3.5 Tracking Kendaraan</h2>
<p>Proses tracking kendaraan diawali dengan mengambil data track dari database berdasarkan tanggal tertentu. Titik awal pergerakan diwakili dengan titik berwarna merah sedangkan titik yang bergerak berwarna hijau, sedangkan garis track yang dilalui berwarna biru.</p>
<div id="attachment_437" class="wp-caption aligncenter" style="width: 540px"><a href="http://www.andisun.com/wp-content/uploads/2009/09/screenshot_tracking_line_track.png"><img class="size-full wp-image-437" title="screenshot_tracking_line_track" src="http://www.andisun.com/wp-content/uploads/2009/09/screenshot_tracking_line_track.png" alt="Visualisasi garis diambil berdasarkan koordinat" width="530" height="398" /></a><p class="wp-caption-text">Visualisasi garis diambil berdasarkan koordinat</p></div>
<p>Hasil penelitian bahwa garis track dihasilkan dengan menggabungkan sebuah posisi dengan posisi berikutnya. Hasil garis track secara visual kadang tidak sesuai dengan jalur jalan. Hal tersebut dapat terjadi pada saat jalan bercabang kendaraan tidak mengirimkan posisinya.</p>
<h1>4.  KESIMPULAN</h1>
<p>Dari hasil penelitian, perancangan dan implementasi yang telah dilakukan maka dapat disimpulkan bahwa:</p>
<ol>
<li>Koordinat yang diperoleh dari modul <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS <em>receiver</em></a> dalam bentuk DM.m harus diubah ke bentuk D.d agar dikenali pada MapObject.</li>
<li>Proses pengiriman data menggunakan GPRS rata-rata membutuhkan waktu sekitar 3 detik dengan jumlah data yang dikirim sebesar 1.08 KB.</li>
<li>Aplikasi <a href="http://www.andisun.com/artikel/sekilas-java-2-microedition-j2me">J2ME </a>yang diinstall pada <em>handphone</em> belum berfungsi maksimal (100%) karena pada waktu tak tentu aplikasi tertutup sendiri.</li>
<li>Ketepatan visualisasi posisi dan tracking ditentukan oleh akurasi modul <a href="http://www.andisun.com/jurnal/menentukan-posisi-dengan-global-positioning-system-gps">GPS <em>receiver</em></a> dan peta digital yang digunakan.</li>
</ol>
<h1>5.  DAFTAR PUSTAKA</h1>
<ol>
<li>[And07] Sunyoto, Andi., 2007, ”Thesis: Integrasi Modul GPS Receiver dan GPRS untuk Penentuan Posisi dan Jalur Pergerakan Obyek Bergerak (Studi Kasus : Penentuan Posisi Taksi di Yogyakarta)”, S2 Jurusan Ilmu Komputer, UGM, 2007.</li>
<li>[Bal--] Baldus, G., Kim J.,____“Collier County Government: Integrating GIS and Real-Time Vehicle Tracking for County Emergency Response”, Naples, Florida.</li>
<li>[Fal00] Fallon, E., 2000, “Dublin Bus Tracking Service Design and implementation of a device independent passenger information”,  http://citeseer.ist.psu.edu/rd/79396097%2C435540%2C1%2C0.25%2CDownload/ftp%3AqSqqSqftp.cs.tcd.ieqSqpubqSqtech-reportsqSqreports.00qSqTCD-CS-2000-47.pdf, (Di download 26 Juni 2006).</li>
<li>[Fen01] Feng Y, Zhu J., &#8220;Wireless Java Programming with Java 2 Micro Edition&#8221;, SAMS, Indianapolish, 2001.</li>
<li>[Haf96] Hafberg, G., 1996, “Integration of Geographic Informastion Systems and Navigation Systems for Moving (Dynamic) Objects Like Vehiclas and Ship “,  http://gis.esri.com/library/userconf/proc95/to300/p272.html.</li>
<li>[Has95] Hasanuddin, A.Z., 1995.,  “Penentuan Posisi dengan GPS dan Aplikasinya”. Pradnya Paramita. Jakarta.</li>
<li>[Pet06] Peter&#8217;s and Joe&#8217;s, 2006,  “NMEA Data”, http://www.gpsinformation.org/dale/nmea.htm, 4 Dec 2006.</li>
<li>[Pra02] Prahasta, E., 2002 “Konsep-Konsep Dasar Sistem Informasi Geografis”, Informatika, Bandung.</li>
<li>[Sch05] Schmidt, A., Holleis, P., Kranz, Matthias., Rukzio, E., ____, “Accessing GPS Receiver from Mobile Phone Via Bluetooth”, http://www.hcilab.org/documents/tutorials/BT_GPS/BT_GPS.htm, Ludwig-Maximilians-University Munich, Desember 2005.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/jurnal/mobile-tracking-memanfaatkan-teknologi-global-positioning-system-gps-dan-general-packet-radio-service-gprs/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>J2ME: Pengaksesan File Multimedia Pada Mobile Device dengan MMAPI</title>
		<link>http://www.andisun.com/jurnal/j2me-pengaksesan-file-multimedia-pada-mobile-device-dengan-mmapi-2</link>
		<comments>http://www.andisun.com/jurnal/j2me-pengaksesan-file-multimedia-pada-mobile-device-dengan-mmapi-2#comments</comments>
		<pubDate>Thu, 03 Sep 2009 02:24:20 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Jurnal]]></category>
		<category><![CDATA[Device]]></category>
		<category><![CDATA[Interface]]></category>
		<category><![CDATA[J2ME]]></category>
		<category><![CDATA[MMAPI]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Player]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=397</guid>
		<description><![CDATA[By: Andi Sunyoto
Abstraksi
Mobile Media API (MMAPI) is an optional package yang mendukung aplikasi multimedia di peralatan J2ME. Ini adalah standar Java yang ditetapkan oleh Java Community Process (JCP) dalam JSR 135. Standar ini didesain fleksibel jalan di beberapa protokol dan format; contoh pengimplementasiannya tidak harus dengan protokol HTTP atau Real-Time Transport Protokol (RTP) saja, atau [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">By: Andi Sunyoto</p>
<p align="center">Abstraksi</p>
<p align="center"><em>Mobile Media API (MMAPI)</em> is an <em>optional package</em> yang mendukung aplikasi multimedia di peralatan J2ME. Ini adalah standar Java yang ditetapkan oleh <em>Java Community Process (JCP)</em> dalam JSR 135. Standar ini didesain fleksibel jalan di beberapa protokol dan format; contoh pengimplementasiannya tidak harus dengan protokol HTTP atau <em>Real-Time Transport Protokol (RTP) </em>saja, atau media dengan format MP3. MIDI atau MPEG-4 saja.</p>
<h2>Pengantar MMAPI</h2>
<p>Artikel ini menyediakan suatu pengenalan dari arsitektur MMAPI dan API, yang dilengkapi suatu contoh kode yang menunjukkan bagaimana MMAPI dapat digunakan untuk membangun aplikasi-aplikasi multimedia <em>Wireless Java</em>.</p>
<p>MMAPI sudah dirancang untuk berjalan di setiap virtual machine berbasis J2ME, termasuk CDC dan CLDC.</p>
<p>Pengembang MMAPI dirancang dengan fitur sebagai berikut:</p>
<ul>
<li>Mendukung untuk <em>Tone Generation, Playback, and Recording of Time-Based Media</em>: paket ini mendukung setiap isi audio dan video yang berbasis waktu (time-based).</li>
<li><em>Small Footprint</em>:<em> </em>MMAPI bekerja pada batas-batas memori yang tegas dari alat-alat CLDC.</li>
<li><em>Protocol- and Content-Agnostic</em>:<em> </em>API tidak dibiaskan ke tipe atau protokol yang spesifik.</li>
<li><em>Subsettable: </em>pengembang dapat mendukung tipe tertentu.</li>
<li><em>Extensible</em>: Fitur baru dapat ditambahkan dengan mudah tanpa menghilangkan kemampuan sistem yang sebelumnya. Lebih penting lagi, format-format tambahan dapat dengan mudah didukung, dikbuat framework dan ditempatkan untuk kontrol tambahan.</li>
<li><em>Options for Implementers</em>: API menawarkan fitur untuk tujuan-tujuan yang tertentu. API didesain dan dirancang untuk mengizinkan developer meninggalkan beberapa fitur jika mereka tidak bisa didukung.</li>
</ul>
<h2>Multimedia Processing</h2>
<p>Ada dua bagian untuk mengolah multimedia:</p>
<ul>
<li><em>Protocol Handling: </em>membaca data dari suatu sumber seperti sebuah file atau suatu streaming server ke dalam sistem media-processing.</li>
<li><em>Content Handling</em>: menguraikan (parsing) atau decoding data dan merendernya menjadi sebuah keluaran seperti spiker audio atau layar video.</li>
</ul>
<p>Agar dapat memfasilitasi operasi di atas, API menyediakan dua tipe obyek high-level:</p>
<ul>
<li>DataSource mengencapsulasi penanganan protokol dengan penyembunyian detail bagaimana data itu dibaca dari sumbernya. Method obyek mempunyai berguna yang memungkinkan obyek Player menangani  isi.</li>
<li>Player membaca data dari DataSource, memprosesnya merendernya untuk ditampilkan di piranti. Obyek ini menyediakan metoda untuk mengendalikan media untuk playback, termasuk metoda untuk mengendalikan tipe tertentu mengakses fitur tipe media tertentu..</li>
</ul>
<p>MMAPI menetapkan obyek ketiga, sebuah mekanisme yang dikenal sebagai Manager yang memungkinkan aplikasi membuat Players dari DataSources, dan dari InputStreams.</p>
<p align="center">
<p align="center">
<div id="attachment_398" class="wp-caption aligncenter" style="width: 383px"><img class="size-full wp-image-398" title="arsitektur_mmapi_j2me" src="http://www.andisun.com/wp-content/uploads/2009/09/arsitektur_mmapi_j2me.png" alt="Arsitektur MMAPI" width="373" height="235" /><p class="wp-caption-text">Arsitektur MMAPI</p></div>
<p><span id="more-397"></span></p>
<p>Obyek Manager menyediakan method createPlayer(), yang merupakan level tertinggi API untuk memasukkan input. Berikut contoh penggunaannya:</p>
<pre>...
Player player = Manager.createPlayer(String url);
...</pre>
<p>Keterangan:</p>
<ul>
<li>url : berisi protokol dan isi url</li>
<li>format pengisian url &lt;protokol&gt;:&lt;isi lokasi&gt;</li>
</ul>
<p>Aplikasi menggunakan method yang dikembalikan Player untuk mengontrol data yang didapatkan dan playback media yang berdasarkan waktu <em>(time-based)</em>.</p>
<p><em>Life-cycle Player</em> berisi lima keadaan: UNREALIZED, REALIZED, PREFETCHED, STARTED, dan CLOSED. Ke enam method menghasilkan transisi keadaan:</p>
<pre>realize()
prefetch()
start()
stop()
deallocate()
close()</pre>
<p>Ketika sebuah player dibuat, berubah ke keadaan UNREALIZED. Kemudian memanggil realize() pindah ke keadaan REALIZED dan menganalisa informasi. Memanggil prefetch() keadaan pindah ke PREFETCHED, menetapkan koneksi jaringan untuk streaming data, dan melakukan tugas-tugas inisialisasi lainnya. Memangil start() menyebabkan transisi ke keadaan STARTED, dimana player dapat memproses data. Ketika selesai memproses data (sampai ke bagian terakhir data), akan mengembalikan keadaan PREFETCHED. Memanggil close() meyebabkan player pindah ke status CLOSED.</p>
<p>Sebuah Player menyediakan kendali yang dikhususkan untuk jenis tertentu dari media yang memproses. Aplikasi menggunakan getControl() untuk memperoleh suatu kendali, atau getControls() untuk mendapat satu berpakaian tentang mereka. Sebagai satu contoh, jika suatu pemain untuk MIDI menggunakan getControl() itu, maka akan mendapat MIDIControl.</p>
<p>MMAPI dikemas dalam tiga paket:</p>
<ul>
<li>javax.microedition.media menyediakan beberapa interface, sebuah exception, dan class Manager, merupakan titik akses untuk memperoleh sumber daya, seperti Players untuk pengolahan multimedia.</li>
<li>javax.microedition.media.control menetapkan tipe control spesifik yang dapat digunakan dengan sebuah Player: VolumeControl, VideoControl, dan lainnya.</li>
<li>javax.microedition.media.protocol menetapkan protokol untuk menangani control yang berbeda.</li>
</ul>
<p>Class, interface dan exception yang ada dipaket ini berisi dapat dilihat pada tabel berikut:</p>
<p style="text-align: left;">Tabel 1 : Class MMAPI</p>
<table style="width: 589px; height: 258px;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="243" valign="top"><strong>Package</strong></td>
<td width="141" valign="top"><strong>Class</strong></td>
<td width="207" valign="top"><strong>Keterangan</strong></td>
</tr>
<tr>
<td width="243" valign="top">javax.microedition.media</td>
<td width="141" valign="top">Manager</td>
<td width="207" valign="top">Akses untuk   memperoleh sumber daya pada system-dependent, seperti Player   untuk mengolah multimedia.</td>
</tr>
<tr>
<td width="243" valign="top">javax.microedition.media.protocol</td>
<td width="141" valign="top">ContentDescriptor</td>
<td width="207" valign="top">Mendeskripsikan   tipe isi dari media.</td>
</tr>
<tr>
<td width="243" valign="top">javax.microedition.media.protocol</td>
<td width="141" valign="top">DataSource</td>
<td width="207" valign="top">Menunjukkan bentuk abstraksi untuk protokol media   menangani penyembunyian detail bagaimana data itu dibaca dari suatu file   media atau server streaming; menyediakan  method untuk Player mengakses   data masukan.</td>
</tr>
</tbody>
</table>
<p style="text-align: left;">Table 2: MMAPI Interfaces</p>
<table style="width: 583px; height: 1018px;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="235" valign="top"><strong>Package</strong></td>
<td width="165" valign="top"><strong>Interface</strong></td>
<td width="174" valign="top"><strong>Keterangan</strong></td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media</td>
<td width="165" valign="top">Control</td>
<td width="174" valign="top">Digunakan untuk mengendalikan beberapa pengolahan media   yang berhubungan dengan fungsi:diperoleh dari interface Controllable,   diturunkan oleh Player; mungkinkan suatu Player   untuk menggunakan, sebagai contoh VolumeControl untuk mengizinkan user untuk   menset volume.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media</td>
<td width="165" valign="top">Controllable</td>
<td width="174" valign="top">Menyediakan sebuah interface untuk memperoleh Control   dari Player   atau obyek lain.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media</td>
<td width="165" valign="top">Player</td>
<td width="174" valign="top">Digunakan untuk mengontrol render dari data media.   Menyediakan method untuk mengatur life-cycle Player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media</td>
<td width="165" valign="top">PlayerListener</td>
<td width="174" valign="top">Menerima event yang dibuat oleh Player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media</td>
<td width="165" valign="top">TimeBase</td>
<td width="174" valign="top">Mengetahui urutan program tiap waktunya; digunakan untuk   ukuran waktu proses, dan sikronisais media playback dengan banyak user.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">FramePositionControl</td>
<td width="174" valign="top">Mengontrol secara persis posisi frame dari video untuk   sebuah Player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">GUIControl</td>
<td width="174" valign="top">Harus   diimplementasikan pada setiap control yang mendukung komponen GUI.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">MetaDataControl</td>
<td width="174" valign="top">Digunakan untuk   mendapatkan informasi metadata di dalam media streaming.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">MIDIControl</td>
<td width="174" valign="top">Menyediakan akses render dan mengirimkan MIDI.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">PitchControl</td>
<td width="174" valign="top">Mengontrol pola playback audio tanpa merubah kecepatan   playback.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">RateControl</td>
<td width="174" valign="top">Mengontrol playback rate dari player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">RecordControl</td>
<td width="174" valign="top">Mengontrol recoding media dari   player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">StopTimeControl</td>
<td width="174" valign="top">Digunakan menentukan waktu stop untuk sebuah player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">TempoControl</td>
<td width="174" valign="top">Mengontrol   tempo sebuah lagu: diimplementasikan dalam player pada file MIDI.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">ToneControl</td>
<td width="174" valign="top">Mungkinkan user   playback (memutar ulang) urutan nada-nada tunggal.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">VideoControl</td>
<td width="174" valign="top">Mengontrol   tampilan video, sebagai contoh lokasinya dicanvas dimana video ditampilkan.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.control</td>
<td width="165" valign="top">VolumeControl</td>
<td width="174" valign="top">Mengontrol volume player.</td>
</tr>
<tr>
<td width="235" valign="top">javax.microedition.media.protocol</td>
<td width="165" valign="top">SourceStream</td>
<td width="174" valign="top">Digunakan   bersama dengan DataSource untuk menyediakan interface   masukan Player; turunan dari interface   Controllable, sehingga menyediakan kendali yang spesifik.</td>
</tr>
</tbody>
</table>
<p style="text-align: left;">Table 3: MMAPI Exceptions</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="197" valign="top"><strong>Package</strong></td>
<td width="197" valign="top"><strong>Exception</strong></td>
<td width="197" valign="top"><strong>Keterangan</strong></td>
</tr>
<tr>
<td width="197" valign="top">javax.microedition.media</td>
<td width="197" valign="top">MediaException</td>
<td width="197" valign="top">Melaporkan kesalahan tidak terduga (unexpected)   method mengolaah media.</td>
</tr>
</tbody>
</table>
<h2>Menggunakan MMAPI</h2>
<p>Pada bagian ini akan dibahas bagaimana memanfaatkan MMAPI untuk membangun aplikasi J2ME berbasis MMAPI.</p>
<h3>Aplikasi Tone</h3>
<p>Pembuatan Tone di identikkan dengan frekusi dan durasi. Tipe ini penting untuk game dan aplikasi audio, terutama untuk peralatan kecil, dimana hanya mempunyai kemampuan multimedia yang terbatas. Method Manager.playTone() membuat tone. Implemtasinya dapat dipetakan pada hardware tone generator, yaitu menetapkan note, durasi, dan volume.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code23'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39723"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code" id="p397code23"><pre class="java" style="font-family:monospace;">...
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
   <span style="color: #666666; font-style: italic;">// play a tone for 4000 milliseconds at volume 100</span>
   Manager.<span style="color: #006633;">playTone</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#40;</span>ToneControl.<span style="color: #006633;">C4</span>, <span style="color: #cc66cc;">4000</span>, <span style="color: #cc66cc;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>MediaException me<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
...</pre></td></tr></table></div>

<h3>Aplikasi MP3 Playback</h3>
<p>Berikut contoh simple bagaimana memutar file mp3 tanpa dilengkapi pengontrol.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code24'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39724"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code" id="p397code24"><pre class="java" style="font-family:monospace;">...
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
   Player p <span style="color: #339933;">=</span> Manager.<span style="color: #006633;">createPlayer</span>
	 <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;http://server/somemusic.mp3&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   p.<span style="color: #006633;">setLoopCount</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   p.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> ioe<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>MediaException e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
...</pre></td></tr></table></div>

<p>Berikut potongan program yang dilengkapi dengan pegontrol media.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code25'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39725"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
</pre></td><td class="code" id="p397code25"><pre class="java" style="font-family:monospace;">...
<span style="color: #006633;">Player</span> p<span style="color: #339933;">;</span>
VolumeControl vc<span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
   p <span style="color: #339933;">=</span> Manager.<span style="color: #006633;">createPlayer</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;http://server/somemusic.mp3&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   p.<span style="color: #006633;">realize</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #666666; font-style: italic;">// get volume control for player and set volume to max</span>
   vc <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>VolumeControl<span style="color: #009900;">&#41;</span> p.<span style="color: #006633;">getControl</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;VolumeControl&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>vc <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	  vc.<span style="color: #006633;">setVolume</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
   <span style="color: #666666; font-style: italic;">// the player can start with the smallest latency</span>
   p.<span style="color: #006633;">prefetch</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #666666; font-style: italic;">// non-blocking start</span>
   p.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> ioe<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>MediaException e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
...</pre></td></tr></table></div>

<p>Karena semua InputStream dapat dilewatkan method Manager.createPlayer(), maka aplikasi dapat diputar ulang media dari MIDP Record Management System (RMS), atau dari file JAR. Berikut ini bagaimana memperoleh InputStream dari RMS dan memutar media yang disimpan didalamnya.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code26'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39726"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code" id="p397code26"><pre class="java" style="font-family:monospace;">...
<span style="color: #006633;">RecordStore</span> store<span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">int</span> id<span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">// play back from a record store</span>
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
   <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Abytearrayinputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">ByteArrayInputStream</span></a>
	 <span style="color: #009900;">&#40;</span>store.<span style="color: #006633;">getRecord</span><span style="color: #009900;">&#40;</span>id<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   Player player <span style="color: #339933;">=</span> Manager.<span style="color: #006633;">createPlayer</span><span style="color: #009900;">&#40;</span>is, <span style="color: #0000ff;">&quot;audio/X-wav&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   p.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> ioe<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span>MediaException me<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
...</pre></td></tr></table></div>

<p>Di bawah ini contoh yang menyimpan mediannya di file JAR.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code27'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39727"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code" id="p397code27"><pre class="java" style="font-family:monospace;">...
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
   <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is <span style="color: #339933;">=</span>
	 getClass<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getResourceAsStream</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;audio.wav&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   Player player <span style="color: #339933;">=</span> Manager.<span style="color: #006633;">createPlayer</span><span style="color: #009900;">&#40;</span>is, <span style="color: #0000ff;">&quot;audio/X-wav&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   p.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> ioe<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>MediaException me<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
...</pre></td></tr></table></div>

<h3>Aplikasi Video Playback</h3>
<p>Berikut potongan program yang menunjukkan bagaimana memutar sebuah video berformat MPG.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code28'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39728"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
</pre></td><td class="code" id="p397code28"><pre class="java" style="font-family:monospace;">...
<span style="color: #006633;">Player</span> p<span style="color: #339933;">;</span>
VideoControl vc<span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
   p <span style="color: #339933;">=</span> Manager.<span style="color: #006633;">createPlayer</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;http://server/somemovie.mpg&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   p.<span style="color: #006633;">realize</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #666666; font-style: italic;">// get video control</span>
   vc <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>VideoControl<span style="color: #009900;">&#41;</span> p.<span style="color: #006633;">getControl</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;VideoControl&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   ....
   <span style="color: #006633;">p</span>.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> ioe<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>MediaException me<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #009900;">&#125;</span>
...</pre></td></tr></table></div>

<h3>Aplikasi Camera</h3>
<p>MMAPI memasukkan dukungan kamera di dalamnya.</p>
<h4>Capture Video dari Player</h4>
<p>Penentuan lokasi untuk kamera menggunakan: capture://video. Suatu aplikasi dapat menggunakan VideoControl untuk menampilkan suatu view finder di layar dengan ukuran standar.</p>
<pre>mPlayer = Manager.createPlayer("capture://video");</pre>
<p>Jika piranti yang digunakan tidak mendukung video capture, maka akan menghasilkan MediaException. Jika MediaException bernilai true medukung video capture.</p>
<p>Player perlu di release untuk memperoleh resource yang diperlukan dalam mengambil gambar.</p>
<pre>mPlayer.realize();</pre>
<h4>Menampilkan Camera Video</h4>
<p>Video yang berasal dari camera dapat ditampilkan di layar sebagai salah satu Item dalam Form atau bagian dari Canvas. Sebuah VideoControl membuatnya mungkin. VideoControl dapat diperoleh dari Player.</p>
<pre>mVideoControl = (VideoControl)
mPlayer.getControl("VideoControl");</pre>
<p>Jika mengharapkan menampilkan video dari camera di Canvas, inisialisasi VideoControl, kemudian set ukuran dan lokasi dari video di dalam Canvas, kemudian buat video menjadi terlihat (visible). Contoh berikut (konstruktor Canvas dan subclass) menunjukkan bagaimana video ditempatkan dua pixel di dalam form Canvas. Jika video tidak dapat ditempatkan pada lokasi yang ditentukan, maka oleh kontruktor diset menjadi satu layar penuh (full screen). Langkah terakhir adalah memanggil method setVisible() agar camera tampil.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code29'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39729"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
</pre></td><td class="code" id="p397code29"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> CameraCanvas<span style="color: #009900;">&#40;</span>SnapperMIDlet midlet,
	VideoControl videoControl<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #000066; font-weight: bold;">int</span> width <span style="color: #339933;">=</span> getWidth<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #000066; font-weight: bold;">int</span> height <span style="color: #339933;">=</span> getHeight<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  mSnapperMIDlet <span style="color: #339933;">=</span> midlet<span style="color: #339933;">;</span>
&nbsp;
  videoControl.<span style="color: #006633;">initDisplayMode</span><span style="color: #009900;">&#40;</span>
	  VideoControl.<span style="color: #006633;">USE_DIRECT_VIDEO</span>, <span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
	videoControl.<span style="color: #006633;">setDisplayLocation</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	videoControl.<span style="color: #006633;">setDisplaySize</span><span style="color: #009900;">&#40;</span>width <span style="color: #339933;">-</span> <span style="color: #cc66cc;">4</span>, height <span style="color: #339933;">-</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
  <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span>MediaException me<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span> videoControl.<span style="color: #006633;">setDisplayFullScreen</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span>MediaException me2<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
  videoControl.<span style="color: #006633;">setVisible</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Menampilkan video camera dalam sebuah Form hanya berbeda sedikit. Pada method initDisplayMode() pada VideoControl dari USE_DIRECT_VIDEO diganti dengan USE_GUI_PRIMITIVE. Dalam piranti MIDP dapat memperoleh Item yang dan dapat ditempatkan di dalam sebuah Form untuk ditampilkan.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code30'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39730"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p397code30"><pre class="java" style="font-family:monospace;">Form form <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Form<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Camera form&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
Item item <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>Item<span style="color: #009900;">&#41;</span>mVideoControl.<span style="color: #006633;">initDisplayMode</span><span style="color: #009900;">&#40;</span>
GUIControl.<span style="color: #006633;">USE_GUI_PRIMITIVE</span>, <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
form.<span style="color: #006633;">append</span><span style="color: #009900;">&#40;</span>item<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<h4>Capture Image</h4>
<p>Sekali camera dapat ditampilkan dipiranti, maka capture sebuah image dapat dilakukan dengan mudah dengan memanggil getSnapshot() pada VideoControl. Method tersebut dapat dilengkapi dengan tipe gambar atau tanpa tipe gambar. Default gambar yang dihasilkan bertipe PNG tergantung dengan tipe handset yang digunakan.</p>
<p>Method getSnapshot() mengembalikan sebuah array bertipe byte, yang merupakan data image dalam format yang diinginkan. Dari hasil array tersebut poin yang dapat diambil adalah: mungkin menyimpan byte tersebut dalam record store, mengirimkan ke server atau membuat sebuah Image dari array tersebut sehingga user dapat melihat gambar yang baru saja diambilnya. Berikut contoh pembuatan Image dari array yang dihasilkan dari method getSnapshot().</p>
<pre>byte[] raw = mVideoControl.getSnapshot(null);
Image image = Image.createImage(raw, 0, raw.length);</pre>
<h4>Membuat Thumbnail Image</h4>
<p>Satu hal kelihatannya sederhana adalah bagaimana menampilkan image (gambar) dengan thumbnail, suatu versi menangkap gambar dari kamera. Pada MIDP 2.0 di dalamnya terdapat method untuk memperoleh MIDP 20 memasukkan di dalamnya metoda untuk memperoleh nilai piksel paling luar dari image, dengan nilai tersebut memungkinkan membuat skala transformasi yang benar. Sayangnya MIDP 1.0 tidak dapat menghasilkan data piksel.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p397code31'); return false;">View Code</a> JAVA</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p39731"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
</pre></td><td class="code" id="p397code31"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">private</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a> createThumbnail<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a> image<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #000066; font-weight: bold;">int</span> sourceWidth <span style="color: #339933;">=</span> image.<span style="color: #006633;">getWidth</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #000066; font-weight: bold;">int</span> sourceHeight <span style="color: #339933;">=</span> image.<span style="color: #006633;">getHeight</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">int</span> thumbWidth <span style="color: #339933;">=</span> <span style="color: #cc66cc;">64</span><span style="color: #339933;">;</span>
  <span style="color: #000066; font-weight: bold;">int</span> thumbHeight <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>thumbHeight <span style="color: #339933;">==</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
	thumbHeight <span style="color: #339933;">=</span> thumbWidth <span style="color: #339933;">*</span> sourceHeight <span style="color: #339933;">/</span> sourceWidth<span style="color: #339933;">;</span>
&nbsp;
  <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a> thumb <span style="color: #339933;">=</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a>.<span style="color: #006633;">createImage</span><span style="color: #009900;">&#40;</span>thumbWidth, thumbHeight<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Agraphics+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Graphics</span></a> g <span style="color: #339933;">=</span> thumb.<span style="color: #006633;">getGraphics</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> y <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> y <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> thumbHeight<span style="color: #339933;">;</span> y<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> x <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> thumbWidth<span style="color: #339933;">;</span> x<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	  g.<span style="color: #006633;">setClip</span><span style="color: #009900;">&#40;</span>x, y, <span style="color: #cc66cc;">1</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	  <span style="color: #000066; font-weight: bold;">int</span> dx <span style="color: #339933;">=</span> x <span style="color: #339933;">*</span> sourceWidth <span style="color: #339933;">/</span> thumbWidth<span style="color: #339933;">;</span>
	  <span style="color: #000066; font-weight: bold;">int</span> dy <span style="color: #339933;">=</span> y <span style="color: #339933;">*</span> sourceHeight <span style="color: #339933;">/</span> thumbHeight<span style="color: #339933;">;</span>
	  g.<span style="color: #006633;">drawImage</span><span style="color: #009900;">&#40;</span>image, x <span style="color: #339933;">-</span> dx, y <span style="color: #339933;">-</span> dy,
		  <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Agraphics+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Graphics</span></a>.<span style="color: #006633;">LEFT</span> <span style="color: #339933;">|</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Agraphics+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Graphics</span></a>.<span style="color: #006633;">TOP</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a> immutableThumb <span style="color: #339933;">=</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aimage+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Image</span></a>.<span style="color: #006633;">createImage</span><span style="color: #009900;">&#40;</span>thumb<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">return</span> immutableThumb<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>MMAPI mendukung beberapa format audio dan video, yaitu:</p>
<ul>
<li>Audio: PCM and WAV</li>
<li> MIDI: Type 0 (single track), Type 1 (multiple tracks), and SP-MIDI</li>
<li> Video: MPEG-1</li>
</ul>
<h2>Kesimpulan</h2>
<p>Mobile Media API adalah suatu API yang fleksibel dan powerfull yang menyediakan rendering dan capture data audio dan video. Lokasi file dapat ditempatkan di piranti mobile maupun di server dengan memanfaatkan koneksi jaringan internet.</p>
<h2>Daftar Pustaka</h2>
<ul>
<li>Knudsen, Jonathan., Taking Pictures with MMAPI., http://developers.sun.com/mobility/midp/articles/picture/., July 2003</li>
<li>Mahmoud, H, Qusay., The J2ME Mobile Media API., http://developers.sun.com/mobility/midp/articles/mmapioverview/., June 2003</li>
<li>Feng, Yu and Zhu Jun; Wireless Java Programming with 2 Micro Edition; SAMS; Indianapolis; USA; 2001</li>
<li>Keogh, James; J2ME:The Complete Reference; McGraw-Hill; New York;</li>
<li>Riggs, Roger; Taivalsaari, Antero; Peursem, Van, Jim; Huopaniemi, Jyri; Patel, Mark;  Uotila,  Aleksi; Editor,  Holliday, Jim; Programming Wireless Devices with the Java™ 2 Platform, Micro Edition, Second Edition; Addison Wesley; Juni 2003.</li>
<li>Sun Developer Network;Java 2 Platform, Micro Edition (J2ME); JSR 68 Overview;</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/jurnal/j2me-pengaksesan-file-multimedia-pada-mobile-device-dengan-mmapi-2/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Overview: High Speed Downlink Packet Access</title>
		<link>http://www.andisun.com/jurnal/overview-high-speed-downlink-packet-access</link>
		<comments>http://www.andisun.com/jurnal/overview-high-speed-downlink-packet-access#comments</comments>
		<pubDate>Thu, 20 Aug 2009 02:06:02 +0000</pubDate>
		<dc:creator>myandisun</dc:creator>
				<category><![CDATA[Jurnal]]></category>
		<category><![CDATA[2G]]></category>
		<category><![CDATA[3G]]></category>
		<category><![CDATA[Access]]></category>
		<category><![CDATA[downlink]]></category>
		<category><![CDATA[EDGE]]></category>
		<category><![CDATA[GPRS]]></category>
		<category><![CDATA[hsdpa]]></category>
		<category><![CDATA[packet]]></category>

		<guid isPermaLink="false">http://www.andisun.com/?p=386</guid>
		<description><![CDATA[Abstraksi
HSDPA (high speed downlink Packet Access) adalah teknologi yang datang menyertai 3G. yang membedakan antara 3G dan HSDPA adalah kecepatan akses transfer datanya walaupun infrastruktur yang digunakan sama, sehingga untuk mengimplementasikan HSDPA tidak memerlukan biaya investasi yang tinggi. Kecepatan HSDPA yang dipasang mendukung 1.8 Mbit/s sampai 3.6 Mbit/s saat downlink. Untuk kedepannya direncanakan mencapai 7.2 [...]]]></description>
			<content:encoded><![CDATA[<h1>Abstraksi</h1>
<p>HSDPA<em> (high speed downlink Packet Access)</em> adalah teknologi yang datang menyertai 3G. yang membedakan antara 3G dan HSDPA adalah kecepatan akses transfer datanya walaupun infrastruktur yang digunakan sama, sehingga untuk mengimplementasikan HSDPA tidak memerlukan biaya investasi yang tinggi. Kecepatan HSDPA yang dipasang mendukung 1.8 Mbit/s sampai 3.6 Mbit/s saat downlink. Untuk kedepannya direncanakan mencapai 7.2 Mbit/s. Keuntungan yang dapat diperoleh adalah user dapat untuk mengakses data yang besar.</p>
<h1>1.  Pendahuluan</h1>
<p>Solusi mobiltas adalah menggunakan teknologi <em>wireless</em>, yang memungkinkan pengguna untuk menjelajah dengan murah tanpa diributkan dengan kabel, walaupun masih memerlukan penanganan infrastruktur <em>back-end</em>. Dalam pembicaraan sehari-hari <em>wireless</em> adalah sebuah bungkus lama untuk radio transmiter (perpaduan antara peralatan <em>receiver</em> dan <em>transmitter</em>) seperti diterapkan pada jaman radio telegram. Sekarang teknologi tersebut berkembang pesat dengan memunculkan fitur baru.</p>
<p>Fenomena ketika GPRS keluar pertama kali, fitur ini menjadi pertimbangan utama saat membeli ponsel. Ketika teknologi 3G atau dieropa dikenal dengan nama UMTS <em>(universal mobile telecomunication system)</em> juga sama. Kemunculan 3G dibarengi dengan kemunculan HSDPA <em>(high speed downlink packet access)</em>. HSDPA adalah keturunan dari 3G. HSDPA ini dikenal dan digolongkan ke dalam teknologi 3.5G, karena kecepatan transfer datanya lebih bagus dibanding 3G. 3G pada permulaannya maksimal sampai 384 kbit/s, sedangkan dengan HSDPA dapat dinaikkan menjadi 14 Mbit/s.</p>
<p>Salah satu alasan HSDPA muncul hampir berberengan dengan 3G, karena HSDPA berjalan difrekuensi yang sama yang digunakan 3G. Sehingga investasi yang ditanamkan tidak terlalu besar terutama untuk software dan hardware.</p>
<p>Perkembangan HSDPA tidak terlepas dari perkembangan teknologi GSM pada tiap generasinya. Tiap generasi memiliki kemampuan transfer data yang lebih cepat. Berikut evolusi perkembangan generasi ke generasi GSM sampai ke arah HSDPA.</p>
<h1>2.  Generasi Perkembangan GSM</h1>
<h2>2.1. Generasi Pertama (1G)</h2>
<p>Hampir semua teknologi dimulai untuk keperluan militer yang kemudian dipergunakan untuk umum. Sama halnya dengan perkembangan teknologi GSM. Waktu 1G pendek di dalam perkembangan teknologi telepon mobile. 1G berupa telepon analog yang diperkenalkan pada tahun 1980an dan dilanjutkn sampai digantikan dengan generasi kedua (2G) yang berbentuk digital. Beberapa generasi pertama mengikuti standar NMT <em>(Nordisk MobilTelefoni atau Nordiska MobilTelefoni-gruppen)</em>, CDPD <em>(Celluler Digital Packet Data, Mobitex and DataTAC)</em>.</p>
<h2>2.2. Generasi Kedua (2G – 2.75G)</h2>
<p>Perbedaan utama antara dua sistem telepon mobile yang sukses ini yaitu 1G dan 2G adalah sinyal radio yang digunakan. Jaringan 1G mengunakan analog sedangkan 2G adalah digital. Percakapan dalam 2G diencode menjadi sinyal digital, tapi dalam 1G hanya dimodulasi ke frekuensi yang lebih tinggi (150 MHz ke atas). Terdapat dua standar besar dan kuduanya komersial, yaitu: dari Eropa dan dari America. Sekitar 60% sekarang dikuasai oleh pasar dari standar Eropa. Yang termasuk dalam generasi ini adalah:</p>
<ol>
<li>GSM <em>(Global System for Mobile Communications)</em> adalah standar paling populer untuk telepon mobile di dunia. Layanan GSM digunakan lebih dari 2 milyar orang di 212 negara dan kawasan. Jumlah negara yang banyak mengadopsi standar GSM memungkinkan kerjasama antar operator sehingga dapat digunakan untuk komunikasi user antar negara walaupun dengan operator yang berbeda. GSM bebeda dengan pendahulunya dalam jalur pensinyalan dan percakapan semuanya dalam bentuk digital. Fakta ini juga berarti komunikasi data telah dibangun dalam sistem.</li>
<li>GPRS <em>(General Packet Radio </em><em>Service<em>)</em></em> adalah layanan data mobile yang tersedia pada telepon GSM. GPRS sering disebut sebagai generasi “2.5G”, yaitu teknolgi antara generasi pertama dan generasi kedua dalam teknologi telepon mobile. Dibandingkan dengan pendahulunya GPRS memiliki transfer data yang cepat. GPRS memanfaatkan kanal TDMA yang tidak terpakai pada jaringan GSM. Dalam teori terbatas untuk paket data 171.2 kbit/s (menggunakan 8 slot dan CS-4 coding). Realisasinya bit rate nya adalah 30-80, karena memungkinkan menggunakan maksimal 4 slot untuk downlink.</li>
<li>EDGE (EGPRS) <em>(Enhanced Data </em><em>rates<em> for GSM Evolution)</em></em> adalah teknologi telepon mobile yang memperbaiki jaringan 2G dan 2.5G khususnya dalam jalur komunikasi data. Teknologi ini bekerja pada jaringan GSM. EDGE dapat bekerja pada janringan GPRS ada.</li>
<li>HSCSD <em>(High-Speed Circuit-Switched Data)</em>, iDEN <em>(Integrated Digital Enhanced Network, D-AMPS (Digital AMPS)</em>, IS-95, PDC <em>(Personal Digital Cellular)</em>, CSD <em>(Circuit Switched Data)</em>, PHS <em>(Personal Handy-phone System)</em>, WiDEN <em>(Wideband Integrated Dispatch Enhanced Network)</em> and CDMA2000 (1xRTT/IS-2000)</li>
</ol>
<h2>2.3.  Generasi ketiga (3G – 3.75G)</h2>
<p>Layanan luar biasa 3G memberikan kemampuan untuk mentransfer secara simultan baik data <em>voice </em>dan <em>non-voice</em> data (seperti saat download informasi, pertukaran email dan <em>instant messaging</em>). Standar 3G di dalamnya adalah:</p>
<ol>
<li>UMTS (3GSM) <em>(Universal Mobile Telecommunications System) </em>menggunakan W-CDMA di bawah standar 3GPP. UMTS mempunyai layanan data secara teori sampai 11 Mbit/s, meskipun dalam perkembangannya yang disebarkan ke user dalam jaringan performanya hanya mencapai 384 kbit/s untuk handset R99 dan 1-2 Mbit/s untuk handset HSDPA untuk koneksi downlink.</li>
<li>3.5G – HSDPA <em>(High-Speed Downlink Packet Access)</em> adalah protokol dalam telepon mobile berbasis jaringan UMTS 3G yang menyediakan transfer data yang lebih cepat. Sekarang HSDPA yang dipasang mendukung 1.8 Mbit/s sampai 3.6 Mbit/s saat downlink. Untuk kedepannya direncanakan mencapai 7.2 Mbit/s.</li>
<li>W-CDMA <em>(Wideband Code Division Multiple Access)</em>, FOMA <em>(Freedom of Mobile Multimedia Access)</em>, 1xEV-DO/IS-856 <em>(1x Evolution-Data Optimized)</em>, TD-SCDMA <em>(Time Division-Synchronous Code Division Multiple Access)</em>, GAN/UMA <em>(Generic Access Network)</em>, 3.75G – HSUPA <em>(High-Speed Uplink Packet Access)</em>.</li>
</ol>
<div id="attachment_387" class="wp-caption aligncenter" style="width: 575px"><img class="size-full wp-image-387" title="evolution_2G_to_3G" src="http://www.andisun.com/wp-content/uploads/2009/08/evolution_2G_to_3G.png" alt="Evolusi 3G ke 3G" width="565" height="299" /><p class="wp-caption-text">Evolusi 3G ke 3G</p></div>
<p><span id="more-386"></span>Untuk dapat membandingkan perbedaan tiap generasi dapat dilihat pada tabel berikut:</p>
<table style="width: 444px; height: 211px;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="17"><strong>Gen</strong></td>
<td width="98"><strong>Type</strong></td>
<td width="142"><strong>Typical Frequency</strong></td>
<td width="176"><strong>Typical Data Speeds</strong></td>
</tr>
<tr>
<td width="17" valign="top">1G<strong> </strong></td>
<td width="98" valign="top">Voice</td>
<td width="142" valign="top">Digital<br />
150– 900 MHz</td>
<td width="176" valign="top">600 -1200 bps</td>
</tr>
<tr>
<td width="17" valign="top">2G</td>
<td width="98" valign="top">Voice &amp; Data</td>
<td width="142" valign="top">Digital<br />
400 &amp; 450 MHz,<br />
900 &amp; 1800 MHz or<br />
850 &amp; 1900 MHz</td>
<td width="176" valign="top">9.6, 56 or 180 kbps</td>
</tr>
<tr>
<td width="17" valign="top">3G</td>
<td width="98" valign="top">Voice &amp; Data</td>
<td width="142" valign="top">Digital<br />
400 &amp; 450 MHz,<br />
900 &amp; 1800 MHz or<br />
850 &amp; 1900 MHz</td>
<td width="176" valign="top">384 kbps, 1.8 or 3.6   Mbps</td>
</tr>
</tbody>
</table>
<h2>2.4. Cara Kerja</h2>
<p>Pada dasarnya layana HSDPA tidak beda jauh dengan layanan yang diberikan oleh generasi sebleumnya yaitu: GPRS, CDMA, EDGE dan 3G. Teknologi tersebut memiliki kesamaan bahwa sama-sama menggunakan layanan lewat jalur IP (internet protokol). HSDPA diperkenalkan oleh Third Generation Partnership Project (3GPP) release 5standar. Tujuan utamanya adalah meningkatkan standar througput melalui konsep <em>multiple input multple output</em> (MIMO) atau dengan teknik antena array. Proses kerja cell menggunakan alokasi <em>asymetrics spectrum</em> frekuensi dalam <em>multi carries</em> cell. Efisiensi dari sistem menjadi dua kalilipat, yang artinya juga meningkatkan persepsi pelanggan terhadap kualitas layanan.</p>
<p>HSDPA menggunakan kanal baru yang dlimiki oleh 3G yaitu <em>high speed downlink shared channel</em> (HS-DSCH). Kanal tersebut beroperasi berbeda dengan jalur 3G yang ada. Penambahan kanal berupa implementasi <em>adaptive modulation and coding</em> (AMC), <em>hybrid automatic repestreQuest</em> (HARQ), <em>fast packet schedulling</em>, <em>retransmission<em> protokol and fast cell selection</em></em> (FCS), yang dikendalikan <em>medium access control</em> (AMC) di node yang berkemampuan 3G.HS-DSCH difungsikan untuk proses downlink data ponsel. Sedangkan untuk proses uplink, kemampuan HSDPA tak bisa sebesar downlinknya, yang secara teori hanya mampu sampai 2 Mbit/s.</p>
<p>Jaringan HSDPA secara fisik memiliki 3 kanal, yakni <em>high speed data physich downlink shared channel</em> (HS-PDSC), <em>high speed shared control channel </em>(HS-SCCH) dan <em>high speed dedicated physical control channel </em>(HS-DPCCH). HS-PDSCH mengadopsi <em>adaptive modulation</em> QPSK <em>(quadrature phase shift keying)</em> atau algoritma fase modulasi yang sudah ada, dan 16 QAM <em>(quadrative amplitude modulation)</em> yakni empat aplitude dan empat fase yang memungkinkan pengunaan data rate tinggi dobawah kondisi jaringan radio yang bermacam-macam.</p>
<h2>2.5. Keuntungan HSDPA</h2>
<p>Penambahan data rates menghasilkan keuntungan bagi operator untuk membuka area baru yang luas, nilai tambah dan kaya akan service untuk media. Keuntungan user dengan kecepatan mencapai megabyte per detik memungkinkan untuk:</p>
<ol>
<li>mengakses internet dengan cepat,</li>
<li>mudah mendownload email dan menambahkan attachment,</li>
<li>straming audio dan video,</li>
<li>mengambil gambar resolusi tonggi</li>
<li>multiplayer game.</li>
<li>TV broadcasting</li>
<li>Dapat menangani kebutuhan secara korporat.</li>
</ol>
<p>HSDPA sampai saat ini sudah digunakan di 39 negara dan 64 operator. Ke depan HSDPA masih dapat dikembangkan ke arah HSUPA <em>(high speed uplink packet access)</em>. Jika teknologi HSDPA tergolong ke dalam teknologi 3.75G maka HSUPA masuk dalam generasi 3.75 (3.75G).</p>
<div id="attachment_388" class="wp-caption aligncenter" style="width: 326px"><img class="size-full wp-image-388" title="orang_pake_3g" src="http://www.andisun.com/wp-content/uploads/2009/08/orang_pake_3g.png" alt="Orang Menggunakan Teknologi 3G" width="316" height="181" /><p class="wp-caption-text">Orang Menggunakan Teknologi 3G</p></div>
<h1>3.  Kesimpulan</h1>
<p>Teknologi komunikasi mobile dikembangkan agar mampu mengirimkan data dengan jumlah yang besar dalam jaringan global. Setiap generasi akan menunjukkan kemampuan yang lebih dalam mengiimkan data dibanding dengan teknologi sebelumnya, tidak terkecuali HSDPA.</p>
<h1>4.  Daftar Pustaka</h1>
<ol>
<li>Dharma Prakash Agrawal., Quing-An Zeng, 2003 ., “Introdruction to Wireless and Moblile Systems”, University of Cincinati, Brook/Cole-Thomson Learning.</li>
<li>Adjie(red), 2007, “Downlink Cepat dan Dahsyat di Jalur 3G”, Majalah Selluler, Edisi Januari 2007.</li>
<li>Jeff Evans, ____, “Mobile Wireless Networks “,http://www.wirelessrerc.gatech.edu/tutorial/ wirelessnetworks.html, Georgia Tech Research Institute, Diakses: 17 Februari 2007.</li>
<li>GSM World, ____, “3GSM Platform”, http://www.gsmworld.com/ technology/ 3g/ evolution.shtml, Diakses 17 Februari 2007.</li>
<li>RFID Centre,2005-2006, &#8220;Mobility Technologies and Standards&#8221;, http://www.rfidc.com/docs/introductiontomobility_standards.htm, Diakses: 17 Februari 2007.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.andisun.com/jurnal/overview-high-speed-downlink-packet-access/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
