Android Java 휴대폰에서 동영상 재생 중 전원을 꺼도 동영상 재생이 일시 중지되지 않습니다.
조회수 104회
MainActivity.java
@SuppressLint("WrongViewCast")
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = ActivityMainBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
IntentFilter powerButtonOff = new IntentFilter(Intent.ACTION_SCREEN_OFF);
IntentFilter powerButtonOn = new IntentFilter(Intent.ACTION_SCREEN_ON);
registerReceiver(powerButtonOnOff, powerButtonOff);
registerReceiver(powerButtonOnOff, powerButtonOn);
MainActivity.java
private void unregisterBroadcast(){
unregisterReceiver(powerButtonOnOff);
}
BroadcastReceiver powerButtonOnOff = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(mediaPlayer == null){
mediaPlayer = MediaPlayer.create(context,R.id.videoView);
}
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
try {
if (mediaPlayer != null && mediaPlayer.isPlaying()) {
mediaPlayer.stop();
mediaPlayer.release();
mediaPlayer = null;
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
mediaPlayer.start();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
};
MainActivity.java
@Override
protected void onDestroy() {
unregisterBroadcast();
AndroidManifest.xml
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.DEVICE_POWER"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.WAKE_LOCK"/>
안녕하세요. 위에 코드는 앱에서 비디오 재생중에 휴대폰 전원 끄면 재생이 일시 중지가 되어야하는데, 멈추지 않습니다. 그래서 onReceive 메소드를 코드를 적용하여 시도했지만 해결되지 않아 원인을 모르겠습니다.
댓글 입력