本文共 4619 字,大约阅读时间需要 15 分钟。
package com.example.myapplication7;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button bt = findViewById(R.id.start); bt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent =new Intent(MainActivity.this,musicplayer.class); startActivity(intent); } }); }}
package com.example.myapplication7;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.ImageButton;import android.widget.Toast;public class musicplayer extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.musicplayer); final Intent intent =new Intent(musicplayer.this,MusicService.class); ImageButton btn_play=(ImageButton) findViewById(R.id.btn_play); btn_play.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if( MusicService.isplay==false) { startService(intent); Toast.makeText(getApplicationContext(), "正在播放", Toast.LENGTH_LONG).show(); } else { stopService(intent); Toast.makeText(getApplicationContext(), "暂停播放", Toast.LENGTH_LONG).show();} }}); ImageButton btn_return=(ImageButton) findViewById(R.id.btn_return); btn_return.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if( MusicService.isplay==true) { Intent intent2 = new Intent( musicplayer.this,MainActivity.class); startActivity(intent2); Toast.makeText(getApplicationContext(), "正在播放", Toast.LENGTH_LONG).show(); } }}); ImageButton btn_stop=(ImageButton) findViewById(R.id.btn_stop); btn_stop.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if( MusicService.isplay==true) { stopService(intent); Intent intent1 = new Intent( musicplayer.this,MainActivity.class); startActivity(intent1); Toast.makeText(getApplicationContext(), "停止播放", Toast.LENGTH_LONG).show(); } }}); }}
package com.example.myapplication7;import android.app.Service;import android.content.Intent;import android.media.MediaPlayer;import android.os.IBinder;public class MusicService extends Service { static boolean isplay; MediaPlayer player; public MusicService() { } @Override public void onCreate() { player = MediaPlayer.create(this,R.raw.for_love); super.onCreate(); } @Override public int onStartCommand(Intent intent, int flags, int startId) { if(!player.isPlaying()) { player.start(); isplay=player.isPlaying(); } return super.onStartCommand(intent, flags, startId); } @Override public void onDestroy() { player.stop(); isplay=player.isPlaying(); player.release(); super.onDestroy(); } @Override public IBinder onBind(Intent intent) { // TODO: Return the communication channel to the service. throw new UnsupportedOperationException("Not yet implemented"); }}
MusicService:通过重写OnCreate(),onDestroy(),onStartCommand()实现后台service的music播放
转载地址:http://yucki.baihongyu.com/