Support for using Signal without Play Services

This is now possible with beta calling, so non-GCM users are a
part of beta calling by default.

// FREEBIE
This commit is contained in:
Moxie Marlinspike
2017-02-20 12:00:03 -08:00
parent 4112f23f33
commit 1669731329
15 changed files with 354 additions and 114 deletions

View File

@@ -60,6 +60,8 @@ public class GcmRefreshJob extends ContextJob implements InjectableType {
@Override
public void onRun() throws Exception {
if (TextSecurePreferences.isGcmDisabled(context)) return;
String registrationId = TextSecurePreferences.getGcmRegistrationId(context);
if (registrationId == null) {

View File

@@ -43,11 +43,12 @@ public class RefreshAttributesJob extends ContextJob implements InjectableType {
String gcmRegistrationId = TextSecurePreferences.getGcmRegistrationId(context);
int registrationId = TextSecurePreferences.getLocalRegistrationId(context);
boolean video = TextSecurePreferences.isWebrtcCallingEnabled(context);
boolean fetchesMessages = TextSecurePreferences.isGcmDisabled(context);
String token = signalAccountManager.getAccountVerificationToken();
redPhoneAccountManager.createAccount(token, new RedPhoneAccountAttributes(signalingKey, gcmRegistrationId));
signalAccountManager.setAccountAttributes(signalingKey, registrationId, true, video);
signalAccountManager.setAccountAttributes(signalingKey, registrationId, true, video || fetchesMessages, fetchesMessages);
}
@Override