마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

앱을 종료하면 종료되자마자 다시 실행됩니다...

0 추천

onBackPressed 를 오버라이딩 해서 두번 연속누르면 앱이 종료 되게끔 했습니다.

그런데 앱을 종료하자마자 앱이 저절로 다시 실행됩니다....

왜이런거죠??

 

class BackPressCloseHandler(private val activity: Activity) {
    private var backKeyPressedTime: Long = 0
    private var toast: Toast? = null

    fun onBackPressed() {
        if (System.currentTimeMillis() > backKeyPressedTime + 2000) {
            backKeyPressedTime = System.currentTimeMillis()
            showGuide()
            return
        }
        if (System.currentTimeMillis() <= backKeyPressedTime + 2000) {
            toast!!.cancel()

            val t = Intent(activity, MainActivity::class.java)
            activity.startActivity(t)

            activity.moveTaskToBack(true)
            activity.finish()
            android.os.Process.killProcess(android.os.Process.myPid())

        }
    }

    fun showGuide() {
        toast = Toast.makeText(activity, "한번 더 누르시면 종료됩니다.", Toast.LENGTH_SHORT)
        toast!!.show()
    }

}
익명사용자 님이 1월 10일 질문

2개의 답변

0 추천
찍힌 로그 첨부해주세요~
큐더블유이알 (330 포인트) 님이 1월 10일 답변
0 추천
  val t = Intent(activity, MainActivity::class.java)
            activity.startActivity(t)

이 부분만 지우면 될꺼 같은데요?

익명사용자 님이 1월 10일 답변
흠... 왜 익명사용자로 나오징 ㅇ_ㅇ;;
...