2012-04-10 6 views
1

Meine Anwendung arbeitet mit Standard-Android-Kontakte, so habe ich folgende Berechtigungen in meinem AndroidManifest.xml:Anwendung neu gestartet, wenn der Benutzer Daten für Kontakte App gelöscht

<uses-permission android:name="android.permission.READ_CONTACTS" /> 
<uses-permission android:name="android.permission.WRITE_CONTACTS" /> 

Ach, wenn ich klare Benutzerdaten für Standard-Kontaktanwendung (Einstellungen -> Anwendungen -> Anwendungen verwalten -> Alle -> Kontakte -> Daten löschen), meine Anwendung com.example.dialer Neustarts:

04-05 15:39:21.161 I/InstalledAppDetails(9019): Clearing user data for package : com.android.providers.contacts 
04-05 15:39:21.181 I/Process ( 252): Sending signal. PID: 8774 SIG: 9 
04-05 15:39:21.181 I/Process ( 252): Sending signal. PID: 8761 SIG: 9 
04-05 15:39:21.181 I/Process ( 252): Sending signal. PID: 8368 SIG: 9 
04-05 15:39:21.181 I/ActivityManager( 252): Force stopping package com.android.providers.contacts uid=10017 
04-05 15:39:21.181 I/ActivityManager( 252): Kill com.sonyericsson.android.socialphonebook (pid 8774): provider com.android.providers.contacts.SemcContactsProvider2 in dying process android.process.acore 
04-05 15:39:21.181 I/ActivityManager( 252): Kill com.example.dialer (pid 8761): provider com.android.providers.contacts.SemcCallLogProvider in dying process android.process.acore 
04-05 15:39:21.231 D/dalvikvm(9019): GC_CONCURRENT freed 1572K, 52% free 3798K/7815K, external 4576K/5694K, paused 1ms+4ms 
04-05 15:39:21.251 E/InputDispatcher( 252): channel '2b440330 com.example.dialer/com.example.dialer.Dialer (server)' ~ Consumer closed input channel or an error occurred. events=0x8 
04-05 15:39:21.251 E/InputDispatcher( 252): channel '2b440330 com.example.dialer/com.example.dialer.Dialer (server)' ~ Channel is unrecoverably broken and will be disposed! 
04-05 15:39:21.251 I/WindowManager( 252): WINDOW DIED Window{2b440330 com.example.dialer/com.example.dialer.Dialer paused=false} 
04-05 15:39:21.261 I/ActivityManager( 252): Process com.example.dialer (pid 8761) has died. 
04-05 15:39:21.261 W/ActivityManager( 252): Scheduling restart of crashed service com.example.dialer/.ContactsService in 5000ms 
04-05 15:39:21.281 I/InstalledAppDetails(9019): Cleared user data for package : com.android.providers.contacts 

Ist es möglich, dies zu verhindern und aktualisieren Zustand meiner App statt?

Antwort

0

AFAIK, wenn Ihre App KONTAKT bezogene Berechtigungen enthält, bedeutet dies, dass Ihre App irgendwie mit der Kontaktanwendung verknüpft ist und davon abhängig ist.

Wenn der Benutzer die Kontaktdaten App-Daten gelöscht, ganzer Kontakt Paket durch das System neu gestartet wird (Sie in Protokollen sehen). Das bedeutet, dass alle Anwendungen KONTAKT bezogenen Berechtigungen, die neu gestartet werden.

Also ich glaube nicht, dass Sie dies stoppen.