Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.anta40.securemediaplayer;
- import java.io.DataOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import javax.microedition.content.ContentHandlerException;
- import javax.microedition.content.Invocation;
- import javax.microedition.content.Registry;
- import javax.microedition.io.Connector;
- import javax.microedition.io.file.FileConnection;
- import javax.microedition.media.Manager;
- import javax.microedition.media.MediaException;
- import javax.microedition.media.Player;
- import org.xml.sax.InputSource;
- import net.rim.blackberry.api.browser.Browser;
- import net.rim.blackberry.api.browser.BrowserSession;
- import net.rim.device.api.io.IOUtilities;
- import net.rim.device.api.io.file.ExtendedFileConnection;
- import net.rim.device.api.ui.Field;
- import net.rim.device.api.ui.FieldChangeListener;
- import net.rim.device.api.ui.UiApplication;
- import net.rim.device.api.ui.component.ButtonField;
- import net.rim.device.api.ui.component.Dialog;
- import net.rim.device.api.ui.component.LabelField;
- import net.rim.device.api.ui.container.MainScreen;
- import net.rim.device.api.ui.picker.FilePicker;
- import net.rim.device.api.ui.picker.FilePicker.Listener;
- public class FilePickerScreen extends MainScreen implements Listener, FieldChangeListener {
- private LabelField labelField;
- private FilePicker filePicker;
- private ButtonField buttonField;
- public FilePickerScreen(){
- setTitle("File Picker");
- buttonField = new ButtonField("Choose File", ButtonField.CONSUME_CLICK | ButtonField.NEVER_DIRTY | FIELD_HCENTER);
- buttonField.setChangeListener(this);
- add(buttonField);
- labelField = new LabelField();
- add(labelField);
- filePicker = FilePicker.getInstance();
- filePicker.setFilter(".mp3");
- try {
- String path = System.getProperty("fileconn.dir.music");
- FileConnection efconn = (FileConnection) Connector.open(path);
- if (efconn.exists()) filePicker.setPath(path);
- }
- catch(final Exception ioe){
- // UiApplication.getUiApplication().invokeLater(new Runnable(){
- // public void run(){
- // Dialog.alert("Connector.open() threw " + ioe.toString());
- // }
- // });
- }
- filePicker.setListener(this);
- }
- public void fieldChanged(Field field, int context) {
- if(field == buttonField) {
- filePicker.show();
- }
- }
- public void selectionDone(String selection) {
- if(selection != null && selection.length() > 0) {
- //Dialog.inform(selection);
- Invocation invocation = new Invocation(selection);
- String path = System.getProperty("fileconn.dir.music");
- //ExtendedFileConnection efconn = null;
- try {
- FileConnection fconn = (FileConnection) Connector.open(selection, Connector.READ_WRITE);
- InputStream is = fconn.openInputStream();
- byte[] bbb = IOUtilities.streamToBytes(is);
- Dialog.inform("bbb size: "+bbb.length);
- //DataOutputStream dos = efconn.openDataOutputStream();
- saveToFile("newsong.mp3", bbb);
- // dos.close();
- fconn.close();
- } catch (IOException e1) {
- e1.printStackTrace();
- }
- // Registry reg = Registry.getRegistry("net.rim.device.api.content.BlackBerryContentHandler");
- // try {
- // reg.invoke(invocation);
- // } catch (IllegalArgumentException e) {
- // e.printStackTrace();
- // } catch (ContentHandlerException e) {
- // e.printStackTrace();
- // } catch (SecurityException e) {
- // e.printStackTrace();
- // } catch (IOException e) {
- // e.printStackTrace();
- // }
- // try {
- // Player player = Manager.createPlayer(selection);
- // player.realize();
- // player.prefetch();
- // player.start();
- // }
- // catch (MediaException me){
- //
- // }
- // catch (IOException ioe){
- //
- // }
- //
- labelField.setText("Now playing: "+selection);
- }
- }
- private void saveToFile(String fName, byte[] bbb){
- DataOutputStream os = null;
- FileConnection fconn = null;
- try {
- fconn = (FileConnection) Connector.open("file://SDCard/BlackBerry/music/"+fName, Connector.WRITE);
- if (!fconn.exists())
- fconn.create();
- os = fconn.openDataOutputStream();
- os.write(bbb);
- } catch (IOException e) {
- System.out.println(e.getMessage());
- } finally {
- try {
- if (null != os)
- os.close();
- if (null != fconn)
- fconn.close();
- } catch (IOException e) {
- System.out.println(e.getMessage());
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement