android - Can't save audio to phone using media player in eclipse -
i'm trying make soundboard user can play , stop sound save sounds phone.
i have set fine save not work. i'm not getting error , not sure whats wrong. box come saying save it, when clicked nothing. using viewpagerindicator. help? sorry beginner.
public class question1 extends fragment{ private adview adview; button button01; button button02; button button03; button button04; button button05; button button06; button button07; button button08; button button09; button button10; button button11; button button12; button button13; button button14; button button15; button button16; button button17; button button18; public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { toast.maketext(this.getactivity(), "long press save ringtone.", toast.length_long).show(); {return inflater.inflate(r.layout.question1, null);} } @override public void onactivitycreated(bundle savedinstancestate){ super.onactivitycreated(savedinstancestate); button01 = (button)getview().findviewbyid(r.id.button01); button02 = (button)getview().findviewbyid(r.id.button02); button03 = (button)getview().findviewbyid(r.id.button03); button04 = (button)getview().findviewbyid(r.id.button04); button05 = (button)getview().findviewbyid(r.id.button05); button06 = (button)getview().findviewbyid(r.id.button06); button07 = (button)getview().findviewbyid(r.id.button07); button08 = (button)getview().findviewbyid(r.id.button08); button09 = (button)getview().findviewbyid(r.id.button09); button10 = (button)getview().findviewbyid(r.id.button10); button11 = (button)getview().findviewbyid(r.id.button11); button12 = (button)getview().findviewbyid(r.id.button12); button13 = (button)getview().findviewbyid(r.id.button13); button14 = (button)getview().findviewbyid(r.id.button14); button15 = (button)getview().findviewbyid(r.id.button15); button16 = (button)getview().findviewbyid(r.id.button16); button17 = (button)getview().findviewbyid(r.id.button17); button18 = (button)getview().findviewbyid(r.id.button18); // import sound files final mediaplayer sound01 = mediaplayer.create( getactivity(), r.raw.sound01); final mediaplayer sound02 = mediaplayer.create( getactivity(), r.raw.sound02); final mediaplayer sound03 = mediaplayer.create( getactivity(), r.raw.sound03); final mediaplayer sound04 = mediaplayer.create( getactivity(), r.raw.sound04); final mediaplayer sound05 = mediaplayer.create( getactivity(), r.raw.sound05); final mediaplayer sound06 = mediaplayer.create( getactivity(), r.raw.sound06); final mediaplayer sound07 = mediaplayer.create( getactivity(), r.raw.sound07); final mediaplayer sound08 = mediaplayer.create( getactivity(), r.raw.sound08); final mediaplayer sound09 = mediaplayer.create( getactivity(), r.raw.sound09); final mediaplayer sound10 = mediaplayer.create( getactivity(), r.raw.sound10); final mediaplayer sound11 = mediaplayer.create( getactivity(), r.raw.sound11); final mediaplayer sound12 = mediaplayer.create( getactivity(), r.raw.sound12); final mediaplayer sound13 = mediaplayer.create( getactivity(), r.raw.sound13); final mediaplayer sound14 = mediaplayer.create( getactivity(), r.raw.sound14); final mediaplayer sound15 = mediaplayer.create( getactivity(), r.raw.sound15); final mediaplayer sound16 = mediaplayer.create( getactivity(), r.raw.sound16); final mediaplayer sound17 = mediaplayer.create( getactivity(), r.raw.sound17); // play sound files on clicks button s02 = (button) getview().findviewbyid(r.id.button02); s02.settext(this.getstring(r.string.quote02)); s02.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound01.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound01.start(); } }); registerforcontextmenu(s02); button s03 = (button) getview().findviewbyid(r.id.button03); s03.settext(this.getstring(r.string.quote03)); s03.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound02.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound02.start(); } }); registerforcontextmenu(s03); button s04 = (button) getview().findviewbyid(r.id.button04); s04.settext(this.getstring(r.string.quote04)); s04.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound03.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound03.start(); } }); registerforcontextmenu(s04); button s05 = (button) getview().findviewbyid(r.id.button05); s05.settext(this.getstring(r.string.quote05)); s05.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound04.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound04.start(); } }); registerforcontextmenu(s05); button s06 = (button) getview().findviewbyid(r.id.button06); s06.settext(this.getstring(r.string.quote06)); s06.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound05.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound05.start(); } }); registerforcontextmenu(s06); button s07 = (button) getview().findviewbyid(r.id.button07); s07.settext(this.getstring(r.string.quote07)); s07.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound06.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound06.start(); } }); registerforcontextmenu(s07); button s08 = (button) getview().findviewbyid(r.id.button08); s08.settext(this.getstring(r.string.quote08)); s08.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound07.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound07.start(); } }); registerforcontextmenu(s08); button s09 = (button) getview().findviewbyid(r.id.button09); s09.settext(this.getstring(r.string.quote09)); s09.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound08.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound08.start(); } }); registerforcontextmenu(s09); button s10 = (button) getview().findviewbyid(r.id.button10); s10.settext(this.getstring(r.string.quote10)); s10.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound09.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound09.start(); } }); registerforcontextmenu(s10); button s11 = (button) getview().findviewbyid(r.id.button11); s11.settext(this.getstring(r.string.quote11)); s11.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound10.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound10.start(); } }); registerforcontextmenu(s11); button s12 = (button) getview().findviewbyid(r.id.button12); s12.settext(this.getstring(r.string.quote12)); s12.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound11.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound11.start(); } }); registerforcontextmenu(s12); button s13 = (button) getview().findviewbyid(r.id.button13); s13.settext(this.getstring(r.string.quote13)); s13.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound12.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound12.start(); } }); registerforcontextmenu(s13); button s14 = (button) getview().findviewbyid(r.id.button14); s14.settext(this.getstring(r.string.quote14)); s14.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound13.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound13.start(); } }); registerforcontextmenu(s14); button s15 = (button) getview().findviewbyid(r.id.button15); s15.settext(this.getstring(r.string.quote15)); s15.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound14.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound14.start(); } }); registerforcontextmenu(s15); button s16 = (button) getview().findviewbyid(r.id.button16); s16.settext(this.getstring(r.string.quote16)); s16.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound15.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound15.start(); } }); registerforcontextmenu(s16); button s17 = (button) getview().findviewbyid(r.id.button17); s17.settext(this.getstring(r.string.quote17)); s17.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound16.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound16.start(); } }); registerforcontextmenu(s17); button s18 = (button) getview().findviewbyid(r.id.button18); s18.settext(this.getstring(r.string.quote18)); s18.setonclicklistener(new onclicklistener() { public void onclick(view v) { try { sound17.prepare(); } catch (illegalstateexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } sound17.start(); } }); registerforcontextmenu(s18); final button s01 = (button) getview().findviewbyid(r.id.button01); s01.settext(this.getstring(r.string.quote01)); s01.setonclicklistener(new view.onclicklistener() { public void onclick(view v) { if(sound01.isplaying()) { sound01.pause(); sound01.seekto(0); } if(sound02.isplaying()) { sound02.pause(); sound02.seekto(0); } if(sound03.isplaying()) { sound03.pause(); sound03.seekto(0); } if(sound04.isplaying()) { sound04.pause(); sound04.seekto(0); }; if(sound05.isplaying()) { sound05.pause(); sound05.seekto(0); } if(sound06.isplaying()) { sound06.pause(); sound06.seekto(0); } if(sound07.isplaying()) { sound07.pause(); sound07.seekto(0); } if(sound08.isplaying()) { sound08.pause(); sound08.seekto(0); } if(sound09.isplaying()) { sound09.pause(); sound09.seekto(0); } if(sound10.isplaying()) { sound10.pause(); sound10.seekto(0); } if(sound11.isplaying()) { sound11.pause(); sound11.seekto(0); } if(sound12.isplaying()) { sound12.pause(); sound12.seekto(0); } if(sound13.isplaying()) { sound13.pause(); sound13.seekto(0); } if(sound14.isplaying()) { sound14.pause(); sound14.seekto(0); } if(sound15.isplaying()) { sound15.pause(); sound15.seekto(0); } if(sound16.isplaying()) { sound16.pause(); sound16.seekto(0); } if(sound17.isplaying()) { sound17.pause(); sound17.seekto(0); } } }); registerforcontextmenu(s01); } // perform save functions on long press public void oncreatecontextmenu(contextmenu menu, view v,contextmenuinfo menuinfo) { super.oncreatecontextmenu(menu, v, menuinfo); menu.setheadertitle("save as..."); menu.add(0, v.getid(), 0, "ringtone/notification"); } @override public boolean oncontextitemselected(menuitem item) { if(item.gettitle()=="ringtone/notification"){function1(item.getitemid());} else {return false;} return true; } // detect button clicked, save ringtone strings.xml public boolean function1(int ressound){ //---- string soundname = ""; switch(ressound){ case r.id.button02: ressound = r.raw.sound01; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote02)); break; } switch(ressound){ case r.id.button03: ressound = r.raw.sound02; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote03)); break; } switch(ressound){ case r.id.button04: ressound = r.raw.sound03; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote04)); break; } switch(ressound){ case r.id.button05: ressound = r.raw.sound04; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote05)); break; } switch(ressound){ case r.id.button06: ressound = r.raw.sound05; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote06)); break; } switch(ressound){ case r.id.button07: ressound = r.raw.sound06; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote07)); break; } switch(ressound){ case r.id.button08: ressound = r.raw.sound07; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote08)); break; } switch(ressound){ case r.id.button09: ressound = r.raw.sound08; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote09)); break; } switch(ressound){ case r.id.button10: ressound = r.raw.sound09; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote10)); break; } switch(ressound){ case r.id.button11: ressound = r.raw.sound10; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote11)); break; } switch(ressound){ case r.id.button12: ressound = r.raw.sound11; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote12)); break; } switch(ressound){ case r.id.button13: ressound = r.raw.sound12; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote13)); break; } switch(ressound){ case r.id.button14: ressound = r.raw.sound13; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote14)); break; } switch(ressound){ case r.id.button15: ressound = r.raw.sound14; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote15)); break; } switch(ressound){ case r.id.button16: ressound = r.raw.sound15; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote16)); break; } switch(ressound){ case r.id.button17: ressound = r.raw.sound16; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote17)); break; } switch(ressound){ case r.id.button18: ressound = r.raw.sound17; soundname = (this.getstring(r.string.app_name)) + " - " + (this.getstring(r.string.quote18)); break; } //and on , on..... byte[] buffer=null; inputstream fin = getactivity().getbasecontext().getresources().openrawresource(ressound); int size=0; try { size = fin.available(); buffer = new byte[size]; fin.read(buffer); fin.close(); } catch (ioexception e) { // todo auto-generated catch block return false; } string path="/sdcard/media/audio/ringtones/"; string filename=soundname+".ogg"; boolean exists = (new file(path)).exists(); if (!exists){new file(path).mkdirs();} fileoutputstream save; try { save = new fileoutputstream(path+filename); save.write(buffer); save.flush(); save.close(); } catch (filenotfoundexception e) { // todo auto-generated catch block return false; } catch (ioexception e) { // todo auto-generated catch block return false; } getactivity().sendbroadcast(new intent(intent.action_media_scanner_scan_file, uri.parse("file://"+path+filename))); file k = new file(path, filename); contentvalues values = new contentvalues(); values.put(mediastore.mediacolumns.data, k.getabsolutepath()); values.put(mediastore.mediacolumns.title, soundname); values.put(mediastore.mediacolumns.mime_type, "audio/ogg"); values.put(mediastore.audio.media.artist, "napoleonhill"); values.put(mediastore.audio.media.is_ringtone, true); values.put(mediastore.audio.media.is_notification, true); values.put(mediastore.audio.media.is_alarm, true); values.put(mediastore.audio.media.is_music, false); //insert database getactivity().getcontentresolver().insert(mediastore.audio.media.getcontenturiforpath(k.getabsolutepath()), values); string = "saved ringtone."; toast.maketext(getactivity().getapplicationcontext(), i, toast.length_long).show(); return true; } //---- }
you need switch
item.gettitle() == "ringtone/notification" to
"ringtone/notification".equals(item.gettitle()); the following question answer why: how compare strings in java?
Comments
Post a Comment