2016-08-09 18 views
0

Ich verwende SyncAdapter in meiner Anwendung. Mein Problem ist, wenn ich mich abmelde und dann ContentResolver.requestSync(myAccount, MyProvider.AUTHORITY, settingsBundle); rufe, ruft es noch die Analysewolke auf, die auf vorhergehenden analysierenden Benutzerdaten basiert.Android, Was ist der beste Weg, um AbstractThreadedSyncAdapter zu töten?

Aber bevor ich abmelde ich löschen alle meine Datenbank und ich stelle sicher, nach ParseUser.logout(); gibt es null als der aktuelle Benutzer zurück. Aber wenn ichSync wie folgt anfordern

@Override 
public void onPerformSync(Account account, Bundle extras, String authority, ContentProviderClient provider, SyncResult syncResult) { 
    Log.d("Current user",ParseUser.getCurrentUser().getObjectId()); 
} 

es zeigt die ID des vorherigen Benutzers. Was ist der beste Weg, um den Sync-Adapter zu stoppen und noch einmal von oben zu starten, damit er nicht meine Benutzer-ID hat?

Ich versuchte , um die Synchronisierung zu stoppen, aber es zeigt immer noch die Benutzer-ID. Kann mir jemand helfen, das zu lösen und danke im Voraus.

Antwort

1

Konto entfernen und hinzufügen. accountManager.removeAccount() Nun, das ist deprocated, aber versuchen Sie es.

+0

deprecated removeAccount funktioniert. Aber nicht die neueste Sache. Jedenfalls hat es mein Problem gelöst. Vielen Dank. –

Verwandte Themen