2010-07-03 4 views
1

암호 저장 소프트웨어를 개발 중입니다. 응용 프로그램에 들어가려면 유효한 세부 정보로 로그인해야합니다.보안 응용 프로그램

이제 홈 키를 누르면 응용 프로그램이 자동으로 로그인 한 다음 보안 관점에서 다시 시작해야합니다. 홈 키를 누를 때마다 로그 아웃해야합니다. 어떻게해야합니까?

+0

(http://developer.android.com/reference /android/app/Activity.html#onPause())를 사용하여 로그 오프합니다. –

답변

0

사용자가 많은 다른 방법으로 응용 프로그램을 나가기 때문에 누르는 홈 키를 듣는 것은 Android에서별로 의미가 없습니다.

대신 할 수있는 일은 편집증 수준에 따라 onStop() 또는 onPause()를 재정의하고이 이벤트에서 사용자를 로그 아웃하는 것입니다.

당신은 공식 문서에서의 활동의 라이프 사이클에 대한 자세한 정보를 찾을 수 있습니다 http://developer.android.com/guide/topics/fundamentals.html#actlife

난 당신이, 내부의 디버깅이 두 메소드를 오버라이드 (override) 응용 프로그램을 시도하고 당신이 당신의 로그 아웃을 넣어해야하는 결정 제안() 코드. 집에 대한 청취자가 없음을 가 유의 사항 :

@Override 
public void onPause() { 
    super.onPause(); 
    Log.d("MyTestActivity", "onPause()"); 
} 

@Override 
public void onStop() { 
    super.onStop(); 
    Log.d("MyTestActivity", "onStop()"); 
} 
0

당신은 행동이 비슷한에있는 내부의 "홈"버튼에 대한 리스너를함으로써이 문제를 구현할 수 있습니다. 그러나 OnStop()을 찾을 수 있습니다.

protected void onStop() 
{ 
    super.onStop(); 
    deleteFiles(cacheDir); 
} 

수신기 내에서 deleteFiles (cacheDir);

private void deleteFiles(File dir){ 
    if (dir != null){ 
    if (dir.listFiles() != null && dir.listFiles().length > 0){ 
    // RECURSIVELY DELETE FILES IN DIRECTORY 
    for (File file : dir.listFiles()){ 
    deleteFiles(file); 
    } 
    } else { 
    // JUST DELETE FILE 
    dir.delete(); 
    } 
    } 
} 

권한 : android.permission.CLEAR_APP_CACHE android.permission.DELETE_CACHE_FILES

참조 : How can I clear the Android app cache?

당신은 [onpause]를 사용하여 시도 할 수
관련 문제