Closed irunonayran closed 2 months ago
Describe the bug When switching to another keyboard, trime crashes.
To Reproduce Steps to reproduce the bug:
Expected behavior Should not crash on switch.
Log
App Package Name: com.osfans.trime App Version Name: 3.2.11 App Version Code: 20230301 OS Name: TQ2A.230505.002.2023052900 OS Version: 5.10.178-android13-4-gb8b945ed31a7 (2023052900) OS API Level: 33 Device: bluejay Model (product): Pixel 6a (bluejay) Manufacturer: Google Tags: release-keys Screen Size: 1080 x 2400 Screen Density: 2.625 Screen orientation: Portrait --------- beginning of main I/libc (16588): SetHeapTaggingLevel: tag level set to 0 E/om.osfans.trime(16588): Not starting debugger since process cannot load the jdwp agent. D/AndroidRuntime(16588): >>>>>> START com.android.internal.os.RuntimeInit uid 10159 <<<<<< I/AndroidRuntime(16588): Using default boot image I/AndroidRuntime(16588): Leaving lock profiling enabled W/libc (16588): Access denied finding property "odsign.verification.success" E/cutils-trace(16588): Error opening trace file: No such file or directory (2) W/com.osfans.trime(16588): ART APEX data files are untrusted. D/com.osfans.trime(16588): Time zone APEX ICU file found: /apex/com.android.tzdata/etc/icu/icu_tzdata.dat D/com.osfans.trime(16588): I18n APEX ICU file found: /apex/com.android.i18n/etc/icu/icudt70l.dat D/AndroidRuntime(16588): Calling main entry com.android.internal.os.ExecInit D/Zygote (16588): begin preload I/Zygote (16588): Calling ZygoteHooks.beginPreload() I/Zygote (16588): Preloading shared libraries... E/com.osfans.trime(16588): Unable to find pattern file or unable to map it for am I/Zygote (16588): Called ZygoteHooks.endPreload() I/Zygote (16588): Installed AndroidKeyStoreProvider in 7ms. D/Zygote (16588): end preload I/libc (16588): SetHeapTaggingLevel: tag level set to 0 W/libc (16588): Access denied finding property "qemu.sf.lcd_density" W/libc (16588): Access denied finding property "qemu.sf.lcd_density" D/CompatibilityChangeReporter(16588): Compat change id reported: 171979766; UID 10159; state: DISABLED I/Typeface(16588): Preloading /system/fonts/Roboto-Regular.ttf I/Typeface(16588): Preloading /system/fonts/RobotoStatic-Regular.ttf V/GraphicsEnvironment(16588): ANGLE Developer option for 'com.osfans.trime' set to: 'default' V/GraphicsEnvironment(16588): ANGLE GameManagerService for com.osfans.trime: false V/GraphicsEnvironment(16588): Neither updatable production driver nor prerelease driver is supported. D/NetworkSecurityConfig(16588): No Network Security Config specified, using platform default D/NetworkSecurityConfig(16588): No Network Security Config specified, using platform default I/CustomActivityOnCrash(16588): CustomActivityOnCrash has been installed. D/CompatibilityChangeReporter(16588): Compat change id reported: 171228096; UID 10159; state: ENABLED D/CompatibilityChangeReporter(16588): Compat change id reported: 210923482; UID 10159; state: DISABLED D/CompatibilityChangeReporter(16588): Compat change id reported: 37756858; UID 10159; state: ENABLED E/CustomActivityOnCrash(16588): The previous app process crashed. This is the stack trace of the crash: E/CustomActivityOnCrash(16588): java.lang.RuntimeException: Unable to stop service com.osfans.trime.TrimeImeService@9c5361f: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.osfans.trime.ime.keyboard.InputFeedbackManager.releaseSoundPool()' on a null object reference E/CustomActivityOnCrash(16588): at android.app.ActivityThread.handleStopService(ActivityThread.java:4716) E/CustomActivityOnCrash(16588): at android.app.ActivityThread.-$$Nest$mhandleStopService(Unknown Source:0) E/CustomActivityOnCrash(16588): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2189) E/CustomActivityOnCrash(16588): at android.os.Handler.dispatchMessage(Handler.java:106) E/CustomActivityOnCrash(16588): at android.os.Looper.loopOnce(Looper.java:201) E/CustomActivityOnCrash(16588): at android.os.Looper.loop(Looper.java:288) E/CustomActivityOnCrash(16588): at android.app.ActivityThread.main(ActivityThread.java:7903) E/CustomActivityOnCrash(16588): at java.lang.reflect.Method.invoke(Native Method) E/CustomActivityOnCrash(16588): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) E/CustomActivityOnCrash(16588): at com.android.internal.os.ExecInit.main(ExecInit.java:49) E/CustomActivityOnCrash(16588): at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) E/CustomActivityOnCrash(16588): at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355) E/CustomActivityOnCrash(16588): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.osfans.trime.ime.keyboard.InputFeedbackManager.releaseSoundPool()' on a null object reference E/CustomActivityOnCrash(16588): at com.osfans.trime.ime.core.Trime.onFinishInputView(Trime.java:872) E/CustomActivityOnCrash(16588): at android.inputmethodservice.InputMethodService.finishViews(InputMethodService.java:2694) E/CustomActivityOnCrash(16588): at android.inputmethodservice.InputMethodService.doFinishInput(InputMethodService.java:2783) E/CustomActivityOnCrash(16588): at android.inputmethodservice.InputMethodService.onDestroy(InputMethodService.java:1621) E/CustomActivityOnCrash(16588): at com.osfans.trime.ime.lifecycle.LifecycleInputMethodService.onDestroy(LifecycleInputMethodService.kt:41) E/CustomActivityOnCrash(16588): at com.osfans.trime.ime.core.Trime.onDestroy(Trime.java:603) E/CustomActivityOnCrash(16588): at android.app.ActivityThread.handleStopService(ActivityThread.java:4696) E/CustomActivityOnCrash(16588): ... 11 more E/cutils-trace(16588): Error opening trace file: No such file or directory (2) D/OpenGLRenderer(16588): endAllActiveAnimators on 0xcc680047aa00 (RippleDrawable) with handle 0xcb45c042ea80 W/com.osfans.trime(16588): Cleared Reference was only reachable from finalizer (only reported once) I/rime.trime(16588): registering core components. I/rime.trime(16588): registering component: config_builder I/rime.trime(16588): registering component: config I/rime.trime(16588): registering component: schema I/rime.trime(16588): registering component: user_config I/rime.trime(16588): registering components from module 'dict'. I/rime.trime(16588): registering component: tabledb I/rime.trime(16588): registering component: stabledb I/rime.trime(16588): registering component: plain_userdb I/rime.trime(16588): registering component: userdb I/rime.trime(16588): registering component: corrector I/rime.trime(16588): registering component: dictionary I/rime.trime(16588): registering component: reverse_lookup_dictionary I/rime.trime(16588): registering component: user_dictionary I/rime.trime(16588): registering component: userdb_recovery_task I/rime.trime(16588): registering components from module 'gears'. I/rime.trime(16588): registering component: ascii_composer I/rime.trime(16588): registering component: chord_composer I/rime.trime(16588): registering component: express_editor I/rime.trime(16588): registering component: fluid_editor I/rime.trime(16588): registering component: fluency_editor I/rime.trime(16588): registering component: key_binder I/rime.trime(16588): registering component: navigator I/rime.trime(16588): registering component: punctuator I/rime.trime(16588): registering component: recognizer I/rime.trime(16588): registering component: selector I/rime.trime(16588): registering component: speller I/rime.trime(16588): registering component: shape_processor I/rime.trime(16588): registering component: abc_segmentor I/rime.trime(16588): registering component: affix_segmentor I/rime.trime(16588): registering component: ascii_segmentor I/rime.trime(16588): registering component: matcher I/rime.trime(16588): registering component: punct_segmentor I/rime.trime(16588): registering component: fallback_segmentor I/rime.trime(16588): registering component: echo_translator I/rime.trime(16588): registering component: punct_translator I/rime.trime(16588): registering component: table_translator I/rime.trime(16588): registering component: script_translator I/rime.trime(16588): registering component: r10n_translator I/rime.trime(16588): registering component: reverse_lookup_translator I/rime.trime(16588): registering component: schema_list_translator I/rime.trime(16588): registering component: switch_translator I/rime.trime(16588): registering component: history_translator I/rime.trime(16588): registering component: simplifier I/rime.trime(16588): registering component: uniquifier I/rime.trime(16588): registering component: charset_filter I/rime.trime(16588): registering component: cjk_minifier I/rime.trime(16588): registering component: reverse_lookup_filter I/rime.trime(16588): registering component: single_char_filter I/rime.trime(16588): registering component: shape_formatter I/rime.trime(16588): registering component: codepoint_translator I/rime.trime(16588): registering component: charset_filter W/rime.trime(16588): replacing previously registered component: charset_filter I/rime.trime(16588): registering components from module 'lua'. I/rime.trime(16588): rime.lua info: rime.lua should be either in the rime user data directory or in the rime shared data directory I/rime.trime(16588): registering component: lua_translator I/rime.trime(16588): registering component: lua_filter I/rime.trime(16588): registering component: lua_segmentor I/rime.trime(16588): registering component: lua_processor I/rime.trime(16588): registering components from module 'grammar'. I/rime.trime(16588): registering component: grammar I/rime.trime(16588): registering components from module 'levers'. I/rime.trime(16588): registering component: detect_modifications I/rime.trime(16588): registering component: installation_update I/rime.trime(16588): registering component: workspace_update I/rime.trime(16588): registering component: schema_update I/rime.trime(16588): registering component: config_file_update I/rime.trime(16588): registering component: prebuild_all_schemas I/rime.trime(16588): registering component: user_dict_upgrade I/rime.trime(16588): registering component: cleanup_trash I/rime.trime(16588): registering component: user_dict_sync I/rime.trime(16588): registering component: backup_config_files I/rime.trime(16588): registering component: clean_old_log_files I/rime.trime(16588): updating rime installation info. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/installation.yaml'. I/rime.trime(16588): installation info exists. installation id: 3ef8f357-c01e-468c-8303-3a704247ff94 I/rime.trime(16588): sync dir: /storage/emulated/0/rime/sync I/rime.trime(16588): previous distribution: trime I/rime.trime(16588): previous distribution version: v3.2.11-20230304 I/rime.trime(16588): previous Rime version: 1.8.5 I/rime.trime(16588): loading config file '/storage/emulated/0/rime/user.yaml'. I/rime.trime(16588): modifications detected. workspace needs update. I/rime.trime(16588): changes detected; starting maintenance. I/rime.trime(16588): starting work thread for 3 tasks. I/rime.trime(16588): running deployment tasks: I/rime.trime(16588): updating workspace. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/default.yaml'. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/default.yaml'. I/rime.trime(16588): updating schemas. I/rime.trime(16588): schema: luna_pinyin I/rime.trime(16588): loading config file '/storage/emulated/0/rime/luna_pinyin.schema.yaml'. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/luna_pinyin.schema.yaml'. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/luna_pinyin.schema.yaml'. I/rime.trime(16588): preparing dictionary 'luna_pinyin.extended'. I/rime.trime(16588): compiling dictionary for /storage/emulated/0/rime/build/luna_pinyin.schema.yaml I/rime.trime(16588): loading table file: /storage/emulated/0/rime/build/luna_pinyin.extended.table.bin I/rime.trime(16588): loading prism file: /storage/emulated/0/rime/build/luna_pinyin.extended.prism.bin I/rime.trime(16588): found double array image of size 1792. I/rime.trime(16588): "/storage/emulated/0/rime/luna_pinyin.extended.dict.yaml"[17 file(s)] (203481135) I/rime.trime(16588): /storage/emulated/0/rime/build/luna_pinyin.schema.yaml (2311841577) I/rime.trime(16588): loading reversedb: /storage/emulated/0/rime/build/luna_pinyin.extended.reverse.bin I/rime.trime(16588): dictionary 'luna_pinyin.extended' is ready. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/luna_pinyin.schema.yaml'. I/rime.trime(16588): finished updating schemas: 1 success, 0 failure. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/user.yaml'. I/rime.trime(16588): write: var/last_build_time I/rime.trime(16588): saving config file '/storage/emulated/0/rime/user.yaml'. I/rime.trime(16588): clean up trash. I/rime.trime(16588): 3 tasks ran: 3 success, 0 failure. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/default.yaml'. I/rime.trime(16588): starting engine. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/user.yaml'. I/rime.trime(16588): updated option: simplification I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/luna_pinyin.schema.yaml'. I/rime.trime(16588): updated option: _auto_commit I/rime.trime(16588): stabledb 'custom_phrase' does not exist. I/rime.trime(16588): loading dictionary 'luna_pinyin.extended'. I/rime.trime(16588): loading table file: /storage/emulated/0/rime/build/luna_pinyin.extended.table.bin I/rime.trime(16588): loading prism file: /storage/emulated/0/rime/build/luna_pinyin.extended.prism.bin I/rime.trime(16588): found double array image of size 1792. I/rime.trime(16588): updated option: ascii_mode I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/tongwenfeng.trime.yaml'. I/rime.trime(16588): source file changed: /storage/emulated/0/rime/tongwenfeng.trime.yaml I/rime.trime(16588): loading config file '/storage/emulated/0/rime/tongwenfeng.trime.yaml'. I/rime.trime(16588): auto-patch tongwenfeng.trime:/__patch: tongwenfeng.trime.custom:/patch? W/rime.trime(16588): nonexistent config file '/storage/emulated/0/rime/tongwenfeng.trime.custom.yaml'. I/rime.trime(16588): optional resource not loaded: tongwenfeng.trime.custom I/rime.trime(16588): resolved: Patch(tongwenfeng.trime.custom:patch <optional>) I/rime.trime(16588): resource 'tongwenfeng.trime.custom' not loaded. I/rime.trime(16588): saving config file '/storage/emulated/0/rime/build/tongwenfeng.trime.yaml'. I/rime.trime(16588): loading config file '/storage/emulated/0/rime/build/tongwenfeng.trime.yaml'. E/ThemeUtils(16588): View class com.osfans.trime.ime.text.Composition is an AppCompat widget that can only be used with a Theme.AppCompat theme (or descendant). I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 68 103 103 103 103 I/System.out(16588): 73 111 111 111 112 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 89 78 78 78 78 78 I/System.out(16588): 91 80 80 80 80 84 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 103 103 103 103 69 I/System.out(16588): 110 110 110 110 78 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 68 103 103 103 103 I/System.out(16588): 73 111 111 111 112 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 D/StrictMode(16588): StrictMode policy violation: android.os.strictmode.LeakedClosableViolation: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks. D/StrictMode(16588): at android.os.StrictMode$AndroidCloseGuardReporter.report(StrictMode.java:1986) D/StrictMode(16588): at dalvik.system.CloseGuard.warnIfOpen(CloseGuard.java:336) D/StrictMode(16588): at java.io.FileInputStream.finalize(FileInputStream.java:503) D/StrictMode(16588): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319) D/StrictMode(16588): at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306) D/StrictMode(16588): at java.lang.Daemons$Daemon.run(Daemons.java:140) D/StrictMode(16588): at java.lang.Thread.run(Thread.java:1012) D/StrictMode(16588): Caused by: java.lang.Throwable: Explicit termination method 'close' not called D/StrictMode(16588): at dalvik.system.CloseGuard.openWithCallSite(CloseGuard.java:288) D/StrictMode(16588): at dalvik.system.CloseGuard.open(CloseGuard.java:257) D/StrictMode(16588): at java.io.FileInputStream.<init>(FileInputStream.java:176) D/StrictMode(16588): at com.osfans.trime.data.schema.SchemaManager.init(SchemaManager.kt:25) D/StrictMode(16588): at com.osfans.trime.core.Rime.initSchema(Rime.java:205) D/StrictMode(16588): at com.osfans.trime.core.Rime.init(Rime.java:227) D/StrictMode(16588): at com.osfans.trime.core.Rime.<init>(Rime.java:199) D/StrictMode(16588): at com.osfans.trime.core.Rime.get(Rime.java:361) D/StrictMode(16588): at com.osfans.trime.data.theme.Config.<init>(Config.java:78) D/StrictMode(16588): at com.osfans.trime.data.theme.Config.get(Config.java:56) D/StrictMode(16588): at com.osfans.trime.ime.symbol.LiquidKeyboard.<init>(LiquidKeyboard.kt:30) D/StrictMode(16588): at com.osfans.trime.ime.core.Trime.onCreate(Trime.java:367) D/StrictMode(16588): at android.app.ActivityThread.handleCreateService(ActivityThread.java:4496) D/StrictMode(16588): at android.app.ActivityThread.-$$Nest$mhandleCreateService(Unknown Source:0) D/StrictMode(16588): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2165) D/StrictMode(16588): at android.os.Handler.dispatchMessage(Handler.java:106) D/StrictMode(16588): at android.os.Looper.loopOnce(Looper.java:201) D/StrictMode(16588): at android.os.Looper.loop(Looper.java:288) D/StrictMode(16588): at android.app.ActivityThread.main(ActivityThread.java:7903) D/StrictMode(16588): at java.lang.reflect.Method.invoke(Native Method) D/StrictMode(16588): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) D/StrictMode(16588): at com.android.internal.os.ExecInit.main(ExecInit.java:49) D/StrictMode(16588): at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) D/StrictMode(16588): at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355) I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 89 78 78 78 78 78 I/System.out(16588): 91 80 80 80 80 84 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 103 103 103 103 69 I/System.out(16588): 110 110 110 110 78 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 68 103 103 103 103 I/System.out(16588): 73 111 111 111 112 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 89 78 78 78 78 78 I/System.out(16588): 91 80 80 80 80 84 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 68 78 78 78 78 78 I/System.out(16588): 73 84 84 84 84 86 I/System.out(16588): 126 126 126 126 I/System.out(16588): 135 135 135 136 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 63 63 63 63 63 63 63 I/System.out(16588): 67 67 67 67 67 67 70 I/System.out(16588): 103 103 103 103 69 I/System.out(16588): 110 110 110 110 78 I/rime.trime(16588): updated option: soft_cursor I/rime.trime(16588): updated option: _horizontal I/rime.trime(16588): custom_phrase made a futile translation. I/rime.trime(16588): initializing opencc: /storage/emulated/0/rime/opencc/t2s.json E/rime.trime(16588): opencc config not found: /storage/emulated/0/rime/opencc/t2s.json I/rime.trime(16588): custom_phrase made a futile translation. I/rime.trime(16588): custom_phrase made a futile translation. I/rime.trime(16588): custom_phrase made a futile translation. I/rime.trime(16588): custom_phrase made a futile translation. W/TextToSpeech(16588): stop failed: not bound to TTS engine D/AndroidRuntime(16588): Shutting down VM --------- beginning of crash E/AndroidRuntime(16588): FATAL EXCEPTION: main E/AndroidRuntime(16588): Process: com.osfans.trime, PID: 16588 E/AndroidRuntime(16588): java.lang.RuntimeException: Unable to stop service com.osfans.trime.TrimeImeService@1adcc60: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.osfans.trime.ime.keyboard.InputFeedbackManager.releaseSoundPool()' on a null object reference E/AndroidRuntime(16588): at android.app.ActivityThread.handleStopService(ActivityThread.java:4716) E/AndroidRuntime(16588): at android.app.ActivityThread.-$$Nest$mhandleStopService(Unknown Source:0) E/AndroidRuntime(16588): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2189) E/AndroidRuntime(16588): at android.os.Handler.dispatchMessage(Handler.java:106) E/AndroidRuntime(16588): at android.os.Looper.loopOnce(Looper.java:201) E/AndroidRuntime(16588): at android.os.Looper.loop(Looper.java:288) E/AndroidRuntime(16588): at android.app.ActivityThread.main(ActivityThread.java:7903) E/AndroidRuntime(16588): at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime(16588): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) E/AndroidRuntime(16588): at com.android.internal.os.ExecInit.main(ExecInit.java:49) E/AndroidRuntime(16588): at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) E/AndroidRuntime(16588): at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355) E/AndroidRuntime(16588): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.osfans.trime.ime.keyboard.InputFeedbackManager.releaseSoundPool()' on a null object reference E/AndroidRuntime(16588): at com.osfans.trime.ime.core.Trime.onFinishInputView(Trime.java:872) E/AndroidRuntime(16588): at android.inputmethodservice.InputMethodService.finishViews(InputMethodService.java:2694) E/AndroidRuntime(16588): at android.inputmethodservice.InputMethodService.doFinishInput(InputMethodService.java:2783) E/AndroidRuntime(16588): at android.inputmethodservice.InputMethodService.onDestroy(InputMethodService.java:1621) E/AndroidRuntime(16588): at com.osfans.trime.ime.lifecycle.LifecycleInputMethodService.onDestroy(LifecycleInputMethodService.kt:41) E/AndroidRuntime(16588): at com.osfans.trime.ime.core.Trime.onDestroy(Trime.java:603) E/AndroidRuntime(16588): at android.app.ActivityThread.handleStopService(ActivityThread.java:4696) E/AndroidRuntime(16588): ... 11 more E/CustomActivityOnCrash(16588): App has crashed, executing CustomActivityOnCrash's UncaughtExceptionHandler E/CustomActivityOnCrash(16588): java.lang.RuntimeException: Unable to stop service com.osfans.trime.TrimeImeService@1adcc60: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.osfans.trime.ime.keyboard.InputFeedbackManager.releaseSoundPool()' on a null object reference E/CustomActivityOnCrash(16588): at android.app.ActivityThread.handleStopService(ActivityThread.java:4716) E/CustomActivityOnCrash(16588): at android.app.ActivityThread.-$$Nest$mhandleStopService(Unknown Source:0) E/CustomActivityOnCrash(16588): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2189) E/CustomActivityOnCrash(16588): at android.os.Handler.dispatchMessage(Handler.java:106) E/CustomActivityOnCrash(16588): at android.os.Looper.loopOnce(Looper.java:201) E/CustomActivityOnCrash(16588): at android.os.Looper.loop(Looper.java:288) E/CustomActivityOnCrash(16588): at android.app.ActivityThread.main(ActivityThread.java:7903) E/CustomActivityOnCrash(16588): at java.lang.reflect.Method.invoke(Native Method) E/CustomActivityOnCrash(16588): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) E/CustomActivityOnCrash(16588): at com.android.internal.os.ExecInit.main(ExecInit.java:49) E/CustomActivityOnCrash(16588): at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) E/CustomActivityOnCrash(16588): at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355) E/CustomActivityOnCrash(16588): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.osfans.trime.ime.keyboard.InputFeedbackManager.releaseSoundPool()' on a null object reference E/CustomActivityOnCrash(16588): at com.osfans.trime.ime.core.Trime.onFinishInputView(Trime.java:872) E/CustomActivityOnCrash(16588): at android.inputmethodservice.InputMethodService.finishViews(InputMethodService.java:2694) E/CustomActivityOnCrash(16588): at android.inputmethodservice.InputMethodService.doFinishInput(InputMethodService.java:2783) E/CustomActivityOnCrash(16588): at android.inputmethodservice.InputMethodService.onDestroy(InputMethodService.java:1621) E/CustomActivityOnCrash(16588): at com.osfans.trime.ime.lifecycle.LifecycleInputMethodService.onDestroy(LifecycleInputMethodService.kt:41) E/CustomActivityOnCrash(16588): at com.osfans.trime.ime.core.Trime.onDestroy(Trime.java:603) E/CustomActivityOnCrash(16588): at android.app.ActivityThread.handleStopService(ActivityThread.java:4696) E/CustomActivityOnCrash(16588): ... 11 more E/CustomActivityOnCrash(16588): Failed when resolving the restart activity class via getLaunchIntentForPackage, stack trace follows! E/CustomActivityOnCrash(16588): java.lang.ClassNotFoundException: com.osfans.trime.PrefLauncherAlias E/CustomActivityOnCrash(16588): at java.lang.Class.classForName(Native Method) E/CustomActivityOnCrash(16588): at java.lang.Class.forName(Class.java:454) E/CustomActivityOnCrash(16588): at java.lang.Class.forName(Class.java:379) E/CustomActivityOnCrash(16588): at cat.ereza.customactivityoncrash.CustomActivityOnCrash.getLauncherActivity(CustomActivityOnCrash.java:648) E/CustomActivityOnCrash(16588): at cat.ereza.customactivityoncrash.CustomActivityOnCrash.guessRestartActivityClass(CustomActivityOnCrash.java:602) E/CustomActivityOnCrash(16588): at cat.ereza.customactivityoncrash.CustomActivityOnCrash.lambda$install$0(CustomActivityOnCrash.java:177) E/CustomActivityOnCrash(16588): at cat.ereza.customactivityoncrash.CustomActivityOnCrash$$ExternalSyntheticLambda0.uncaughtException(Unknown Source:2) E/CustomActivityOnCrash(16588): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1073) E/CustomActivityOnCrash(16588): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068) E/CustomActivityOnCrash(16588): at java.lang.Thread.dispatchUncaughtException(Thread.java:2306) E/CustomActivityOnCrash(16588): Caused by: java.lang.ClassNotFoundException: com.osfans.trime.PrefLauncherAlias E/CustomActivityOnCrash(16588): ... 10 more I/Process (16588): Sending signal. PID: 16588 SIG: 9
Smartphone:
请看新版本有无此问题。每夜版:https://github.com/osfans/trime/releases/tag/nightly
Now it crashes sometimes when I switch to trime
com.osfans.trime-2024-01-25T16_01_46Z.txt
@irunonayran How about the latest nightly?
Describe the bug When switching to another keyboard, trime crashes.
To Reproduce Steps to reproduce the bug:
Expected behavior Should not crash on switch.
Log
Smartphone: