Source Code 0

안드로이드 앱을 종료하고 다시 시작하는 함수

안드로이드 앱이 불안정해지면 종료하고 재시작 해보아요.

                                                       

1. 함수 살펴보기.

알람 서비스에 시간차이를 등록하여 재빨리 어플을 종료하고 다시 켜는 방식이어요. 만일 찰나의 시간 100ms 이하에 시간을 주면 어플 종료가 늦게 되거나 처리 가지연되는 경우에 재시작은 실패하겠쩌.

fun restartApplication() {
	val mStartActivity = Intent(this, MainActivity::class.java)
	val mPendingIntentId = 1
	val mPendingIntent = PendingIntent.getActivity(this, mPendingIntentId, mStartActivity, PendingIntent.FLAG_CANCEL_CURRENT or endingIntent.FLAG_IMMUTABLE)
	val mgr = getSystemService(Context.ALARM_SERVICE) as AlarmManager
	mgr[AlarmManager.RTC, System.currentTimeMillis() + 1000] = mPendingIntent
	exitProcess(0)
}

 

developer.android.com - 알람 예약
developer.android.com - AlarmManager

 

댓글쓰기

댓글 삭제

댓글을 완전히 삭제할까요?

댓글