Вот мой код, который воспроизводит песню из папки ресурсов, и теперь я застрял с сервисом, поэтому, пожалуйста, помогите мне .....
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mHandler=new Handler();
seekBar=findViewById(R.id.seekBar);
mp=MediaPlayer.create(MainActivity.this,R.raw.ed);
final int Duration=mp.getDuration();
Медиаплеер Подготовленный слушатель .....
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
seekBar.setMax(mp.getDuration());
updateSeekBar();
mp.start();
}
});
Запускаемая тема для панели поиска .....
runnable=new Runnable() {
@Override
public void run() {
updateSeekBar();
}
};
Слушатель состояния телефона для входящих и исходящих вызовов.....
PhoneStateListener phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
mp.pause();
} else if(state == TelephonyManager.CALL_STATE_IDLE) {
mp.start();
} else if(state == TelephonyManager.CALL_STATE_OFFHOOK) {
mp.pause();
}
super.onCallStateChanged(state, incomingNumber);
}
};
TelephonyManager mgr = (TelephonyManager)
getSystemService(TELEPHONY_SERVICE);
if(mgr != null) {
mgr.listen(phoneStateListener,
PhoneStateListener.LISTEN_CALL_STATE);
}
}
Метод обновления панели поиска ....
private void updateSeekBar() {
seekBar.setProgress(mp.getCurrentPosition());
mHandler.postDelayed(runnable, 100);
}
}
Теперь это мой сервисный код .......
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.support.annotation.Nullable;
public class MyMusicService extends Service {
При создании метода обслуживания ....
@Override
public void onCreate() {
super.onCreate();
}
При запуске метода обслуживания....
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return super.onStartCommand(intent, flags, startId);
}
On Уничтожить метод обслуживания ....
@Override
public void onDestroy() {
super.onDestroy();
}
Binder of Service .....
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
}