Implementando processamento background em seu Midlet

Este exemplo mostra como fazer o processamento em background no seu Midlet.

Implementando processamento background em seu Midlet

Este exemplo mostra como fazer o processamento em background no seu Midlet.

<B><SPAN lang=EN-US >import </SPAN></B><SPAN lang=EN-US >javax.microedition.midlet.*;</SPAN>
<B><SPAN lang=EN-US >import </SPAN></B><SPAN lang=EN-US >javax.microedition.lcdui.*;</SPAN>
<B><SPAN lang=EN-US >import </SPAN></B><SPAN lang=EN-US >javax.microedition.io.*;</SPAN>
<B><SPAN lang=EN-US >import </SPAN></B><SPAN lang=EN-US >java.io.*;</SPAN>

<B><SPAN lang=EN-US >public class </SPAN></B><SPAN lang=EN-US >BackgroundProcessing </SPAN><B><SPAN lang=EN-US >extends </SPAN></B><SPAN lang=EN-US >MIDlet </SPAN>
<B><SPAN lang=EN-US >implements </SPAN></B><SPAN lang=EN-US >CommandListener</SPAN>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >private </SPAN></B><SPAN lang=EN-US >Display display;</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >private </SPAN></B><SPAN lang=EN-US >Form form; </SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >private </SPAN></B><SPAN lang=EN-US >Command exit;</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >private </SPAN></B><SPAN lang=EN-US >Command start; </SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public </SPAN></B><SPAN lang=EN-US >BackgroundProcessing()</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >display = Display.getDisplay(</SPAN><B><SPAN lang=EN-US >this</SPAN></B><SPAN lang=EN-US >);</SPAN>
<SPAN lang=EN-US >form = </SPAN><B><SPAN lang=EN-US >new </SPAN></B><SPAN lang=EN-US >Form(</SPAN><SPAN lang=EN-US >"Background Processing"</SPAN><SPAN lang=EN-US >);</SPAN>
<SPAN lang=EN-US >exit = </SPAN><B><SPAN lang=EN-US >new </SPAN></B><SPAN lang=EN-US >Command(</SPAN><SPAN lang=EN-US >"Exit"</SPAN><SPAN lang=EN-US >, Command.EXIT, </SPAN><SPAN lang=EN-US >1</SPAN><SPAN lang=EN-US >);</SPAN>
<SPAN lang=EN-US >start = </SPAN><B><SPAN lang=EN-US >new </SPAN></B><SPAN lang=EN-US >Command(</SPAN><SPAN lang=EN-US >"Start"</SPAN><SPAN lang=EN-US >, Command.SCREEN, </SPAN><SPAN lang=EN-US >2</SPAN><SPAN lang=EN-US >);    </SPAN>
<SPAN lang=EN-US >form.addCommand(exit);</SPAN>
<SPAN lang=EN-US >form.addCommand(start );    </SPAN>
<SPAN lang=EN-US >form.setCommandListener(</SPAN><B><SPAN lang=EN-US >this</SPAN></B><SPAN lang=EN-US >);</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public void </SPAN></B><SPAN lang=EN-US >startApp()</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >display.setCurrent(form);</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public void </SPAN></B><SPAN lang=EN-US >pauseApp()</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{ </SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public void </SPAN></B><SPAN lang=EN-US >destroyApp(</SPAN><B><SPAN lang=EN-US >boolean </SPAN></B><SPAN lang=EN-US >unconditional)</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{ </SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public void </SPAN></B><SPAN lang=EN-US >commandAction(Command command, Displayable displayable)</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{</SPAN>
<B><SPAN lang=EN-US >if </SPAN></B><SPAN lang=EN-US >(command == exit)</SPAN>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >destroyApp(</SPAN><B><SPAN lang=EN-US >false</SPAN></B><SPAN lang=EN-US >);</SPAN>
<SPAN lang=EN-US >notifyDestroyed();</SPAN>
<SPAN lang=EN-US >}</SPAN>
<B><SPAN lang=EN-US >else if </SPAN></B><SPAN lang=EN-US >(command == start)</SPAN>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >Process process = </SPAN><B><SPAN lang=EN-US >new </SPAN></B><SPAN lang=EN-US >Process(</SPAN><B><SPAN lang=EN-US >this</SPAN></B><SPAN lang=EN-US >);</SPAN>
<SPAN lang=EN-US >process.start(); </SPAN>
<SPAN lang=EN-US >//foreground processing</SPAN>
<SPAN lang=EN-US >} </SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >}</SPAN>
<B><SPAN lang=EN-US >class </SPAN></B><SPAN lang=EN-US >Process </SPAN><B><SPAN lang=EN-US >implements </SPAN></B><SPAN lang=EN-US >Runnable</SPAN>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >private </SPAN></B><SPAN lang=EN-US >BackgroundProcessing MIDlet;</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public </SPAN></B><SPAN lang=EN-US >Process(BackgroundProcessing MIDlet)</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{ </SPAN>
<B><SPAN lang=EN-US >this</SPAN></B><SPAN lang=EN-US >.MIDlet = MIDlet;</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public void </SPAN></B><SPAN lang=EN-US >run() </SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{</SPAN>
<B><SPAN lang=EN-US >try</SPAN></B>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >transmit ();</SPAN>
<SPAN lang=EN-US >}</SPAN>
<B><SPAN lang=EN-US >catch </SPAN></B><SPAN lang=EN-US >(Exception error)</SPAN>
<SPAN lang=EN-US >{ </SPAN>
<SPAN lang=EN-US >System.err.println(error.toString());</SPAN>
<SPAN lang=EN-US >}      </SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >public void </SPAN></B><SPAN lang=EN-US >start()</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >Thread thread = </SPAN><B><SPAN lang=EN-US >new </SPAN></B><SPAN lang=EN-US >Thread(</SPAN><B><SPAN lang=EN-US >this</SPAN></B><SPAN lang=EN-US >);</SPAN>
<B><SPAN lang=EN-US >try</SPAN></B>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >thread.start();</SPAN>
<SPAN lang=EN-US >}</SPAN>
<B><SPAN lang=EN-US >catch </SPAN></B><SPAN lang=EN-US >(Exception error)</SPAN>
<SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >}</SPAN>
<SPAN lang=EN-US >  </SPAN><B><SPAN lang=EN-US >private void </SPAN></B><SPAN lang=EN-US >transmit() </SPAN><B><SPAN lang=EN-US >throws </SPAN></B><SPAN lang=EN-US >IOException </SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >{</SPAN>
<SPAN lang=EN-US >//</SPAN> <SPAN lang=EN-US >Colocar o código aqui para receber ou enviar transmissão..</SPAN>
<SPAN lang=EN-US >  </SPAN><SPAN lang=EN-US >} </SPAN>
<SPAN lang=EN-US >} </SPAN>

Artigos relacionados