Making a phone call using TextField in Java ME
hamishwillee
(Talk | contribs) m (moved CS000955 - Making a phone call using TextField to Making a phone call using TextField in Java ME: Merge into wiki.) |
hamishwillee
(Talk | contribs) m (Hamishwillee - Fix update timestamp in ArticleMetaData) |
||
| (19 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| − | + | [[Category:Java ME]][[Category:MIDP 2.0]][[Category:Telephony]][[Category:Code Examples]][[Category:Symbian]][[Category:Series 40]][[Category:Series 40 5th Edition (initial release)]][[Category:Series 40 6th Edition (initial release)]][[Category:Java Runtime 2.3 for Symbian]][[Category:Series 40 Developer Platform 1.0]][[Category:Symbian]][[Category:Series 40 3rd Edition (initial release)]][[Category:S60 3rd Edition (initial release)]][[Category:S60 3rd Edition FP1]][[Category:S60 3rd Edition FP2]][[Category:S60 5th Edition]][[Category:Symbian^3]][[Category:Symbian Anna]][[Category:Nokia Belle]] | |
| − | [[Category:Java ME]][[Category:MIDP 2.0]][[Category:Code | + | {{Abstract|This snippet demonstrates how to make a phone call by using a {{Icode|TextField}}. The MIDlet constructs a phone number field and displays it on the screen. The user may enter a phone number into it. After that, he or she can select {{Icode|Options}} > {{Icode|Call}} to call that number.}} |
{{ArticleMetaData <!-- v1.2 --> | {{ArticleMetaData <!-- v1.2 --> | ||
| − | |sourcecode= | + | |sourcecode= [[Media:MakingPhoneCallTFSource.zip]] |
| − | |installfile= | + | |installfile= [[Media:MakingPhoneCallTFBinaries.zip]] |
| − | |devices= Nokia N95 8GB | + | |devices= Nokia N95 8GB, Nokia 701, Nokia Asha 305 |
| − | |sdk= | + | |sdk= [http://www.developer.nokia.com/Develop/Java/Tools/ Nokia SDK 2.0 for Java], |
| − | |platform= | + | |platform= Series 40, Symbian |
|devicecompatability= <!-- Compatible devices (e.g.: All* (must have GPS) ) --> | |devicecompatability= <!-- Compatible devices (e.g.: All* (must have GPS) ) --> | ||
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 --> | |dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 --> | ||
|signing= <!-- Empty or one of Self-Signed, DevCert, Manufacturer --> | |signing= <!-- Empty or one of Self-Signed, DevCert, Manufacturer --> | ||
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. --> | |capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. --> | ||
| − | |keywords= javax.microedition. | + | |keywords= javax.microedition.midlet.MIDlet.platformRequest() |
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese --> | |language= <!-- Language category code for non-English topics - e.g. Lang-Chinese --> | ||
|translated-by= <!-- [[User:XXXX]] --> | |translated-by= <!-- [[User:XXXX]] --> | ||
| Line 18: | Line 18: | ||
|review-by= <!-- After re-review: [[User:username]] --> | |review-by= <!-- After re-review: [[User:username]] --> | ||
|review-timestamp= <!-- After re-review: YYYYMMDD --> | |review-timestamp= <!-- After re-review: YYYYMMDD --> | ||
| − | |update-by= | + | |update-by= [[User:mtilli]] |
| − | |update-timestamp= | + | |update-timestamp= 20120703 |
|creationdate= 20080507 | |creationdate= 20080507 | ||
|author= [[User:Tapla]] | |author= [[User:Tapla]] | ||
<!-- The following are not in current metadata --> | <!-- The following are not in current metadata --> | ||
| − | |||
|id= CS000955 | |id= CS000955 | ||
}} | }} | ||
| − | |||
| − | |||
| − | |||
| − | |||
==Source== | ==Source== | ||
<code java> | <code java> | ||
| + | import javax.microedition.io.ConnectionNotFoundException; | ||
import javax.microedition.lcdui.Command; | import javax.microedition.lcdui.Command; | ||
import javax.microedition.lcdui.CommandListener; | import javax.microedition.lcdui.CommandListener; | ||
| Line 44: | Line 40: | ||
<code java> | <code java> | ||
| − | public class | + | public class MakingPhoneCallTF extends MIDlet implements CommandListener { |
| + | private TextField numberField; | ||
| + | private Command callCommand; | ||
private Command exitCommand; | private Command exitCommand; | ||
private Form mainForm; | private Form mainForm; | ||
| − | + | ||
/** | /** | ||
* Constructor. Constructs the object and initializes displayables. | * Constructor. Constructs the object and initializes displayables. | ||
*/ | */ | ||
| − | public | + | public MakingPhoneCallTF() { |
| − | mainForm = new Form(" | + | mainForm = new Form("Making Phone Call"); |
| − | + | ||
// Create a phone number field, which allows a call to be made | // Create a phone number field, which allows a call to be made | ||
| − | + | numberField = new TextField("Phone number", null, 20, TextField.PHONENUMBER); | |
| − | + | mainForm.append(numberField); | |
| + | |||
| + | callCommand = new Command("Call", Command.SCREEN, 0); | ||
| + | mainForm.addCommand(callCommand); | ||
exitCommand = new Command("Exit", Command.EXIT, 0); | exitCommand = new Command("Exit", Command.EXIT, 0); | ||
| Line 62: | Line 63: | ||
mainForm.setCommandListener(this); | mainForm.setCommandListener(this); | ||
} | } | ||
| − | + | ||
/** | /** | ||
* Called when the MIDlet is started. | * Called when the MIDlet is started. | ||
| Line 68: | Line 69: | ||
public void startApp() { | public void startApp() { | ||
Display.getDisplay(this).setCurrent(mainForm); | Display.getDisplay(this).setCurrent(mainForm); | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Called when MIDlet is paused. | ||
| + | */ | ||
| + | public void pauseApp() { | ||
} | } | ||
| − | / | + | /** |
| − | + | * Called to signal the MIDlet to terminate. | |
| + | * | ||
| + | * @param unconditional if true, then the MIDlet has to be unconditionally | ||
| + | * terminated and all resources has to be released. | ||
| + | */ | ||
| + | public void destroyApp(boolean unconditional) { | ||
| + | } | ||
/** | /** | ||
| Line 81: | Line 94: | ||
*/ | */ | ||
public void commandAction(Command command, Displayable displayable) { | public void commandAction(Command command, Displayable displayable) { | ||
| − | if (command == exitCommand) { | + | if (command == callCommand) { |
| + | call(); | ||
| + | } else if (command == exitCommand) { | ||
// Exit the MIDlet | // Exit the MIDlet | ||
destroyApp(true); | destroyApp(true); | ||
| Line 87: | Line 102: | ||
} | } | ||
} | } | ||
| + | |||
| + | /** | ||
| + | * Makes a call to number user typed in the text field. | ||
| + | */ | ||
| + | private void call() { | ||
| + | String number; | ||
| + | |||
| + | number = numberField.getString(); | ||
| + | try { | ||
| + | platformRequest("tel:" + number); | ||
| + | } catch (ConnectionNotFoundException ex) { | ||
| + | System.out.println(ex.getMessage()); | ||
| + | } | ||
| + | } | ||
| + | } | ||
</code> | </code> | ||
| Line 95: | Line 125: | ||
==See also== | ==See also== | ||
| − | * [[ | + | * [[Making a phone call programmatically using platformRequest() in Java ME]] |
| + | <!-- Translation --> [[pt:Realizando Chamadas Telefônicas Utilizando TextField]] | ||
Latest revision as of 07:57, 28 September 2012
This snippet demonstrates how to make a phone call by using a TextField. The MIDlet constructs a phone number field and displays it on the screen. The user may enter a phone number into it. After that, he or she can select Options > Call to call that number.
Article Metadata
Code Example
Source file: Media:MakingPhoneCallTFSource.zip
Installation file: Media:MakingPhoneCallTFBinaries.zip
Tested with
SDK: Nokia SDK 2.0 for Java,
Devices(s): Nokia N95 8GB, Nokia 701, Nokia Asha 305
Compatibility
Platform(s): Series 40, Symbian
Article
Keywords: javax.microedition.midlet.MIDlet.platformRequest()
Created: tapla
(07 May 2008)
Updated: mtilli
(03 Jul 2012)
Last edited: hamishwillee
(28 Sep 2012)
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.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
public class MakingPhoneCallTF extends MIDlet implements CommandListener {
private TextField numberField;
private Command callCommand;
private Command exitCommand;
private Form mainForm;
/**
* Constructor. Constructs the object and initializes displayables.
*/
public MakingPhoneCallTF() {
mainForm = new Form("Making Phone Call");
// Create a phone number field, which allows a call to be made
numberField = new TextField("Phone number", null, 20, TextField.PHONENUMBER);
mainForm.append(numberField);
callCommand = new Command("Call", Command.SCREEN, 0);
mainForm.addCommand(callCommand);
exitCommand = new Command("Exit", Command.EXIT, 0);
mainForm.addCommand(exitCommand);
mainForm.setCommandListener(this);
}
/**
* Called when the MIDlet is started.
*/
public void startApp() {
Display.getDisplay(this).setCurrent(mainForm);
}
/**
* Called when MIDlet is paused.
*/
public void pauseApp() {
}
/**
* Called to signal the MIDlet to terminate.
*
* @param unconditional if true, then the MIDlet has to be unconditionally
* terminated and all resources has to be released.
*/
public void destroyApp(boolean unconditional) {
}
/**
* 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();
} else if (command == exitCommand) {
// Exit the MIDlet
destroyApp(true);
notifyDestroyed();
}
}
/**
* Makes a call to number user typed in the text field.
*/
private void call() {
String number;
number = numberField.getString();
try {
platformRequest("tel:" + number);
} catch (ConnectionNotFoundException ex) {
System.out.println(ex.getMessage());
}
}
}
Postconditions
A phone number field is displayed on the screen. The user can enter a phone number and select Options > Call to call that number.

