|  | 
| 
 |  |  | | 
| ¾Èµå·ÎÀ̵忡¼ audio player ½ÇÇàÇϱâ |  |  
|  |  |    | 9³â Àü |  | 
| package  co.avilos.sampleaudioplayer; 
 import  android.app.Activity;
 import  android.media.MediaPlayer;
 import  android.os.Bundle;
 import  android.support.v4.app.Fragment;
 import  android.view.LayoutInflater;
 import  android.view.View;
 import  android.view.ViewGroup;
 import  android.widget.Button;
 import  android.widget.CheckBox;
 import  android.widget.EditText;
 import  android.widget.Toast;
 
 
 /**
 *  A  placeholder  fragment  containing  a  simple  view.
 */
 public  class  MainActivityFragment  extends  Fragment  {
 
 private  MediaPlayer  mp;          //  ¹Ìµð¾î  Ç÷¹À̾°´Ã¼
 private  EditText  audioPath;
 private  CheckBox  loopControl;
 private  Button  PlayPause;
 private  Button  Stop;
 private  Button  Load;
 
 public  MainActivityFragment()  {
 }
 
 //  Fragment  call1
 @Override
 public  void  onAttach(Activity  activity)  {
 super.onAttach(activity);
 }
 
 //  Fragment  call2
 @Override
 public  void  onCreate(Bundle  savedInstanceState)  {
 super.onCreate(savedInstanceState);
 
 }
 
 //  Fragment  call3
 @Override
 public  View  onCreateView(LayoutInflater  inflater,  ViewGroup  container,
 Bundle  savedInstanceState)  {
 //return  inflater.inflate(R.layout.fragment_main,  container,  false);
 
 View  view  =  inflater.inflate(R.layout.fragment_main,  container,  false);
 
 //  ¿Àµð¿À  Ç÷¹À̾  °ü·ÃµÈ  EditText,  Button·Îµù
 audioPath  =  (EditText)view.findViewById(R.id.srcEdit);
 loopControl  =  (CheckBox)view.findViewById(R.id.setLoop);
 PlayPause  =  (Button)view.findViewById(R.id.playBtn);
 Stop  =  (Button)view.findViewById(R.id.stopBtn);
 Load  =  (Button)view.findViewById(R.id.loadBtn);
 
 //  ÆÄÀÏ  ºÒ·¯¿À±â  ¹öư¿¡  ´ëÇÑ  ¸®½º³Êµî·Ï
 Load.setOnClickListener(new  View.OnClickListener()  {
 //  Load¹öưÀ»  Å¬¸¯½Ã
 @Override
 public  void  onClick(View  v)  {
 //  ¿Àµð¿À  ÆÄÀÏ  ºÒ·¯¿À±â
 if  (!loadAudio(audioPath.getText().toString()))  {
 //  ¿Àµð¿À  ÆÄÀÏ  ·Îµù¿¡  ½ÇÆÐ½Ã
 Toast.makeText(getActivity().getBaseContext(),  "ÆÄÀÏ  ºÒ·¯¿À±â¿¡  ½ÇÆÐÇß½À´Ï´Ù.",  Toast.LENGTH_LONG).show();
 return;
 }
 
 //  ÆÄÀÏ  Path  ÀԷ¶õÀ»  ºñȰ¼ºÈÇÑ´Ù.
 audioPath.setEnabled(false);
 
 //  ½ÃÀÛ,  Á¤Áö  ¹öư  È°¼ºÈ
 PlayPause.setEnabled(true);
 Stop.setEnabled(true);
 
 //  ¹Ýº¹  Àç»ý  ¹öưÀ»  È°¼ºÈ
 loopControl.setEnabled(true);
 
 //  ·Îµå¹öưÀ»  ºñȰ¼ºÈ
 Load.setEnabled(false);
 
 Toast.makeText(getActivity().getBaseContext(),  "ÆÄÀÏ  :  "+audioPath.getText().toString()+"·Îµå°¡  ¿Ï·áµÇ¾ú½À´Ï´Ù.",Toast.LENGTH_LONG).show();
 }
 });
 
 
 //  Àç»ý  ¹Ýº¹  ¿©ºÎ  ¼±Åà ¹öư¿¡  ´ëÇÑ  ¸®½º³Ê  µî·Ï
 loopControl.setOnClickListener(new  View.OnClickListener()  {
 @Override
 public  void  onClick(View  v)  {
 if(loopControl.isChecked()){
 //  Ã¼Å©¹Ú½º¸¦  Ã¼Å©Çϸ頠¹Ýº¹À»  È°¼ºÈ
 mp.setLooping(true);
 Toast.makeText(getActivity().getBaseContext(),  "¹Ýº¹  È°¼ºÈµÊ",  Toast.LENGTH_SHORT).show();
 }else{
 //  ¹Ýº¹À»  ºñȰ¼ºÈÇÑ´Ù.
 mp.setLooping(false);
 Toast.makeText(getActivity().getBaseContext(),"¹Ýº¹  ÇØÁ¦µÊ",  Toast.LENGTH_SHORT).show();
 }
 }
 });
 
 //  Àç»ý/ÀϽÃÁ¤Áö  ¹öư¿¡  ´ëÇÑ  ¸®½º³Ê  µî·Ï
 PlayPause.setOnClickListener(new  View.OnClickListener()  {
 @Override
 public  void  onClick(View  v)  {
 if(PlayPauseAudio()  ==  0){            //  Àç»ý½Ã
 PlayPause.setText("ÀϽÃÁ¤Áö");                    //  ¹öưÀÇ  Ä¸¼ÇÀ»  ÀϽÃÁ¤Áö·Î  º¯°æ
 }else{                                                    //  ÀϽÃÁ¤Áö
 PlayPause.setText("Àç»ý");                        //  ¹öưÀÇ  Ä¸¼ÇÀ»  Àç»ýÀ¸·Î  º¯°æ
 }
 }
 });
 
 //  Á¤Áö¹öư¿¡  ´ëÇÑ  ¸®½º³Ê  µî·Ï
 Stop.setOnClickListener(new  View.OnClickListener(){
 @Override
 public  void  onClick(View  v)  {
 mp.stop();            //  Á¤Áö
 
 //  Á¤Áö°¡  µÇ¸é,  Load¹öưÀ»  ´·¯  ÆÄÀÏÀ»  prepare  Çؾߠ ÇϹǷÎ,  ¼³Á¤°ªµéÀ»  ÃʱâÈ  ÇÑ´Ù.
 audioPath.setEnabled(true);          //  ºñȰ¼ºÈ  µÇ¾ú´ø  ÀԷ°ªÀ»  È°¼ºÈ
 PlayPause.setText("Àç»ý");
 loopControl.setChecked(false);
 PlayPause.setEnabled(false);
 Stop.setEnabled(false);
 loopControl.setEnabled(false);
 Load.setEnabled(true);
 }
 });
 
 return  view;
 }
 
 //  Fragment  call4
 @Override
 public  void  onViewCreated(View  view,  Bundle  savedInstanceState)  {
 super.onViewCreated(view,  savedInstanceState);
 }
 
 //  Fragment  call5
 @Override
 public  void  onActivityCreated(Bundle  savedInstanceState)  {
 super.onActivityCreated(savedInstanceState);
 }
 
 //  Fragment  call6
 @Override
 public  void  onStart()  {
 super.onStart();
 }
 
 //  Fragment  call7
 @Override
 public  void  onResume()  {
 super.onResume();
 }
 
 //  Fragment  call8
 @Override
 public  void  onPause()  {
 super.onPause();
 }
 
 //  Fragment  call9
 @Override
 public  void  onStop()  {
 super.onStop();
 }
 
 //  Fragment  call10
 @Override
 public  void  onDestroyView()  {
 super.onDestroyView();
 
 }
 
 //  Fragment  call11
 @Override
 public  void  onDestroy()  {
 super.onDestroy();
 
 if(mp!=null){
 mp.release();              //  MediaPlayer  °´Ã¼¸¦  ReleaseÇÑ´Ù.
 mp  =  null;
 }
 }
 
 //  Fragment  call12
 @Override
 public  void  onDetach()  {
 super.onDetach();
 }
 
 
 
 //  Play  &  Pause  »óÅ  º¯°æ
 private  int  PlayPauseAudio(){
 if(!mp.isPlaying()){                //  Àç»ýÁßÀÌ  ¾Æ´Ï¶ó¸é
 mp.start();                          //  ÆÄÀÏÀ»  Àç»ýÇÑ´Ù.
 Toast.makeText(getActivity().getBaseContext(),  "Àç»ý",  Toast.LENGTH_SHORT).show();
 return  0;
 }else{                                            //  Àç»ýÁßÀ̶ó¸é
 mp.pause();                          //  ÀϽÃÁ¤Áö
 Toast.makeText(getActivity().getBaseContext(),"ÀϽÃÁ¤Áö",  Toast.LENGTH_SHORT).show();
 return  1;
 }
 }
 
 //  ¿Àµð¿À  ÆÄÀÏ  ·Îµå
 private  boolean  loadAudio(String  path){          //  ¿Àµð¿À  ÆÄÀÏ  ·Îµù
 mp  =  new  MediaPlayer();          //  MediaPlayer  °´Ã¼  »ý¼º
 try{
 mp.setDataSource(path);
 mp.prepare();                      //  ÆÄÀÏÀ»  Áغñ
 return  true;
 }catch(Exception  e){                //  ¿Àµð¿À  ÆÄÀÏ  ·Îµù¿¡  ½ÇÆÐ½Ã
 Toast.makeText(getActivity().getBaseContext(),  e.getMessage(),  Toast.LENGTH_SHORT).show();
 return  false;
 }
 }
 }
 | 
 |  
|  ̵̧ : 459 | ̵̧
¸ñ·Ï |  | 
 |  |  |