-
Notifications
You must be signed in to change notification settings - Fork 10
Fixing runtime errors
Make sure a WebView apk is installed. Usually there'll be a external/chromium-webview in your source tree.
To troubleshoot this issue, try following steps first:
-
adb shell am start -n com.android.settings/com.android.settings.WebViewImplementation-> tap on the webview -
adb shell am start -n com.android.webview/org.chromium.android_webview.devui.MainActivity-> if this does not start an activity, there's a problem with the WebView app -
adb shell pm list packages -a | grep webview-> if this does not give you a com.android.webview package, then WebView is missing.
This commit is necessary in 15: https://review.lineageos.org/c/LineageOS/android_vendor_lineage/+/404078
05-08 23:09:32.152 10064 10064 F DEBUG : Revision: '0'
05-08 23:09:32.152 10064 10064 F DEBUG : ABI: 'arm64'
05-08 23:09:32.152 10064 10064 F DEBUG : Timestamp: 2025-05-08 23:09:32.020420081+0200
05-08 23:09:32.152 10064 10064 F DEBUG : Process uptime: 9s
05-08 23:09:32.152 10064 10064 F DEBUG : Cmdline: jp.pokemon.pokemontcgp
05-08 23:09:32.152 10064 10064 F DEBUG : pid: 9375, tid: 9413, name: UnityMain >>> jp.pokemon.pokemontcgp <<<
05-08 23:09:32.152 10064 10064 F DEBUG : uid: 10266
05-08 23:09:32.152 10064 10064 F DEBUG : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
05-08 23:09:32.152 10064 10064 F DEBUG : pac_enabled_keys: 000000000000000f (PR_PAC_APIAKEY, PR_PAC_APIBKEY, PR_PAC_APDAKEY, PR_PAC_APDBKEY)
05-08 23:09:32.152 10064 10064 F DEBUG : signal 7 (SIGBUS), code 1 (BUS_ADRALN), fault addr 0x0000000400000003
05-08 23:09:32.152 10064 10064 F DEBUG : x0 0000007807d46980 x1 0000000000000000 x2 0000000000000000 x3 0000000000000000
05-08 23:09:32.152 10064 10064 F DEBUG : x4 0000007821a421b8 x5 0000007821a421b4 x6 0000000000000000 x7 0000000000000000
05-08 23:09:32.152 10064 10064 F DEBUG : x8 0000000000000063 x9 00000079d17b69a4 x10 00000079c8b52dcc x11 0000000000000004
05-08 23:09:32.152 10064 10064 F DEBUG : x12 0000000000000000 x13 0000000000000010 x14 b400007b11828010 x15 00000000ffffe322
05-08 23:09:32.152 10064 10064 F DEBUG : x16 00000079d0ba5d10 x17 0000007d3645d040 x18 0000000000000050 x19 0000007821a12da0
05-08 23:09:32.152 10064 10064 F DEBUG : x20 0000007821a42180 x21 0000000000000001 x22 00000079c8b52ed0 x23 00000079d12c2640
05-08 23:09:32.152 10064 10064 F DEBUG : x24 0000007913c99368 x25 00000079c8b61040 x26 00000079c8b53714 x27 00000079d1317b20
05-08 23:09:32.152 10064 10064 F DEBUG : x28 00000079d13057b0 x29 0000000200000001
05-08 23:09:32.152 10064 10064 F DEBUG : lr 0000000400000003 sp 00000079c8b52de0 pc 0000000400000003 pst 0000000060001000
05-08 23:09:32.152 10064 10064 F DEBUG : 1 total frames
05-08 23:09:32.152 10064 10064 F DEBUG : backtrace:
05-08 23:09:32.152 10064 10064 F DEBUG : #00 pc 0000000400000003 <unknown>
We don't really know why it crashes. On XOS 15.1 it worked on Spacewar, but not on Pong. On XOS 15.2 it does not work on both. The game crashes after running for a few seconds. It does not crash when internet is disabled.
There is a suspicion that the game is able to detect the presence of a custom ROM and thus refuses to work – however, it is weird that the crash originates from IL2CPP which seems to be part of Unity. The fact that pc is always 0000000400000003 and that is the only frame that exists, a theory could be that this actually means 403 Forbidden, which would explain the custom ROM thing, but we can't say for sure.
Fact of the matter is that there are no useful logs, however, some people have reported the same issue independently on a Google Pixel. I can't find the website anymore, but it was on the pokemon forum or something.
Setting SELinux to permissive does not help.
Solution: Build user instead of userdebug.
On Spacewar, video recording would not work. When pressing the record button, the camera app hangs, goes black, closes and the session is aborted. Further attempts to open the camera feel sluggish at first. To solve this, make sure following commits are present:
https://github.com/LineageOS/android_hardware_interfaces/commit/177a5b89b342f1f336694d15bbaeaa29eab5ff9d https://git.halogenos.org/halogenOS/android_frameworks_av/-/commit/9815612e496c698e6027ffbb45683482dc3a900e https://git.halogenos.org/halogenOS/android_frameworks_av/-/commit/2782da15d49db9d90f576acc5bab1459542db627
07-11 17:23:11.404 13337 13337 D AndroidRuntime: Shutting down VM
07-11 17:23:11.404 13337 13337 E AndroidRuntime: FATAL EXCEPTION: main
07-11 17:23:11.404 13337 13337 E AndroidRuntime: Process: com.android.phone, PID: 13337
07-11 17:23:11.404 13337 13337 E AndroidRuntime: java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at com.android.internal.telephony.uicc.UiccController.onGetIccCardStatusDone(UiccController.java:1091)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at com.android.internal.telephony.uicc.UiccController.handleMessage(UiccController.java:640)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:110)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:248)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at android.os.Looper.loop(Looper.java:338)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:9062)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
07-11 17:23:11.404 13337 13337 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
Crash introduced by commit in frameworks/opt/telephony:
commit 42e37234cee15c9f3fcfac0532110abfc8843b99
Author: sandeepjs <[email protected]>
Date: Tue Feb 25 18:32:02 2025 +0000
Removing the overwrite logic of sim slot length to mCi's length
This fix was added because of crash that can be seen if “config_num_physical_slots” is not configured properly,
Its the OEM responsibility to configure this property .
Test: b/398782613
Bug: b/396750634
Flag: EXEMPT bug fix
Change-Id: Ia0ce90e5914f30b6b88212e164a742417f39021f
diff --git a/src/java/com/android/internal/telephony/uicc/UiccController.java b/src/java/com/android/internal/telephony/uicc/UiccController.java
index 9db25b6532..bc3a4d6202 100644
--- a/src/java/com/android/internal/telephony/uicc/UiccController.java
+++ b/src/java/com/android/internal/telephony/uicc/UiccController.java
@@ -277,11 +277,6 @@ public class UiccController extends Handler {
if (DBG) {
logWithLocalLog("config_num_physical_slots = " + numPhysicalSlots);
}
- // Minimum number of physical slot count should be equals to or greater than phone count,
- // if it is less than phone count use phone count as physical slot count.
- if (numPhysicalSlots < mCis.length) {
- numPhysicalSlots = mCis.length;
- }
mTelephonyManager = mContext.getSystemService(TelephonyManager.class);Solution: Set config_num_physical_slots in framework overlay