diff --git a/app/src/main/java/com/topjohnwu/magisk/ClassMap.kt b/app/src/main/java/com/topjohnwu/magisk/ClassMap.kt index 92ce3a884..24895bdb9 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ClassMap.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ClassMap.kt @@ -21,7 +21,7 @@ object ClassMap { ) @JvmStatic - operator fun get(c: Class<*>): Class<*>? { - return map.getOrElse(c) { null } //as? Class + operator fun >get(c: Class<*>): T { + return map.getOrElse(c) { throw IllegalArgumentException() } as T } } diff --git a/app/src/main/java/com/topjohnwu/magisk/utils/Utils.java b/app/src/main/java/com/topjohnwu/magisk/utils/Utils.java index ffb730240..0a513e1df 100644 --- a/app/src/main/java/com/topjohnwu/magisk/utils/Utils.java +++ b/app/src/main/java/com/topjohnwu/magisk/utils/Utils.java @@ -111,17 +111,14 @@ public class Utils { return BuildConfig.VERSION_NAME.contains("-"); } - @SuppressWarnings("unchecked") public static void scheduleUpdateCheck() { if (Config.get(Config.Key.CHECK_UPDATES)) { Constraints constraints = new Constraints.Builder() .setRequiredNetworkType(NetworkType.CONNECTED) - //ensures that notification doesn't pop up every time user starts the app .setRequiresDeviceIdle(true) .build(); - Class service = (Class) ClassMap.get(UpdateCheckService.class); PeriodicWorkRequest request = new PeriodicWorkRequest - .Builder(service, 12, TimeUnit.HOURS) + .Builder(ClassMap.get(UpdateCheckService.class), 12, TimeUnit.HOURS) .setConstraints(constraints) .build(); WorkManager.getInstance().enqueueUniquePeriodicWork(