island icon indicating copy to clipboard operation
island copied to clipboard

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

Open micstart opened this issue 1 year ago • 8 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

micstart avatar Sep 12 '23 11:09 micstart

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)

chefexperte avatar Sep 14 '23 16:09 chefexperte

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

andy-math avatar Sep 22 '23 06:09 andy-math

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);
								}
							};
						}
					}));

andy-math avatar Sep 22 '23 07:09 andy-math

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.

chefexperte avatar Sep 22 '23 22:09 chefexperte

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.

andy-math avatar Sep 23 '23 07:09 andy-math

		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);
							}
						};
					}
				}));

Josefabianramos avatar Dec 09 '23 09:12 Josefabianramos

	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);
						}
					};
				}
			}));

Josefabianramos avatar Dec 09 '23 09:12 Josefabianramos