Realizando Chamadas Telefônicas a partir de platformRequest()
Dados do artigo
Testado com
Aparelho(s): Nokia N95 8GB
Compatibilidade
Plataforma(s): S60 3a Edição, FP1
Artigo
Palavras-chave: javax.microedition.midlet.MIDlet, javax.microedition.midlet.MIDlet.platformRequest()
Tradução:
Por thiagobrunoms
Última alteração feita por hamishwillee
em 08 Aug 2012
Contents |
Introdução
Este exemplo mostra como realizar chamadas telefônicas utilizando o método platformRequest(). A MIDlet constrói um menu no qual o usuário pode realizar a chamada a partir do número especificado. Após a invocação do platformRequest, o usuário é perguntado se ele deseja realizar uma ligação de voz, de vídeo ou de Internet.
Código-fonte
import javax.microedition.io.ConnectionNotFoundException;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.midlet.MIDlet;
public class ExampleMIDlet extends MIDlet implements CommandListener {
private Command callCommand;
private Command exitCommand;
private Form mainForm;
// The phone number to call
private final String PHONE_NUMBER = "0700123123";
/**
* Constructor. constrói o objeto e cria os displayables
*/
public ExampleMIDlet() {
mainForm = new Form("ExampleMIDlet");
callCommand = new Command("Chamar", Command.SCREEN, 0);
mainForm.addCommand(callCommand);
exitCommand = new Command("Sair", Command.EXIT, 0);
mainForm.addCommand(exitCommand);
mainForm.setCommandListener(this);
}
/**
* Liga para o número especificado a partir de platformRequest()
*/
private void call(String number) {
try {
platformRequest("tel:" + number);
} catch (ConnectionNotFoundException ex) {
// TODO: Exception handling
}
}
/**
* Invocado quando a MIDlet é inicializada
*/
public void startApp() {
Display.getDisplay(this).setCurrent(mainForm);
}
// Outros métodos herdados da MIDlet foram omitidos
// ...
/**
* From CommandListener.
* Invocado pelo gerenciador de aplicativos para informar que um comando foi disparado
* particular displayable.
* @param command o objeto Command que recebeu o evento
* @param displayable o objeto displayable no qual o comando está associado
*/
public void commandAction(Command command, Displayable displayable) {
if (command == callCommand) {
call(PHONE_NUMBER);
} else if (command == exitCommand) {
// Finaliza a MIDlet
destroyApp(true);
notifyDestroyed();
}
}
Pós-condições
O usuário pode selecionar Chamar para realizar a chamada telefônica para o número especificado. O usuário também pode selecionar qual tipo de chamada ele deseja: voz, vídeo ou Internet.


(no comments yet)