Ring Tones MIDlet Example
In this example only two Ring Tones are created using Player class. Find the given methods that are used in player class :
- addPlayerListener(PlayerListener playerListener)
- close()
- deallocate()
- getContentType()
- getDuration()
- getMediaTime()
- getState()
- prefetch()
- realize()
- removePlayerListener(PlayerListener playerListener)
- setLoopCount(int count)
- setMediaTime(long now)
- start()
- stop()
The Application is as follows:
Source Code of RingTones.java
import java.io.*; import javax.microedition.midlet.*; import javax.microedition.media.*; import javax.microedition.lcdui.*; public class RingTones extends MIDlet implements ItemStateListener, CommandListener{ private Display display; private Form form; private Command exit; private ChoiceGroup choice; private Player player1, player2; public void startApp(){ try { player1 = Manager.createPlayer(getClass().getResourceAsStream( "/kabhi-alvida-na-kehna.wav"), "audio/x-wav"); player2 = Manager.createPlayer(getClass().getResourceAsStream( "/aagepiche.wav"), "audio/x-wav"); } catch(MediaException e) { e.printStackTrace(); }catch(IOException ioe){ ioe.printStackTrace(); } display = Display.getDisplay(this); choice = new ChoiceGroup("List of RingTones", Choice.EXCLUSIVE); choice.append("Kabhi Alvida Na Kehna", null); choice.append("Golmaal Return", null); exit = new Command("Exit", Command.EXIT, 1); form = new Form("Playing song"); form.append(choice); form.addCommand(exit); form.setCommandListener(this); form.setItemStateListener(this); display.setCurrent(form); } public void pauseApp(){} public void destroyApp(boolean unconditional){ notifyDestroyed(); } public void commandAction(Command c, Displayable s){ String label = c.getLabel(); if(label.equals("Exit")){ destroyApp(false); } } public void itemStateChanged(Item item){ switch(choice.getSelectedIndex()){ case 0: try{ player1.start(); if(player2 != null) player2.stop(); }catch(MediaException e) { e.printStackTrace(); } break; case 1: try{ player2.start(); if(player1 != null) player1.stop(); }catch(MediaException e) { e.printStackTrace(); } break; } } }