Add account management interface to libtextsecure api

This commit is contained in:
Moxie Marlinspike
2014-11-09 20:35:08 -08:00
parent ae178fc4ec
commit 601e233d47
32 changed files with 463 additions and 491 deletions

View File

@@ -54,8 +54,9 @@ import com.google.android.gms.gcm.GoogleCloudMessaging;
import org.thoughtcrime.securesms.components.OutgoingSmsPreference;
import org.thoughtcrime.securesms.contacts.ContactAccessor;
import org.thoughtcrime.securesms.contacts.ContactIdentityManager;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.crypto.MasterSecretUtil;
import org.thoughtcrime.securesms.push.PushServiceSocketFactory;
import org.thoughtcrime.securesms.push.TextSecureCommunicationFactory;
import org.thoughtcrime.securesms.service.KeyCachingService;
import org.thoughtcrime.securesms.util.Dialogs;
import org.thoughtcrime.securesms.util.DynamicLanguage;
@@ -64,9 +65,9 @@ import org.thoughtcrime.securesms.util.MemoryCleaner;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import org.thoughtcrime.securesms.util.Trimmer;
import org.thoughtcrime.securesms.util.Util;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.whispersystems.libaxolotl.util.guava.Optional;
import org.whispersystems.textsecure.api.TextSecureAccountManager;
import org.whispersystems.textsecure.push.exceptions.AuthorizationFailedException;
import org.whispersystems.textsecure.push.PushServiceSocket;
import java.io.IOException;
@@ -362,10 +363,10 @@ public class ApplicationPreferencesActivity extends PassphraseRequiredActionBarA
@Override
protected Integer doInBackground(Void... params) {
try {
Context context = getActivity();
PushServiceSocket socket = PushServiceSocketFactory.create(context);
Context context = getActivity();
TextSecureAccountManager accountManager = TextSecureCommunicationFactory.createManager(context);
socket.unregisterGcmId();
accountManager.setGcmId(Optional.<String>absent());
GoogleCloudMessaging.getInstance(context).unregister();
return SUCCESS;