Fix build with f-droid

This commit is contained in:
世界 2021-03-20 14:21:12 +08:00
parent cd182b1b07
commit 28301ad426
No known key found for this signature in database
GPG Key ID: CD109927C34A63C4
3 changed files with 21 additions and 4 deletions

View File

@ -1,6 +1,7 @@
package tw.nekomimi.nekogram; package tw.nekomimi.nekogram;
import android.app.Activity; import android.app.Activity;
import android.content.Context;
import android.content.IntentSender; import android.content.IntentSender;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.WindowManager; import android.view.WindowManager;
@ -15,6 +16,7 @@ import com.google.android.play.core.install.InstallStateUpdatedListener;
import com.google.android.play.core.install.model.AppUpdateType; import com.google.android.play.core.install.model.AppUpdateType;
import com.google.android.play.core.install.model.InstallStatus; import com.google.android.play.core.install.model.InstallStatus;
import com.google.android.play.core.install.model.UpdateAvailability; import com.google.android.play.core.install.model.UpdateAvailability;
import com.google.android.play.core.missingsplits.MissingSplitsManagerFactory;
import com.google.firebase.iid.FirebaseInstanceId; import com.google.firebase.iid.FirebaseInstanceId;
import org.telegram.messenger.ApplicationLoader; import org.telegram.messenger.ApplicationLoader;
@ -49,6 +51,12 @@ public class GcmImpl implements ExternalGcm.Interface {
return hasPlayServices; return hasPlayServices;
} }
@Override
public boolean checkSplit(Context ctx) {
//noinspection deprecation
return MissingSplitsManagerFactory.create(ctx).disableAppIfMissingRequiredSplits();
}
@Override @Override
public void initPlayServices() { public void initPlayServices() {
Utilities.stageQueue.postRunnable(() -> { Utilities.stageQueue.postRunnable(() -> {

View File

@ -32,8 +32,6 @@ import android.util.Log;
import androidx.core.app.NotificationManagerCompat; import androidx.core.app.NotificationManagerCompat;
import androidx.multidex.MultiDex; import androidx.multidex.MultiDex;
import com.google.android.play.core.missingsplits.MissingSplitsManagerFactory;
import org.telegram.tgnet.ConnectionsManager; import org.telegram.tgnet.ConnectionsManager;
import org.telegram.tgnet.TLRPC; import org.telegram.tgnet.TLRPC;
import org.telegram.ui.ActionBar.Theme; import org.telegram.ui.ActionBar.Theme;
@ -340,8 +338,7 @@ public class ApplicationLoader extends Application {
} catch (Throwable ignore) { } catch (Throwable ignore) {
} }
//noinspection deprecation if (BuildVars.isPlay && ExternalGcm.checkSplit(this)) {
if (BuildVars.isPlay && MissingSplitsManagerFactory.create(this).disableAppIfMissingRequiredSplits()) {
return; // Skip app initialization. return; // Skip app initialization.
} }

View File

@ -1,12 +1,15 @@
package tw.nekomimi.nekogram; package tw.nekomimi.nekogram;
import android.app.Activity; import android.app.Activity;
import android.content.Context;
import org.telegram.messenger.FileLog; import org.telegram.messenger.FileLog;
public class ExternalGcm { public class ExternalGcm {
interface Interface { interface Interface {
boolean checkSplit(Context ctx);
boolean checkPlayServices(); boolean checkPlayServices();
void initPlayServices(); void initPlayServices();
@ -18,6 +21,11 @@ public class ExternalGcm {
static class NoImpl implements Interface { static class NoImpl implements Interface {
@Override
public boolean checkSplit(Context ctx) {
return false;
}
@Override @Override
public boolean checkPlayServices() { public boolean checkPlayServices() {
return false; return false;
@ -50,6 +58,10 @@ public class ExternalGcm {
} }
} }
public static boolean checkSplit(Context ctx) {
return impl.checkSplit(ctx);
}
public static void initPlayServices() { public static void initPlayServices() {
impl.initPlayServices(); impl.initPlayServices();
} }