oasisfeng / island

Island for Android

Home Page:https://play.google.com/store/apps/details?id=com.oasisfeng.island

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Crash On Android 13(Island.v6.1.2.apk)

micstart opened this issue · comments

09-12 04:19:53.879 4092 4092 E AndroidRuntime: FATAL EXCEPTION: main
09-12 04:19:53.879 4092 4092 E AndroidRuntime: Process: com.oasisfeng.island, PID: 4092
09-12 04:19:53.879 4092 4092 E AndroidRuntime: java.lang.ExceptionInInitializerError
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.oasisfeng.island.analytics.AnalyticsImpl.(SourceFile:61)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.oasisfeng.island.analytics.Analytics$Companion.(SourceFile:14)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.oasisfeng.island.analytics.Analytics.(Unknown Source:0)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.oasisfeng.island.analytics.Analytics.$(SourceFile:1)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.android.setupwizardlib.view.NavigationBar.onClick(SourceFile:614)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.view.View.performClick(View.java:7523)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.view.View.performClickInternal(View.java:7496)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.view.View.-$$Nest$mperformClickInternal(Unknown Source:0)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.view.View$PerformClick.run(View.java:29488)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:942)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:201)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.os.Looper.loop(Looper.java:288)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:8081)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:703)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:923)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: Caused by: java.lang.UnsupportedOperationException: getApplicationInfo not implemented in subclass
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at android.content.pm.PackageManager.getApplicationInfo(PackageManager.java:5441)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at androidx.activity.ComponentDialog$$ExternalSyntheticApiModelOutline0.m(SourceFile:1)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.sessions.settings.LocalOverrideSettings.(SourceFile:22)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.sessions.settings.SessionsSettings.(SourceFile:3)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.sessions.FirebaseSessions.(SourceFile:33)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.sessions.FirebaseSessionsRegistrar.getComponents$lambda-0(SourceFile:71)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.sessions.FirebaseSessionsRegistrar.$r8$lambda$JITndpZCWeA0w9BDlkcI3l22oGY(SourceFile:1)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at androidx.compose.ui.graphics.colorspace.Rgb$$ExternalSyntheticLambda1.create(SourceFile:95)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.tracing.ComponentMonitor$$ExternalSyntheticLambda0.create(SourceFile:18)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.FirebaseApp$$ExternalSyntheticLambda0.get(SourceFile:25)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.components.Lazy.get(SourceFile:14)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.components.ComponentContainer.get(SourceFile:3)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.components.ComponentContainer.get(SourceFile:1)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at androidx.appcompat.widget.TooltipPopup.get(SourceFile:2)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.components.Component$$ExternalSyntheticLambda0.create(SourceFile:51)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.tracing.ComponentMonitor$$ExternalSyntheticLambda0.create(SourceFile:18)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.FirebaseApp$$ExternalSyntheticLambda0.get(SourceFile:25)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.components.Lazy.get(SourceFile:14)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.components.ComponentRuntime.doInitializeEagerComponents(SourceFile:52)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeAllApis(SourceFile:148)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeApp(SourceFile:31)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeApp(SourceFile:7)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: at com.oasisfeng.island.firebase.FirebaseWrapper.(SourceFile:72)
09-12 04:19:53.879 4092 4092 E AndroidRuntime: ... 17 more

I am getting a similar/same error. I tried normal setup, root setup and manual setup with adb. With adb all commands execute successfully, but I get an error when I open the app:

Exception on crash
234567891011121314151617181920212223242526272829
time: 1694593686454
msg: java.lang.IllegalArgumentException: Remote stack trace:
  at com.android.server.job.JobSchedulerService$JobSchedulerStub.enforceValidJobRequest(JobSchedulerService.java:3022)
  at com.android.server.job.JobSchedulerService$JobSchedulerStub.schedule(JobSchedulerService.java:3077)
  at android.app.job.IJobScheduler$Stub.onTransact(IJobScheduler.java:153)
  at android.os.Binder.execTransactInternal(Binder.java:1283)
  at android.os.Binder.execTransact(Binder.java:1227)

stacktrace: java.lang.IllegalArgumentException: Tried to schedule job for non-existent component: ComponentInfo{org.polymorphicshade.newpipe/org.acra.sender.JobSenderService}
  at android.os.Parcel.createExceptionOrNull(Parcel.java:3032)
  at android.os.Parcel.createException(Parcel.java:3012)
  at android.os.Parcel.readException(Parcel.java:2995)
  at android.os.Parcel.readException(Parcel.java:2937)
  at android.app.job.IJobScheduler$Stub$Proxy.schedule(IJobScheduler.java:263)
  at android.app.JobSchedulerImpl.schedule(JobSchedulerImpl.java:50)
  at org.acra.scheduler.DefaultSenderScheduler.scheduleReportSending(DefaultSenderScheduler.kt:52)
  at org.acra.scheduler.SchedulerStarter.scheduleReports(SchedulerStarter.kt:49)
  at org.acra.startup.StartupProcessorExecutor.processReports$lambda$6$lambda$5(StartupProcessorExecutor.kt:60)
  at org.acra.startup.StartupProcessorExecutor.$r8$lambda$LK61ILz0qM6dPNH2J6guur40K2U(StartupProcessorExecutor.kt:0)
  at org.acra.startup.StartupProcessorExecutor$$ExternalSyntheticLambda1.run(R8$$SyntheticClass:0)
  at java.lang.Thread.run(Thread.java:1012)
Caused by: android.os.RemoteException: Remote stack trace:
  at com.android.server.job.JobSchedulerService$JobSchedulerStub.enforceValidJobRequest(JobSchedulerService.java:3022)
  at com.android.server.job.JobSchedulerService$JobSchedulerStub.schedule(JobSchedulerService.java:3077)
  at android.app.job.IJobScheduler$Stub.onTransact(IJobScheduler.java:153)
  at android.os.Binder.execTransactInternal(Binder.java:1283)
  at android.os.Binder.execTransact(Binder.java:1227)
commented

This crash is in com.oasisfeng.condom.PackageManagerWrapper#getApplicationInfo(String,ApplicationInfoFlags)
It should override this, but not.
see oasisfeng/condom#34

commented

dirty fix:
island/shared/src/main/java/com/oasisfeng/island/firebase/FirebaseWrapper.java

			final CondomContext condom = CondomContext.wrap(context, "Firebase", new CondomOptions()
					.setOutboundJudge((t, i, pkg) -> ! "com.google.android.gms".equals(pkg)).addKit(new NotificationKit()).addKit(new PowerManagerKit()).setPackageManagerFactory(new PackageManagerFactory() {
						@Override
						public PackageManagerWrapper getPackageManager(Context base, PackageManager downstream) {
							return new PackageManagerWrapper(downstream) {
								final private PackageManager mBase = base.getPackageManager();

								@RequiresApi(api = Build.VERSION_CODES.TIRAMISU)
								@NonNull
								@Override
								public ApplicationInfo getApplicationInfo(@NonNull String packageName, @NonNull ApplicationInfoFlags flags) throws NameNotFoundException {
									Log.w("debug", "getApplicationInfo");
									return mBase.getApplicationInfo(packageName, flags);
								}
							};
						}
					}));

I don't know if this helps, but I found an app called "Insular" which is a fork of this app, does work for me.

commented

Insular doesn't seem to have followed up on Island's updates resulting from policy changes related to Google and/or Firebase, thus not introducing condom and the compatibility issues associated with it.

		final CondomContext condom = CondomContext.wrap(context, "Firebase", new CondomOptions()
				.setOutboundJudge((t, i, pkg) -> ! "com.google.android.gms".equals(pkg)).addKit(new NotificationKit()).addKit(new PowerManagerKit()).setPackageManagerFactory(new PackageManagerFactory() {
					@Override
					public PackageManagerWrapper getPackageManager(Context base, PackageManager downstream) {
						return new PackageManagerWrapper(downstream) {
							final private PackageManager mBase = base.getPackageManager();

							@RequiresApi(api = Build.VERSION_CODES.TIRAMISU)
							@NonNull
							@Override
							public ApplicationInfo getApplicationInfo(@NonNull String packageName, @NonNull ApplicationInfoFlags flags) throws NameNotFoundException {
								Log.w("debug", "getApplicationInfo");
								return mBase.getApplicationInfo(packageName, flags);
							}
						};
					}
				}));
	final CondomContext condom = CondomContext.wrap(context, "Firebase", new CondomOptions()
			.setOutboundJudge((t, i, pkg) -> ! "com.google.android.gms".equals(pkg)).addKit(new NotificationKit()).addKit(new PowerManagerKit()).setPackageManagerFactory(new PackageManagerFactory() {
				@Override
				public PackageManagerWrapper getPackageManager(Context base, PackageManager downstream) {
					return new PackageManagerWrapper(downstream) {
						final private PackageManager mBase = base.getPackageManager();

						@RequiresApi(api = Build.VERSION_CODES.TIRAMISU)
						@NonNull
						@Override
						public ApplicationInfo getApplicationInfo(@NonNull String packageName, @NonNull ApplicationInfoFlags flags) throws NameNotFoundException {
							Log.w("debug", "getApplicationInfo");
							return mBase.getApplicationInfo(packageName, flags);
						}
					};
				}
			}));