2010-06-10 17 views
25

Bir Android uygulaması geliştirdim. Şimdi, uygulamanın telefondan kaldırıldığı anda birkaç işlem yapmak istiyorum (örn. - Ayarları sıfırla vb.).Android'de kaldırıldığında bir görev gerçekleştirin

Bir dinleyiciyi veya uygulamanın kaldırıldığı anda çağrılan bir işlevi yeniden etkinleştirmek mümkün mü?

+1

'NQ Mobile Security' uygulaması, http://i.imgur.com/Fos9N.png adresindeki kaldırma etkinliğindeki bir etkinliği çağırıyor, http://i.imgur.com/fIZbK.png, http : //i.imgur.com/cG9Hr.png ve http://stackoverflow.com/questions/10219328/how-to-show-an-activity-before-my-app-is-uninstalled-android –

+0

güzel soru sorusu .. –

+0

benim cevap kontrol edin: http://stackoverflow.com/questions/5132472/can-code-be-called-when-my-android-application-is-uninstalled/28209337#28209337 Bu size yardımcı olacaktır –

cevap

16

Şu anda ne yazık ki android, uygulamanızın kaldırıldığı anda size kod gerçekleştirme olanağı sunmuyor.

SharedPreferences aracılığıyla ayarlanan tüm ayarlar, Uygulama Verileri'nde bir Önbellek klasöründeki her şeyle birlikte silinir.

Devam edecek tek şey, SD-Card'a yazılan veriler ve yapılan telefon ayarlarında yapılan değişikliklerdir. Uygulamanız aracılığıyla kişilerle senkronize edilen verilere ne olduğunu bilmiyorum.

+7

Onun hüzünlü olduğunu düşünmüyorum. Aslında, çok mutluyum çünkü telefonumda casus yazılım benzeri aktiviteyi önlemeye yardımcı oluyor. –

+4

Ancak, telefon belleğinin dolmasını önlemek için SD Kart'a indirdiğim veriler gibi belirli şeyleri temizlememi de engelliyor. Hayır SD Kartını dolduruyorum. Belki bu froyo sd için app ile daha iyi olacak ama 2.2 altındaki cihazlar için bir kaldırma üzerinde kibar olmak istiyorum. – Janusz

+7

@Janusz: "android.os.Environment" sınıfında 'getExternalStorageDirectory()' a bakın. Çevrimiçi doküman, API düzey 1'den beri orada olduğunu söylüyor ancak hatırlamıyorum. Yine de, bu uygulama, uygulama kaldırıldığında SD kartta temizlenecek uygulamaya özel bir dizin vermesi gerekiyor. – CommonsWare

6

Uygulamanız kaldırıldığında denetimi alamıyorsunuz - üzgünüm!

+1

teşekkürler, android.intent.action.PACKAG için alıcı ayarladım E_REMOVED ve şu anda herhangi bir uygulama kaldırıldığında çağrılır Bu alıcıda silinen paket adını nasıl alabilirim – dhaiwat

+0

Eğer mümkün değilse Firebase Analytics app_remove olaylarını otomatik olarak nasıl sağlıyor? –

+2

@OfekRon: Lütfen birden fazla cevapta yinelenen yorum göndermeyin. Firebase kullanmıyorum ve "app_remove olayları" nın ne olduğunu bilmiyorum. Ancak, cihazdaki * diğer uygulamalar * uygulamanızın kaldırıldığını öğrenebilir. Dolayısıyla, Play Hizmetleri Çerçevesi uygulamasının, Google Play Store'un veya Google'ın diğer bazı özel kodlarının Google'ın sunucularına bu bilgiyi kaldırma ve iletmeyi algılayan olduğunu kabul ediyorum. – CommonsWare

-3

onun mobil kullanıcı kaldırma android uygulama PACKAGE_REMOVED alıcı arayacak. Kaldırma uygulama paketi adı kullanım amacını kaldırabilirsiniz, getDataString()

Bu bağlantıdaki örneğe bakın. http://foryouneed.blogspot.in/2014/08/android-listener-application-to-install.html

+2

Yüklenen uygulama bu dokümanı almayacak, dokümanlar: "Yüklenmekte olan paket bu amacı almıyor". http://developer.android.com/reference/android/content/Intent.html#ACTION_PACKAGE_REMOVED – Anastasia

İlgili konular