Android&简单Mp3播放

activity_main.xml
 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:paddingBottom="@dimen/activity_vertical_margin"
 6     android:paddingLeft="@dimen/activity_horizontal_margin"
 7     android:paddingRight="@dimen/activity_horizontal_margin"
 8     android:paddingTop="@dimen/activity_vertical_margin"
 9     tools:context=".MainActivity"
10     android:orientation="vertical" >
11 
12     <TextView
13         android:layout_width="wrap_content"
14         android:layout_height="wrap_content"
15         android:text="@string/hello_world" />
16     
17     <EditText
18         android:id="@+id/myPathEditText"
19         android:layout_width="fill_parent"
20         android:layout_height="wrap_content"
21         android:hint="Please enter the path."/>
22     <LinearLayout    android:layout_width="match_parent"
23         android:layout_height="match_parent"
24         android:orientation="horizontal">
25         <Button
26             android:id="@+id/startButton"
27             android:text="Start"
28             android:layout_width="wrap_content"
29             android:layout_height="wrap_content"
30             />
31         <Button
32             android:id="@+id/stopButton"
33             android:text="Stop"
34             android:layout_width="wrap_content"
35             android:layout_height="wrap_content"
36             />
37     </LinearLayout>
38 </LinearLayout>
MainActivity.java
 1 package com.zachary.mymp3;
 2 
 3 import android.app.Activity;
 4 import android.content.Intent;
 5 import android.os.Bundle;
 6 import android.view.Menu;
 7 import android.view.View;
 8 import android.view.View.OnClickListener;
 9 import android.widget.Button;
10 import android.widget.EditText;
11 import android.widget.Toast;
12 
13 public class MainActivity extends Activity {
14     private Button startButton = null;
15     private Button stopButton = null;
16     private EditText myPathEditText = null;
17     private boolean isPlaying = false;
18     private String path = null;
19     @Override
20     protected void onCreate(Bundle savedInstanceState) {
21         super.onCreate(savedInstanceState);
22         setContentView(R.layout.activity_main);
23         startButton = (Button)findViewById(R.id.startButton);
24         stopButton = (Button)findViewById(R.id.stopButton);
25         myPathEditText = (EditText)findViewById(R.id.myPathEditText);
26         
27         startButton.setOnClickListener(new OnClickListener(){
28 
29             @Override
30             public void onClick(View arg0) {
31                 // TODO Auto-generated method stub
32                 path = myPathEditText.getText().toString();
33                 System.out.println("Path---->"+path);
34                 if(!isPlaying) {
35                     if(path!=null){
36                         isPlaying = true;
37                         Intent    intent = new Intent(MainActivity.this, MediaPlayerService.class);
38                         intent.putExtra("path", path);
39                         MainActivity.this.startService(intent);
40                         //Toast.makeText(MainActivity.this, "MediaPlayer is Begining!", Toast.LENGTH_LONG).show();
41                     }
42                 }
43             }
44             
45         });
46         
47         stopButton.setOnClickListener(new OnClickListener(){
48 
49             @Override
50             public void onClick(View v) {
51                 // TODO Auto-generated method stub
52                 if(isPlaying){
53                 MainActivity.this.stopService(new Intent(MainActivity.this, MediaPlayerService.class));
54                 isPlaying = false;
55                 //Toast.makeText(MainActivity.this, "MediaPlayer is Stop!", Toast.LENGTH_LONG).show();
56                 }
57             }
58             
59         });
60         
61     }
62 
63     @Override
64     public boolean onCreateOptionsMenu(Menu menu) {
65         // Inflate the menu; this adds items to the action bar if it is present.
66         getMenuInflater().inflate(R.menu.main, menu);
67         return true;
68     }
69 
70 }
MediaPlayerServie.java
 1 package com.zachary.mymp3;
 2 
 3 import android.app.Service;
 4 import android.content.Intent;
 5 import android.media.MediaPlayer;
 6 import android.net.Uri;
 7 import android.os.IBinder;
 8 import android.util.Log;
 9 import android.widget.Toast;
10 
11 public class MediaPlayerService extends Service {
12 
13     private static final String TAG = "Media Player Service";
14     private MediaPlayer player = null;
15     @Override
16     public IBinder onBind(Intent arg0) {
17         // TODO Auto-generated method stub
18         return null;
19     }
20     
21     @Override
22     public void onCreate() {
23         Toast.makeText(this, "MediaPlayerService Created", Toast.LENGTH_LONG).show();
24         Log.i(TAG, "onCreate");
25         System.out.println("onCreate");
26     }
27     
28     @Override
29     public void onStart(Intent intent, int startId) {
30         Toast.makeText(this, "MediaPlayerService Start", Toast.LENGTH_LONG).show();
31         
32         String path = intent.getStringExtra("path");
33         //String path="http://douban.fm/?start=1466389g8675g1000388&cid=1000388";
34     
35             Log.i(TAG, "onStart");
36             System.out.println("onStart");
37             Uri playerUri = Uri.parse(path);
38             if (player != null) { 
39                 player.stop(); 
40             } 
41             player = MediaPlayer.create(MediaPlayerService.this, playerUri);
42             player.start();
43     }
44     
45     @Override
46     public void onDestroy() {
47         super.onDestroy();
48         Toast.makeText(this, "MediaPlayerService Stoped", Toast.LENGTH_LONG).show();
49         Log.i(TAG, "onDestory");
50         System.out.println("onDestory");
51         if(player != null) {
52         player.release();
53         player = null;
54         }
55     }
56 
57 }

 

posted on 2013-03-24 17:39  Zachary_wiz  阅读(268)  评论(0编辑  收藏  举报

导航