×
Namespaces

Variants
Actions
Revision as of 10:44, 22 February 2011 by sellis (Talk | contribs)

Making a phone call programmatically using platformRequest() in Java ME

From Nokia Developer Wiki
Jump to: navigation, search

Template:KBCS

Article Metadata
Tested with
Devices(s): Nokia N95 8GB
CompatibilityArticle
Keywords: javax.microedition.midlet.MIDlet, javax.microedition.midlet.MIDlet.platformRequest()
Created: (14 May 2008)
Last edited: sellis (22 Feb 2011)

Overview

This snippet demonstrates how to make a phone call by using a platform request. The MIDlet constructs a menu item through which the user can call the specified number. After the platform request has been made, the user is prompted whether he or she wants to make a voice call, a video call, or an Internet call.

Source

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 = "123456789";
 
/**
* Constructor. Constructs the object and initializes displayables.
*/

public ExampleMIDlet() {
mainForm = new Form("ExampleMIDlet");
 
callCommand = new Command("Call", Command.SCREEN, 0);
mainForm.addCommand(callCommand);
 
exitCommand = new Command("Exit", Command.EXIT, 0);
mainForm.addCommand(exitCommand);
 
mainForm.setCommandListener(this);
}
 
/**
* Calls the specified number.
*/

private void call(String number) {
try {
platformRequest("tel:" + number);
} catch (ConnectionNotFoundException ex) {
// TODO: Exception handling
}
}
 
/**
* Called when the MIDlet is started.
*/

public void startApp() {
Display.getDisplay(this).setCurrent(mainForm);
}
 
// Other inherited methods omitted for brevity
// ...
 
/**
* From CommandListener.
* Called by the system to indicate that a command has been invoked on a
* particular displayable.
* @param command the command that was invoked
* @param displayable the displayable where the command was invoked
*/

public void commandAction(Command command, Displayable displayable) {
if (command == callCommand) {
call(PHONE_NUMBER);
} else if (command == exitCommand) {
// Exit the MIDlet
destroyApp(true);
notifyDestroyed();
}
}

Postconditions

The user can select Call to call the specified number. He or she may also select whether the call should be a voice call, a video call, or an Internet call.

See also

339 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×