blob: bbbed5c1d7f4aed8f1699504c76e327af7e1396e [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
-->
<html>
<head>`
<title>Guia de in&iacute;cio r&aacute;pido do desenvolvimento de MIDP em Java ME - Tutorial do NetBeans IDE</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<link rel="stylesheet" type="text/css" href="../../../netbeans.css">
<meta name="author" content="">
</head>
<body>
<h1>Guia de in&iacute;cio r&aacute;pido de desenvolvimento Java ME MIDP</h1>
<p>Este tutorial guia voc&ecirc; atrav&eacute;s das etapas b&aacute;sicas da utiliza&ccedil;&atilde;o do NetBeans IDE para criar uma plataforma Java&trade;, Micro Edition (plataforma Java&trade; ME), aplicativo Perfil de dispositivo de informa&ccedil;&atilde;o m&oacute;vel (MIDP) e &eacute; desenhado para iniciar o desenvolvimento do aplicativo m&oacute;vel mais r&aacute;pido poss&iacute;vel. O tutorial a seguir o orienta atrav&eacute;s de algumas etapas b&aacute;sicas do trabalho com o sistema de projeto. N&oacute;s mostramos duas maneiras de criar um projeto Java ME MIDP chamado &quot;MyHello&quot; que exibe o texto &quot;Make My Day&quot; em um emulador de dispositivo. Este tutorial preparar voc&ecirc; para usar outros recursos do IDE para o desenvolvimento de aplicativos CLDC/MIDP.</p>
<!-- <p class="notes"><b>Observa&ccedil;&atilde;o:</b> Se voc&ecirc; estiver usando o NetBeans IDE 6.8, consulte o <a href="../../68/javame/quickstart.html">Guia de In&iacute;cio R&aacute;pido ao Desenvolvimento em NetBeans IDE 6.8 Java ME MIDP</a>.</p>-->
<h3>Conte&uacute;do</h3>
<img src="../../../images_www/articles/69/netbeans-stamp-69-70-71.png" class="stamp"
alt="O conte&uacute;do desta p&aacute;gina se aplica ao NetBeans IDE 6.9 ou posterior"
title="O conte&uacute;do desta p&aacute;gina se aplica ao NetBeans IDE 6.9 ou posterior" />
<ul>
<li><a href="#reqs" title="Requisitos do Tutorial">Requisitos do Tutorial</a></li>
<li><a href="#vmd" title="Criando aplica&ccedil;&otilde;es no vmd</a>Criando uma aplica&ccedil;&atilde;o no Visual Mobile Designer"></li>
<li><a href="#source" title="Criando aplicativos no editor de c&oacute;digo-fonte">Criando aplicativos no editor de c&oacute;digo-fonte</a></li>
<li><a href="#nextsteps" title="Pr&oacute;ximas etapas">Pr&oacute;ximas etapas</a></li>
</ul>
<h2><a name="reqs"></a>Requisitos</h2>
<p><b>Para concluir este tutorial, voc&ecirc; precisa dos seguintes recursos e softwares:</b></p>
<table>
<tbody>
<tr>
<th class="tblheader" scope="col">Software ou recurso</th>
<th class="tblheader" scope="col">Vers&atilde;o necess&aacute;ria</th>
</tr>
<tr>
<td class="tbltd1"><a href="https://netbeans.org/downloads/index.html" target="_blank">NetBeans IDE com Java ME</a></td>
<td class="tbltd1">Vers&atilde;o 6.9 ou posterior </td>
</tr>
<tr>
<td class="tbltd1"><a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">Java Development Kit</a> (JDK)</td>
<td class="tbltd1">Vers&atilde;o 6 ou 7 </td>
</tr>
</tbody>
</table>
<br>
<p><b class="notes">Observa&ccedil;&atilde;o</b>: o emulador agrupado com o IDE varia dependendo de qual instalador de sistema operacional foi baixado.</p>
<ul>
<li>A distribui&ccedil;&atilde;o do Windows do NetBeans 6.7 e posterior v&ecirc;m agrupado com o Java ME SDK 3.0.</li>
<li>A distribui&ccedil;&atilde;o do Linux do NetBeans IDE est&aacute; agrupado com o Sun Java Wireless Toolkit 2.5.2.</li>
<li>A vers&atilde;o MacOS X do NetBeans 6.9 est&aacute; agrupada com o Java ME SDK 3.0 para CLDC.</li>
</ul>
<h2><a name="vmd"></a>Criando um aplicativo MIDP utilizando o Visual Mobile Designer</h2>
<p>O NetBeans IDE fornece um assistente que permite que voc&ecirc; crie rapidamente um projeto MIDP. Ao criar o projeto, voc&ecirc; pode optar por desenvolver a aplica&ccedil;&atilde;o no Visual Mobile Designer (VMD) ou no editor de c&oacute;digo-fonte. Utilizar o VMD fornece a habilidade de planejar visualmente o fluxo do aplicativo e o desenho da tela nas utiliza&ccedil;&otilde;es do aplicativo. O projetista cria automaticamente o c&oacute;digo para o aplicativo conforme as altera&ccedil;&otilde;es s&atilde;o salvas na tela de desenho. </p>
<h3 class="tutorial">Criando uma aplica&ccedil;&atilde;o MIDP/CLDC </h3>
<ol>
<li>Escolha <tt>Arquivo</tt> &gt; <tt>Novo projeto (Ctrl+Shift+N)</tt>. Em Categorias, selecione <tt>Java ME</tt>. Em Projetos, selecione <tt>Aplicativo m&oacute;vel</tt> e clique em Pr&oacute;ximo.</li>
<li>Insira <code>MyHello</code> no campo Nome do projeto. Use a localiza&ccedil;&atilde;o de projeto padr&atilde;o ou altere-a para o diret&oacute;rio de sua prefer&ecirc;ncia no sistema. Neste tutorial, esse diret&oacute;rio &eacute; definido como <code>$PROJECTHOME</code>. </li>
<li>Marque as caixas de verifica&ccedil;&atilde;o <tt>Definir como projeto principal</tt> e <tt>Criar Hello MIDlet</tt> (ambas est&atilde;o marcadas por padr&atilde;o). Clique em Pr&oacute;ximo. </li>
<li>Selecione o padr&atilde;o como a plataforma do emulador e utilize os padr&otilde;es restantes. Clique em Terminar. </li>
<!--li><a name="template"></a>Expand &quot;Configuration templates provided by
installed CLDC platforms&quot; and &quot;Sun Java Wireless Toolkit 2.52 for CLDC &quot;
folders. Check the boxes next to each of the configurations.
The IDE automatically creates a new project configuration for each template
listed.
-->
<li>O IDE cria a pasta do projeto <code>$PROJECTHOME/MyHello</code>. A pasta do projeto cont&eacute;m todos os c&oacute;digos-fonte e os metadados do projeto, como o script Ant do projeto. A pr&oacute;pria aplica&ccedil;&atilde;o &eacute; exibida na janela Design de fluxo do Visual Mobile Designer.</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/newjavameproject.png" alt="Visualiza&ccedil;&atilde;o de fluxo de Hello Midlet no IDE" width="608" height="374"></p>
<p>Observa&ccedil;&atilde;o: para uma descri&ccedil;&atilde;o completa dos componentes da paleta dispon&iacute;veis, consulte a <a href="http://wiki.netbeans.org/VisualMobileDesignerPalatteReference">Refer&ecirc;ncia da paleta do Visual Mobile Designer</a>.</p>
</ol>
<h3 class="tutorial">Editando o c&oacute;digo-fonte Java</h3>
<p>Agora, vamos editar o texto exibido pelo MIDlet.</p>
<ol>
<li>Em <tt>HelloMIDlet.java</tt> clique em Tela para mostrar a janela Projetista de tela exibindo a Tela do dispositivo, que &eacute; a &uacute;nica tela dispon&iacute;vel no aplicativo. </li>
<li>Clique na mensagem <tt>Hello World!</tt> na tela do dispositivo. Na janela Propriedades, clique no texto <tt>Hello World!</tt> para modificar a mensagem e pressione Enter. Neste exemplo, digitamos <tt>Make my day</tt>.</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/stringedit.png" alt="O texto 'Make my day' &eacute; digitado no campo de texto da janela Propriedades." ></p>
<li>A visualiza&ccedil;&atilde;o Tela exibe o texto inserido no campo Texto.</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/motd-screen.png" alt="O texto 'Make my day' est&aacute; vis&iacute;vel na visualiza&ccedil;&atilde;o Tela do dispositivo na visualiza&ccedil;&atilde;o Tela do VMD." ></p>
</ol>
<h3 class="tutorial">Compilando e executando o projeto</h3>
<ol>
<li>Selecione <tt>Executar</tt> &gt; <tt>Executar projeto principal (F6)</tt> no menu Executar). Siga o progresso da compila&ccedil;&atilde;o do projeto na Janela de sa&iacute;da. Observe que o arquivo <code>HelloMIDlet.java</code> &eacute; constru&iacute;do antes de ser executado. Um emulador de dispositivo &eacute; aberto para exibir os resultados do MIDlet executado. O emulador de dispositivo inicia o MIDlet e exibe o texto inserido no c&oacute;digo-fonte.</li>
<p><strong>Dica:</strong> &eacute; poss&iacute;vel especificar o emulador para executar o MIDlet ao clicar com o bot&atilde;o direito do mouse no n&oacute; do projeto e selecionar Executar com...<tt></tt> do menu contextual. O <tt>DefaultFXPhone1</tt> dispon&iacute;vel no Java ME SDK 3.0 &eacute; mostrado abaixo.</p>
<p><img src="../../../images_www/articles/71/mobility/quickstart/motd-emulator.png" alt="Mensagem Fa&ccedil;a meu dia exibida no emulador para celular Java ME SDK JavaFX "></p>
<li>Clique no bot&atilde;o abaixo de Sair para fechar o MIDlet. Em seguida, clique no bot&atilde;o no canto superior direito do dispositivo para fechar a janela do emulador. </li>
</ol>
</div>
<h2><a name="source"></a>Criando uma aplica&ccedil;&atilde;o MIDP usando o editor de c&oacute;digo-fonte</h2>
<div class="indent">
<p>Usando o Editor de c&oacute;digo-fonte, crie manualmente o c&oacute;digo para os MIDlets. Ao criar o c&oacute;digo no Editor de c&oacute;digo-fonte, voc&ecirc; tem mais flexibilidade ao editar o c&oacute;digo e pode inserir blocos do c&oacute;digo do pr&eacute;-processador. Em seguida, criamos o aplicativo <code>MyHello</code> usando os assistentes para Novo projeto e Novo arquivo e completaremos o c&oacute;digo usando o editor de c&oacute;digo-fonte. </p>
<h3 class="tutorial">Criando um novo projeto Java ME MIDP </h3>
<ol>
<li>Escolha <tt>Arquivo</tt> &gt; <tt>Novo projeto (Ctrl-Shift-N)</tt>. Em Categorias, selecione <tt>Java ME</tt>. Em Projetos, selecione <tt>Aplicativo m&oacute;vel</tt> e clique em Pr&oacute;ximo.</li>
<li>Digite <code>MyHelloMIDlet</code> no campo Nome do projeto (observe que &quot;MID&quot; &eacute; em mai&uacute;sculas). Especifique o local do projeto que &eacute; diferente do local do projeto <a href="#vmd"><code>MyHello</code></a> criado anteriormente. Fazemos refer&ecirc;ncia a este diret&oacute;rio como <code>$PROJECTHOME</code> neste tutorial. </li>
<li>Marque a caixa de verifica&ccedil;&atilde;o Definir como projeto principal e desmarque a caixa Criar Hello MIDlet. Clique em Pr&oacute;ximo. </li>
<li>Selecione a plataforma do emulador padr&atilde;o e utilize os padr&otilde;es restantes. Clique em Terminar. </li>
<!--li>Expand &quot;Configuration templates provided by installed CLDC platforms&quot; and &quot;Sun Java Wireless Toolkit 2.52 for CLDC &quot; folders. Check the boxes next to each of the configurations. The IDE automatically creates a new project configuration for each template listed. </li-->
<li>O IDE cria a pasta do projeto <code>$PROJECTHOME/MyHelloMIDlet</code>. A pasta do projeto cont&eacute;m todos os c&oacute;digos-fonte e os metadados do projeto, como o script Ant do projeto. </li>
<li>Clique com o bot&atilde;o direito do mouse no n&oacute; <code>MyHelloMIDlet</code> na janela do Explorer e escolha </tt>Novo<tt> &gt; </tt>MIDlet<tt>.</li>
<li>Insira <code>HelloMIDlet</code> como o nome do MIDlet (observe que &quot;MID&quot; n&atilde;o est&aacute; em mai&uacute;sculas por padr&atilde;o). Clique em Terminar. O arquivo <code>HelloMIDlet.java</code> &eacute; criado e o c&oacute;digo-fonte &eacute; exibido na janela Editor do IDE. </li>
<li>Clique no Editor de c&oacute;digo-fonte e altere
<pre class="examplecode">public class HelloMIDlet extends MIDlet</pre>
para
<pre class="examplecode">public class HelloMIDlet
extends MIDlet implements javax.microedition.lcdui.CommandListener
{</pre>
</li>
<li>Adicione o seguinte texto antes do m&eacute;todo <code>startApp()</code>:
<pre class="examplecode">
private void initialize() {
javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_helloTextBox());
}
public void commandAction(javax.microedition.lcdui.Command command, javax.microedition.lcdui.Displayable displayable) {
if (displayable == helloTextBox) {
if (command == exitCommand) {
javax.microedition.lcdui.Display.getDisplay(this).setCurrent(null);
destroyApp(true);
notifyDestroyed();
}
}
}
private javax.microedition.lcdui.TextBox get_helloTextBox() {
if (helloTextBox == null) {
helloTextBox = new javax.microedition.lcdui.TextBox(null, &quot;Hello Test Code&quot;, 120, 0x0);
helloTextBox.addCommand(get_exitCommand());
helloTextBox.setCommandListener(this);
}
return helloTextBox;
}
private javax.microedition.lcdui.Command get_exitCommand() {
if (exitCommand == null) {
exitCommand = new javax.microedition.lcdui.Command(&quot;Exit&quot;, javax.microedition.lcdui.Command.EXIT,
1);
}
return exitCommand;
}
javax.microedition.lcdui.TextBox helloTextBox;
javax.microedition.lcdui.Command exitCommand;
</pre>
</li>
<li>Adicione uma linha <code>initialize();</code> ao m&eacute;todo <code>startApp()</code> para que tenha a seguinte apar&ecirc;ncia:
<pre class="examplecode"> public void startApp() {
initialize();
}
</pre>
</ol>
<h3 class="tutorial">Editando o c&oacute;digo-fonte Java</h3>
<p>Agora, vamos adicionar texto ao MIDlet para exibi&ccedil;&atilde;o.</p>
<ol>
<li>No m&eacute;todo <code>get_helloTextBox()</code>, substitua o c&oacute;digo de exemplo, &quot;Hello Test Code&quot; com um texto a sua escolha. Por exemplo, &quot;Fa&ccedil;a meu dia.&quot;
</ol>
<!--<p><b class="notes">Observa&ccedil;&atilde;o:</b> para um guia completo sobre o uso do editor de c&oacute;digo-fonte Java no NetBeans, consulte <a href="../../67/java/editor-tips.html">Edi&ccedil;&atilde;o de Java no NetBeans IDE</a>.</p>-->
<h3 class="tutorial">Compilando e executando o projeto</h3>
<ol>
<li>Selecione <tt>Executar</tt> &gt; <tt>Executar projeto principal (F6)</tt> no menu Executar). Siga o progresso da compila&ccedil;&atilde;o do projeto na Janela de sa&iacute;da. Note que o arquivo <code>HelloMIDlet.java</code> &eacute; constru&iacute;do antes de ser executado. Um emulador de dispositivo abre para exibir os resultados do MIDlet executado e exibe o testo inserido no c&oacute;digo fonte.</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/mmd-emulator.png" alt="Mensagem Fa&ccedil;a meu dia exibida no emulador Java ME SDK 3.0 CLDC Clamshell"></p>
</ol>
</div>
<div class="feedback-box"><a href="/about/contact_form.html?to=6&subject=NetBeans%20MIDP%20Development%20Quick%20Start%20Guide">Envie-nos seus coment&aacute;rios</a></div>
<br style="clear:both;" />
<h2><a name="nextsteps"></a>Pr&oacute;ximas etapas </h2>
<p>Para mais tutoriais mostrando como desenvolver aplicativos MIDP e CLDC visite a Trilha do aprendizado de aplicativo m&oacute;vel.</p>
<ul>
<li><a href="../../trails/mobility.html">Trilha do aprendizado de Java ME no NetBeans</a></li>
</ul>
</body>
</html>