音频的播放一
一、简单的音频播放
【项目准备】
①一个视频文件,视频文件的位置---->在res下新建文件夹row------>将视频放入row文件夹中


②一般音频播放是不需要一直停留在界面的,所以音频播放应该放在service中,即使界面被回收,也一直在播放。
【项目结构】

【界面代码】
1 <Button
2         android:id="@+id/btn_play"
3         android:text="播放"
4         android:layout_width="match_parent"
5         android:layout_height="wrap_content" />
【MainActivity.class】
 1 public class MainActivity extends AppCompatActivity {
 2     
 3     ImageView ivPlay = null, ivRePlay = null;
 4     @Override
 5     protected void onCreate(Bundle savedInstanceState) {
 6         super.onCreate(savedInstanceState);
 7         setContentView(R.layout.activity_main);
 8 
 9         ivPlay = (ImageView) findViewById(R.id.btn_play);
10         ivPlay.setOnClickListener(new View.OnClickListener() {
11             @Override
12             public void onClick(View view) {
13                 Intent intent = new Intent(MainActivity.this, MediaPlayService.class);
14                 startService(intent)
15             }
16         });
17     }
18 }
【service代码】
 1 public class MediaServiceA extends Service {
 2 
 3     MediaPlayer mediaPlayer;
 4     public MediaServiceA() {
 5     }
 6     @Override
 7     public IBinder onBind(Intent intent) {
 8         // TODO: Return the communication channel to the service.
 9         throw new UnsupportedOperationException("Not yet implemented");
10     }
11     
12     @Override
13     public int onStartCommand(Intent intent, int flags, int startId) {
14         
15         if (mediaPlayer==null) {
16             mediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.ylzs);
17         }//对mediaPlayer是否为空进行一个判断,如果不为空就不再Create,否则会重复播放
18         if (mediaPlayer!=null) {
19             mediaPlayer.start();
20         }
21         return super.onStartCommand(intent, flags, startId);
22     }
23 }
【提示】创建service时可通过以下方法注册,否则Service要进行注册
【AndroidManifest.xml】
1 <service
2             android:name=".service.MediaServiceA"
3             android:enabled="true"
4             android:exported="true" />

【效果】点击后合成器会在动


 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号