2010-06-10 6 views
25

Android 앱을 개발했습니다. 이제 앱이 휴대 전화에서 제거 될 때 몇 가지 작업 (예 : 설정 재설정 등)을 수행하고 싶습니다.android에서 제거 작업 수행

청취자 나 앱을 삭제할 때 호출되는 기능을 미리 설정할 수 있습니까?

+1

'NQ 모바일 보안'응용 프로그램은 http://i.imgur.com/Fos9N.png, http://i.imgur.com/fIZbK.png, http : //i.imgur.com/cG9Hr.png 및 질문 http://stackoverflow.com/questions/10219328/how-to-show-an-activity-before-my-app-is-uninstalled-android –

+0

nice 질문 .. –

+0

에 내 대답을 확인하십시오 http://stackoverflow.com/questions/5132472/can-code-be-called-when-my-android-application-is-uninstalled/28209337#28209337 이게 당신을 도울 것입니다 –

답변

16

슬프게도 안드로이드는 앱을 제거하는 순간 코드를 수행 할 수있는 가능성을 제공하지 않습니다.

SharedPreferences를 통해 설정된 모든 설정은 응용 프로그램 데이터 및 캐시 폴더의 모든 항목과 함께 삭제됩니다.

지속되는 유일한 것은 SD 카드에 기록 된 데이터와 변경된 전화 설정 변경입니다. 앱을 통해 연락처와 동기화되는 데이터가 어떻게되는지 알지 못합니다.

+7

그 슬픈 생각은하지 않습니다. 사실, 나는 그것이 내 전화에서 스파이웨어와 같은 활동을 막는 데 도움이되기 때문에 기분이 좋지 않습니다. –

+4

하지만 SD 카드에 다운로드 한 데이터와 같은 특정 항목을 정리하지 못하게하여 전화 메모리가 가득 차지 않도록합니다. 아니요, SD 카드를 채 웁니다. 어쩌면 이것은 froyo에서 sd 응용 프로그램으로 더 좋아질 것입니다. 그러나 2.2 이하의 장치에서는 제거를 정중하게하고 싶습니다. – Janusz

+7

@Janusz : android.os.Environment 클래스에서'getExternalStorageDirectory()'를보세요. 온라인 의사는 API 레벨 1 이후에 있었지만 기억이 안납니다. 어쨌든, SD 카드에 앱 별 디렉토리를 제공해야합니다.이 디렉토리는 앱을 제거 할 때 정리됩니다. – CommonsWare

6

응용 프로그램을 제거 할 때 제어 할 수 없습니다 - 죄송합니다!

+1

고마워, 나는 android.intent.action.PACKAG 수신기를 설정합니다 E_REMOVED 그리고 어떤 응용 프로그램을 지금 제거 할 때 호출됩니다.이 수신기에서 삭제 된 패키지 이름을 얻는 방법은 무엇입니까? – dhaiwat

+0

가능한 경우 Firebase Analytics가 app_remove 이벤트를 자동으로 제공하는 방법은 무엇입니까? –

+2

@OfekRon : 여러 답변에 중복 된 의견을 게시하지 마십시오. 나는 Firebase를 사용하지 않고 "app_remove events"가 무엇인지 알지 못합니다. 그러나 기기의 * 다른 앱 *에서 앱이 제거되었음을 알 수 있습니다. 따라서 Play Services Framework 앱, Play 스토어 또는 일부 다른 Google 독점 코드가 Google 서버에 정보를 제거하고 전달하는 것으로 판단됩니다. – CommonsWare

-3

자신의 모바일 사용자 제거 안드로이드 응용 프로그램이 PACKAGE_REMOVED 수신기를 호출합니다. 제거 된 앱 패키지 이름 사용 의도, getDataString()

if (intent.getAction(). equals ("android.intent.action.PACKAGE_REMOVED")) { 
      String packageName = intent.getDataString(); 
      System.out.println ("uninstall:" + packageName + "package name of the program"); 
} 

전체 링크 예제를 참조하십시오. http://foryouneed.blogspot.in/2014/08/android-listener-application-to-install.html

+2

제거중인 앱에 docs : "설치중인 패키지가이 인 텐트를받지 못함"에서이 인 텐트가 수신되지 않습니다. http://developer.android.com/reference/android/content/Intent.html#ACTION_PACKAGE_REMOVED – Anastasia