kiwix / kiwix-android

Kiwix for Android
https://android.kiwix.org
GNU General Public License v3.0
880 stars 444 forks source link

Version 3.8.1 crashes when opening zim files #3600

Closed Popolechien closed 4 months ago

Popolechien commented 10 months ago

We got multiple reports from users that trying to open a zim file would crash their app. Here is one that could provide a bit more info:

Motorola G6-play smartphone with Android 9 (ok in that case that could be an android thing, but I recall seeing reports with more recent versions; I'll try and confirm).

Here is the debugging output of Kiwix:

"          Current Zim File:
        null
        All Zim Files in DB:
        Vikilibroj:
Articles: [879]
Creator: [Wikibooks], PhET Interactive Simulations:
Articles: [97]
Creator: [University of Colorado], Wikipedia:
Articles: [2854052]
Creator: [Wikipedia], Wikipedia:
Articles: [2854080]
Creator: [Wikipedia], Wikivoyage:
Articles: [20162]
Creator: [Wikivoyage]

  Current Locale:
de_DE

  BluetoothClass.Device Details:
Device:[aljeter]
Model:[moto g(6) play]
Manufacturer:[motorola]
Time:[1586020549000]
Android Version:[9]
App Version:[3.8.1 7230801]

      Mount Points
    MountInfo(device=rootfs, mountPoint=/, fileSystem=rootfs)
, MountInfo(device=tmpfs, mountPoint=/dev, fileSystem=tmpfs)
, MountInfo(device=devpts, mountPoint=/dev/pts, fileSystem=devpts)
, MountInfo(device=none, mountPoint=/dev/cpuctl, fileSystem=cgroup)
, MountInfo(device=adb, mountPoint=/dev/usb-ffs/adb, fileSystem=functionfs)
, MountInfo(device=proc, mountPoint=/proc, fileSystem=proc)
, MountInfo(device=sysfs, mountPoint=/sys, fileSystem=sysfs)
, MountInfo(device=selinuxfs, mountPoint=/sys/fs/selinux, fileSystem=selinuxfs)
, MountInfo(device=debugfs, mountPoint=/sys/kernel/debug, fileSystem=debugfs)
, MountInfo(device=tracefs, mountPoint=/sys/kernel/debug/tracing, fileSystem=tracefs)
, MountInfo(device=pstore, mountPoint=/sys/fs/pstore, fileSystem=pstore)
, MountInfo(device=tmpfs, mountPoint=/mnt, fileSystem=tmpfs)
, MountInfo(device=/dev/block/bootdevice/by-name/persist, mountPoint=/mnt/vendor/persist, fileSystem=ext4)
, MountInfo(device=/dev/block/dm-3, mountPoint=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445, fileSystem=f2fs)
, MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/mnt/runtime/default/emulated, fileSystem=sdcardfs)
, MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/mnt/runtime/read/emulated, fileSystem=sdcardfs)
, MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/mnt/runtime/write/emulated, fileSystem=sdcardfs)
, MountInfo(device=/dev/block/dm-0, mountPoint=/system, fileSystem=ext4)
, MountInfo(device=/dev/block/dm-1, mountPoint=/vendor, fileSystem=ext4)
, MountInfo(device=/dev/block/bootdevice/by-name/modem, mountPoint=/vendor/firmware_mnt, fileSystem=ext4)
, MountInfo(device=/dev/block/bootdevice/by-name/dsp, mountPoint=/vendor/dsp, fileSystem=ext4)
, MountInfo(device=/dev/block/bootdevice/by-name/fsg, mountPoint=/vendor/fsg, fileSystem=ext4)
, MountInfo(device=none, mountPoint=/acct, fileSystem=cgroup)
, MountInfo(device=none, mountPoint=/config, fileSystem=configfs)
, MountInfo(device=/dev/block/bootdevice/by-name/cache, mountPoint=/cache, fileSystem=ext4)
, MountInfo(device=/dev/block/bootdevice/by-name/persist, mountPoint=/persist, fileSystem=ext4)
, MountInfo(device=/dev/block/bootdevice/by-name/oem, mountPoint=/oem, fileSystem=ext4)
, MountInfo(device=/dev/block/dm-2, mountPoint=/data, fileSystem=f2fs)
, MountInfo(device=tmpfs, mountPoint=/storage, fileSystem=tmpfs)
, MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/storage/emulated, fileSystem=sdcardfs)
, MountInfo(device=tmpfs, mountPoint=/storage/self, fileSystem=tmpfs)

    External Directories
    /storage/emulated/0/Android/data/org.kiwix.kiwixmobile/files "
stefan-inf commented 10 months ago

[I'm the guy with the Moto G6-play with Android 9] I downgraded to Kiwix 3.7.1. Crashes immediately after starting... I suppose that an update of Android System WebView (or Carrier Services) caused the problems with all versions of Kiwix.

Is there a dependency of Kiwix to WebView (or Carrier Services)? Is it possible to say which version of WebView (and Carrier Services) would be ok for Kiwix 3.7.1?

kelson42 commented 10 months ago

@stefan-inf Thank you for your bug report. Does it work better with the nightly or with the version 3.9.0 (to be released later today)?

stefan-inf commented 10 months ago

Nightly and 3.9.0 crash as well, directly when started, as does the 3.8.1, all with the actual WeView and Carrier Services.

kelson42 commented 10 months ago

@stefan-inf Thank you for your quick feedback, we will investigate in priority your bug.

MohitMaliFtechiz commented 10 months ago

@stefan-inf Thanks for providing the information. Can you please provide some additional information?

I downgraded to Kiwix 3.7.1. Crashes immediately after starting...

Is it only crashing when you are trying to open the ZIM file?

Is there a dependency of Kiwix to WebView (or Carrier Services)?

Yes, kiwix uses the webview to load the content.

Is it possible to say which version of WebView (and Carrier Services) would be ok for Kiwix 3.7.1?

Which version exactly you are using right now?

Can you please upgrade it to the latest one? The current stable version of Android System WebView is 120.0.6099.43.

stefan-inf commented 10 months ago

Now, every version is crashing immediately after starting. Before, the 3.8.2 crashed only when opening a ZIM file, now when started. I have the 3.9.0 with WebView 120.0.6099.43.

stefan-inf commented 10 months ago

Sorry, pls read 3.8.1 instead of 3.8.2.

MohitMaliFtechiz commented 10 months ago

@stefan-inf Thanks for testing. We need the crash logs to debug the problem since I am not able to reproduce it on my device.

Can you please install this APK https://drive.google.com/file/d/11JYfBfYf3H4dIUibZ0tuMlT_vtOEm0xn/view?usp=sharing, it will prompt for reporting the issue with logs after the crash, let all checkboxes enable for crash details, click on the SEND DETAILS button, and send it on futuretechnoworld.mohit@gmail.com via gmail. It would be very helpful for debugging the actual problem.

Screenshot from 2023-12-20 17-24-25

stefan-inf commented 10 months ago

I installed the APK and started it, but it crashed before prompting to report. However, it took longer (3sec) before it crashed...

MohitMaliFtechiz commented 10 months ago

@stefan-inf If this is the case it is the WebView issue, not the code-related issue, it seems your device's webView using the same data directory for more than one process at once which is not supported.

Can you please try with this APK https://drive.google.com/file/d/1YqzNlVamldSZQmVEsDvCoHmiusq0tu9G/view?usp=sharing.

stefan-inf commented 10 months ago

I installed and started this APK, but no changes... Is there another way to solve the WebView problem? Maybe by including WeView in the Kiwix executable?

MohitMaliFtechiz commented 10 months ago

@stefan-inf I set the data directory with Kiwix's current process in my last APK, However, your problem seems different with webview without the logs it's hard to tell what is going on with your device. We can use the Firebase Crash but it also requires the app to run without crash at least for 5-10 seconds, for sending the crash report https://firebase.google.com/docs/crashlytics/test-implementation?platform=android&hl=en&authuser=0&_gl=1*1jez4ry*_ga*MTEyMDIzNTM3MS4xNzAzMTQxMTY1*_ga_CW55HF8NVT*MTcwMzE0MTE2NS4xLjEuMTcwMzE0NDg2MC41Ni4wLjA , in our case your app does not run so firebase will not work here.

If you have time, I can run the application on your machine and see what's going on in your device, this is the only way I see now.

stefan-inf commented 10 months ago

How does this work that you run the app on my machne?

MohitMaliFtechiz commented 10 months ago

How does this work that you run the app on my machine?

You just need to install Android Studio on your machine, and I will connect to your system and run the application on the device via Android Studio. this way I can see what is going on your device.

stefan-inf commented 10 months ago

How to install Android Studio? It's neither in PlayStore nor in Aptoide...

stefan-inf commented 10 months ago

BTW, the app "Wikipedia Medizin (offline)" (Playstore, V2023-07) does not crash and works fine...

MohitMaliFtechiz commented 10 months ago

@stefan-inf here are the full steps on how you can install and run the android studio https://developer.android.com/codelabs/basic-android-kotlin-compose-install-android-studio#0

stefan-inf commented 10 months ago

What is the difference between "Wikipedia Medizin (offline)" (which works fine on my smartphone) and Kiwix? Maybe this could help to debug Kiwix...

stefan-inf commented 10 months ago

The indicated link is for installing Android Studio on PC OSs. Does not help for Smartphones.

stefan-inf commented 10 months ago

BTW. today I installed the newest Playstore version of Kiwix and Android Webview. Now, Kiwix does (again) not crash immediately, but after selecting the zim file.

MohitMaliFtechiz commented 10 months ago

@stefan-inf The behavior you are describing is different with the same code, I provided you the APK for the first time that is the same as you downloading the latest Play Store version, but that time you mentioned it was crashing immediately and now it is crashing while you are selecting the ZIM file.

What is the difference between "Wikipedia Medizin (offline)" (which works fine on my smartphone) and Kiwix? Maybe this could help to debug Kiwix...

There are lots of differences between these apps, "Wikipedia Medizin (offline)" is only for one ZIM file and it disables most of the features that we are using in the "Kiwix" app e.g. there is no library(from where you are selecting the ZIM file) and download screen, and we are doing many things in those screens.

The indicated link is for installing Android Studio on PC OSs. Does not help for Smartphones.

Yes, this link is for downloading the Android Studio because there is no other way to get the debug logs of your device(Since without logs we don't know what is happening on your device), I have also shared the second link on how you can run the application on your smartphone via the Android Studio, it will help us to debug the actual problem because it will show the exact error logs in the logcat for which reason the application is crashing on your device. I am here to guide you, on how can you do it, if you have time to do it then it would be very helpful for us.

stefan-inf commented 10 months ago

Yesterday, there was a crash report produced by Kiwix. Maybe this can help you:

" Hi Kiwix Developers! The Android app crashed, here are some details to help fix it:

  Exception Details:
java.lang.RuntimeException: Unable to destroy activity {org.kiwix.kiwixmobile/org.kiwix.kiwixmobile.main.KiwixMainActivity}: java.lang.IllegalStateException: Not allowed to start service Intent { act=ACTION_STOP_TTS cmp=org.kiwix.kiwixmobile/.core.read_aloud.ReadAloudService (has extras) }: app is in background uid UidRecord{c3cc13b u0a281 CRE  bg:+10h31m49s272ms idle procs:1 seq(0,0,0)}

at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4695) at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4713) at android.app.servertransaction.DestroyActivityItem.execute(DestroyActivityItem.java:39) at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1977) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6923) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870) Caused by: java.lang.IllegalStateException: Not allowed to start service Intent { act=ACTION_STOP_TTS cmp=org.kiwix.kiwixmobile/.core.read_aloud.ReadAloudService (has extras) }: app is in background uid UidRecord{c3cc13b u0a281 CRE bg:+10h31m49s272ms idle procs:1 seq(0,0,0)} at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1592) at android.app.ContextImpl.startService(ContextImpl.java:1547) at android.content.ContextWrapper.startService(ContextWrapper.java:664) at android.content.ContextWrapper.startService(ContextWrapper.java:664) at org.kiwix.kiwixmobile.core.main.CoreReaderFragment.setActionAndStartTTSService(CoreReaderFragment.kt:24) at org.kiwix.kiwixmobile.core.main.CoreReaderFragment.onDestroyView(CoreReaderFragment.kt:202) at androidx.fragment.app.FragmentStateManager.destroyFragmentView(FragmentStateManager.java:79) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:285) at androidx.fragment.app.SpecialEffectsController$FragmentStateManagerOperation.complete(SpecialEffectsController.java:6) at androidx.fragment.app.SpecialEffectsController$Operation.cancel(SpecialEffectsController.java:17) at androidx.fragment.app.SpecialEffectsController.forceCompleteAllOperations(SpecialEffectsController.java:231) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:57) at androidx.fragment.app.FragmentStateManager.destroyFragmentView(FragmentStateManager.java:43) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:285) at androidx.fragment.app.SpecialEffectsController$FragmentStateManagerOperation.complete(SpecialEffectsController.java:6) at androidx.fragment.app.SpecialEffectsController$Operation.cancel(SpecialEffectsController.java:17) at androidx.fragment.app.SpecialEffectsController.forceCompleteAllOperations(SpecialEffectsController.java:231) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:57) at androidx.fragment.app.FragmentManager.dispatchDestroy(FragmentManager.java:135) at androidx.fragment.app.FragmentActivity.onDestroy(FragmentActivity.java:10) at androidx.appcompat.app.AppCompatActivity.onDestroy(AppCompatActivity.java:1) at org.kiwix.kiwixmobile.core.base.BaseActivity.onDestroy(BaseActivity.kt:1) at android.app.Activity.performDestroy(Activity.java:7407) at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1328) at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4680) ... 11 more

      Current Zim File:
    null
    All Zim Files in DB:
    Vikilibroj:

Articles: [879] Creator: [Wikibooks], Wikipedia: Articles: [2854052] Creator: [Wikipedia], Wikipedia: Articles: [2854080] Creator: [Wikipedia], Wikivoyage: Articles: [20162] Creator: [Wikivoyage], PhET Interactive Simulations: Articles: [98] Creator: [University of Colorado]

Current Locale: de_DE

BluetoothClass.Device Details: Device:[aljeter] Model:[moto g(6) play] Manufacturer:[motorola] Time:[1586020549000] Android Version:[9] App Version:[3.9.1 7230901]

  Mount Points
MountInfo(device=rootfs, mountPoint=/, fileSystem=rootfs)

, MountInfo(device=tmpfs, mountPoint=/dev, fileSystem=tmpfs) , MountInfo(device=devpts, mountPoint=/dev/pts, fileSystem=devpts) , MountInfo(device=none, mountPoint=/dev/cpuctl, fileSystem=cgroup) , MountInfo(device=adb, mountPoint=/dev/usb-ffs/adb, fileSystem=functionfs) , MountInfo(device=proc, mountPoint=/proc, fileSystem=proc) , MountInfo(device=sysfs, mountPoint=/sys, fileSystem=sysfs) , MountInfo(device=selinuxfs, mountPoint=/sys/fs/selinux, fileSystem=selinuxfs) , MountInfo(device=debugfs, mountPoint=/sys/kernel/debug, fileSystem=debugfs) , MountInfo(device=tracefs, mountPoint=/sys/kernel/debug/tracing, fileSystem=tracefs) , MountInfo(device=pstore, mountPoint=/sys/fs/pstore, fileSystem=pstore) , MountInfo(device=tmpfs, mountPoint=/mnt, fileSystem=tmpfs) , MountInfo(device=/dev/block/bootdevice/by-name/persist, mountPoint=/mnt/vendor/persist, fileSystem=ext4) , MountInfo(device=/dev/block/dm-3, mountPoint=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445, fileSystem=f2fs) , MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/mnt/runtime/default/emulated, fileSystem=sdcardfs) , MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/mnt/runtime/read/emulated, fileSystem=sdcardfs) , MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/mnt/runtime/write/emulated, fileSystem=sdcardfs) , MountInfo(device=/dev/block/dm-0, mountPoint=/system, fileSystem=ext4) , MountInfo(device=/dev/block/dm-1, mountPoint=/vendor, fileSystem=ext4) , MountInfo(device=/dev/block/bootdevice/by-name/modem, mountPoint=/vendor/firmware_mnt, fileSystem=ext4) , MountInfo(device=/dev/block/bootdevice/by-name/dsp, mountPoint=/vendor/dsp, fileSystem=ext4) , MountInfo(device=/dev/block/bootdevice/by-name/fsg, mountPoint=/vendor/fsg, fileSystem=ext4) , MountInfo(device=none, mountPoint=/acct, fileSystem=cgroup) , MountInfo(device=none, mountPoint=/config, fileSystem=configfs) , MountInfo(device=/dev/block/bootdevice/by-name/cache, mountPoint=/cache, fileSystem=ext4) , MountInfo(device=/dev/block/bootdevice/by-name/persist, mountPoint=/persist, fileSystem=ext4) , MountInfo(device=/dev/block/bootdevice/by-name/oem, mountPoint=/oem, fileSystem=ext4) , MountInfo(device=/dev/block/dm-2, mountPoint=/data, fileSystem=f2fs) , MountInfo(device=tmpfs, mountPoint=/storage, fileSystem=tmpfs) , MountInfo(device=/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/media, mountPoint=/storage/emulated, fileSystem=sdcardfs) , MountInfo(device=tmpfs, mountPoint=/storage/self, fileSystem=tmpfs)

External Directories
/storage/emulated/0/Android/data/org.kiwix.kiwixmobile/files "
stefan-inf commented 10 months ago

As to Android Studio: Ok, now I understand. I've to install the IDE on my PC and to connect the smartphone with the PC by USB...

MohitMaliFtechiz commented 10 months ago

As to Android Studio: Ok, now I understand. I've to install the IDE on my PC and to connect the smartphone with the PC by USB...

@stefan-inf Yes, then you can run the application via Android Studio.

Exception Details: java.lang.RuntimeException: Unable to destroy activity {org.kiwix.kiwixmobile/org.kiwix.kiwixmobile.main.KiwixMainActivity}: java.lang.IllegalStateException: Not allowed to start service Intent { act=ACTION_STOP_TTS cmp=org.kiwix.kiwixmobile/.core.read_aloud.ReadAloudService (has extras) }: app is in background uid UidRecord{c3cc13b u0a281 CRE bg:+10h31m49s272ms idle procs:1 seq(0,0,0)}

Thanks, it would be helpful.

MohitMaliFtechiz commented 9 months ago

@stefan-inf Sorry to be late on this, thanks for providing the logs I have placed a fix for the given logs. Apart from this, we fixed one more issue that is occurring below Android 10 and you are facing this issue on Android 9 so it would be better now to test this APK.

please try this APK and let us know if this fixes your problem https://drive.google.com/file/d/11JYfBfYf3H4dIUibZ0tuMlT_vtOEm0xn/view?usp=sharing

stefan-inf commented 9 months ago

Thanks for the new version.

Unfortunately, it crashes again immediately after starting (the last version from Play-Store crashed only after selecting the zim-file).

MohitMaliFtechiz commented 9 months ago

@stefan-inf Thanks for confirming. It is not the issue with stopping the service according to the logs you have provided it is something else. For the logs that you have provided, I have placed a fix in https://github.com/kiwix/kiwix-android/pull/3678. However, it is not that issue as you are mentioning that the application is still crashing. so the error logs are showing after some other crash(which is main crash), because our application is based on a single activity. Hence, it is not possible that activity is not present to stop the service.

As to Android Studio: Ok, now I understand. I've to install the IDE on my PC and to connect the smartphone with the PC by USB...

Have you tried to run the application with Android Studio on your device? without any proper error logs it is not worthy to go forward here since we are not able to reproduce it. So can you please try to run the application on your device with Android Studio and provide the crash logs so it would be easy to identify the problem, and place a fix for it.

stefan-inf commented 9 months ago

I've installed Android Studio. Here is the Logcat:

2024-01-28 15:56:07.492  1931-2549  ActivityManager         system_server                        I  START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=org.kiwix.kiwixmobile/.main.KiwixMainActivity bnds=[10,823][150,978] (has extras)} from uid 10154
2024-01-28 15:56:07.505   927-957   ANDR-PERF-RESOURCEQS    ven...qti.hardware.perf@1.0-service  E  Failed to apply optimization [4, 0]
2024-01-28 15:56:07.523  3050-26097 AnalyticsDatabaseHelper is.shortcut                          D  Inserting analytics logs into the database.
2024-01-28 15:56:07.558  3050-3050  NotificationController  is.shortcut                          I  paused
2024-01-28 15:56:07.563  3050-26099 AnalyticsDatabaseHelper is.shortcut                          D  Read 13 records from analytics logs table.
2024-01-28 15:56:07.575 25435-25435 BoundBrokerSvc          com.google.android.gms               D  onBind: Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms }
2024-01-28 15:56:07.575 25435-25435 BoundBrokerSvc          com.google.android.gms               D  Loading bound service for intent: Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms }
2024-01-28 15:56:07.579  1931-1978  ActivityManager         system_server                        I  Start proc 26101:org.kiwix.kiwixmobile/u0a282 for activity org.kiwix.kiwixmobile/.main.KiwixMainActivity
2024-01-28 15:56:07.586 26101-26101 wix.kiwixmobil          pid-26101                            I  Late-enabling -Xcheck:jni
2024-01-28 15:56:07.652 13664-24730 NetworkScheduler        com.google.android.gms.persistent    W  Error inserting period=3043000 preferred_charging_state=1 preferred_network_type=1 target_class=com.google.android.gms.measurement.PackageMeasurementTaskService required_network_type=0 runtime=1706453767646 required_idleness_state=0 source=16 service_kind=0 target_package=com.google.android.gms persistence_level=1 source_version=235014000 last_runtime=0 user_id=0 job_id=-1 requires_charging=0 tag=Measurement.PackageMeasurementTaskService.UPLOAD_TASK_TAG flex_time=1521000 task_type=0 retry_strategy={"maximum_backoff_seconds":{"3600":0},"initial_backoff_seconds":{"30":0},"retry_policy":{"0":0}} [CONTEXT service_id=218 ]
                                                                                                    android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: pending_ops.tag, pending_ops.target_class, pending_ops.target_package, pending_ops.user_id (code 2067 SQLITE_CONSTRAINT_UNIQUE)
                                                                                                        at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method)
                                                                                                        at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:796)
                                                                                                        at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:788)
                                                                                                        at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86)
                                                                                                        at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1564)
                                                                                                        at android.database.sqlite.SQLiteDatabase.insertOrThrow(SQLiteDatabase.java:1459)
                                                                                                        at cesi.d(:com.google.android.gms@235014018@23.50.14 (100300-592568214):719)
                                                                                                        at ceqm.n(:com.google.android.gms@235014018@23.50.14 (100300-592568214):29)
                                                                                                        at ceqm.u(:com.google.android.gms@235014018@23.50.14 (100300-592568214):362)
                                                                                                        at ceqm.h(:com.google.android.gms@235014018@23.50.14 (100300-592568214):51)
                                                                                                        at celk.run(:com.google.android.gms@235014018@23.50.14 (100300-592568214):72)
                                                                                                        at almc.c(:com.google.android.gms@235014018@23.50.14 (100300-592568214):50)
                                                                                                        at almc.run(:com.google.android.gms@235014018@23.50.14 (100300-592568214):76)
                                                                                                        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
                                                                                                        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
                                                                                                        at alrs.run(:com.google.android.gms@235014018@23.50.14 (100300-592568214):8)
                                                                                                        at java.lang.Thread.run(Thread.java:764)
2024-01-28 15:56:07.863 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  JIT profile information will not be recorded: profile file does not exits.
2024-01-28 15:56:07.899 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/cache: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:07.900 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to update user.inode_cache: stat failed: EACCES (Permission denied)
2024-01-28 15:56:07.901 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user_de/0/org.kiwix.kiwixmobile/code_cache: mkdir failed: ENOENT (No such file or directory)
2024-01-28 15:56:07.901 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to update user.inode_code_cache: stat failed: ENOENT (No such file or directory)
2024-01-28 15:56:07.917 26101-26101 MultiDex                org.kiwix.kiwixmobile                I  VM with version 2.1.0 has multidex support
2024-01-28 15:56:07.917 26101-26101 MultiDex                org.kiwix.kiwixmobile                I  Installing application
2024-01-28 15:56:07.917 26101-26101 MultiDex                org.kiwix.kiwixmobile                I  VM has multidex support, MultiDex support library is disabled.
2024-01-28 15:56:07.930 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:07.932 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/cache: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:07.932 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to update user.inode_cache: stat failed: EACCES (Permission denied)
2024-01-28 15:56:07.949 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:07.962 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Landroid/view/WindowManagerGlobal;->getInstance()Landroid/view/WindowManagerGlobal; (light greylist, reflection)
2024-01-28 15:56:07.962 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden field Landroid/view/WindowManagerGlobal;->mViews:Ljava/util/ArrayList; (light greylist, reflection)
2024-01-28 15:56:07.967 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden field Landroid/view/inputmethod/InputMethodManager;->mCurRootView:Landroid/view/View; (light greylist, reflection)
2024-01-28 15:56:07.998 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden field Landroid/app/ActivityThread;->mH:Landroid/app/ActivityThread$H; (light greylist, reflection)
2024-01-28 15:56:08.000 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Landroid/app/ActivityThread;->currentActivityThread()Landroid/app/ActivityThread; (light greylist, reflection)
2024-01-28 15:56:08.000 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden field Landroid/os/Handler;->mCallback:Landroid/os/Handler$Callback; (light greylist, reflection)
2024-01-28 15:56:08.000 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden field Landroid/util/Singleton;->mInstance:Ljava/lang/Object; (light greylist, reflection)
2024-01-28 15:56:08.001 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Landroid/util/Singleton;->get()Ljava/lang/Object; (light greylist, reflection)
2024-01-28 15:56:08.001 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden field Landroid/app/ActivityManager;->IActivityManagerSingleton:Landroid/util/Singleton; (light greylist, reflection)
2024-01-28 15:56:08.113  3050-26099 HttpRequestUtil         is.shortcut                          W  Could not POST to https://events.evie.com/events
2024-01-28 15:56:08.113  3050-26099 AnalyticsDatabaseHelper is.shortcut                          D  Deleting record from database. ID: 108153
2024-01-28 15:56:08.130 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Lcom/android/org/conscrypt/OpenSSLSocketImpl;->setUseSessionTickets(Z)V (light greylist, reflection)
2024-01-28 15:56:08.130 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Lcom/android/org/conscrypt/OpenSSLSocketImpl;->setHostname(Ljava/lang/String;)V (light greylist, reflection)
2024-01-28 15:56:08.130 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Lcom/android/org/conscrypt/OpenSSLSocketImpl;->getAlpnSelectedProtocol()[B (light greylist, reflection)
2024-01-28 15:56:08.130  3050-26099 AnalyticsDatabaseHelper is.shortcut                          D  Deleting record from database. ID: 108154
2024-01-28 15:56:08.130 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Lcom/android/org/conscrypt/OpenSSLSocketImpl;->setAlpnProtocols([B)V (light greylist, reflection)
2024-01-28 15:56:08.151 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Ldalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; (light greylist, reflection)
2024-01-28 15:56:08.151 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Ldalvik/system/CloseGuard;->open(Ljava/lang/String;)V (light greylist, reflection)
2024-01-28 15:56:08.152 26101-26101 wix.kiwixmobil          org.kiwix.kiwixmobile                W  Accessing hidden method Ldalvik/system/CloseGuard;->warnIfOpen()V (light greylist, reflection)
2024-01-28 15:56:08.153 26101-26101 NetworkSecurityConfig   org.kiwix.kiwixmobile                D  No Network Security Config specified, using platform default
2024-01-28 15:56:08.172 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:08.180 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:08.187 26101-26101 ContextImpl             org.kiwix.kiwixmobile                W  Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/databases: mkdir failed: EACCES (Permission denied)
2024-01-28 15:56:08.190 26101-26101 SQLiteLog               org.kiwix.kiwixmobile                E  (14) cannot open file at line 36940 of [68b898381a]
2024-01-28 15:56:08.190 26101-26101 SQLiteLog               org.kiwix.kiwixmobile                E  (14) os_unix.c:36940: (13) lstat(/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/databases/LibGlobalFetchLib.db) - 
2024-01-28 15:56:08.200 26101-26101 SQLiteDatabase          org.kiwix.kiwixmobile                E  Failed to open database '/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/databases/LibGlobalFetchLib.db'.
                                                                                                    android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database
                                                                                                        at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
                                                                                                        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:211)
                                                                                                        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:195)
                                                                                                        at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:503)
                                                                                                        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:204)
                                                                                                        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:196)
                                                                                                        at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:880)
                                                                                                        at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:865)
                                                                                                        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:739)
                                                                                                        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:729)
                                                                                                        at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:355)
                                                                                                        at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:298)
                                                                                                        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:92)
                                                                                                        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:53)
                                                                                                        at com.tonyodev.fetch2.database.FetchDatabaseManagerImpl.<init>(FetchDatabaseManagerImpl.kt:42)
                                                                                                        at com.tonyodev.fetch2.fetch.FetchModulesBuilder.buildModulesFromPrefs(FetchModulesBuilder.kt:39)
                                                                                                        at com.tonyodev.fetch2.Fetch$Impl.getInstance(Fetch.kt:1026)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule.provideFetch(DownloaderModule.kt:62)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.provideFetch(DownloaderModule_ProvideFetchFactory.java:43)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.get(DownloaderModule_ProvideFetchFactory.java:34)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.get(DownloaderModule_ProvideFetchFactory.java:13)
                                                                                                        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
                                                                                                        at org.kiwix.kiwixmobile.core.downloader.fetch.FetchDownloadMonitor_Factory.get(FetchDownloadMonitor_Factory.java:36)
                                                                                                        at org.kiwix.kiwixmobile.core.downloader.fetch.FetchDownloadMonitor_Factory.get(FetchDownloadMonitor_Factory.java:12)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.ApplicationModule_ProvideDownloadMonitor$core_debugFactory.get(ApplicationModule_ProvideDownloadMonitor$core_debugFactory.java:37)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.ApplicationModule_ProvideDownloadMonitor$core_debugFactory.get(ApplicationModule_ProvideDownloadMonitor$core_debugFactory.java:13)
                                                                                                        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
                                                                                                        at org.kiwix.kiwixmobile.core.di.components.DaggerCoreComponent$CoreComponentImpl.injectCoreApp(DaggerCoreComponent.java:822)
                                                                                                        at org.kiwix.kiwixmobile.core.di.components.DaggerCoreComponent$CoreComponentImpl.inject(DaggerCoreComponent.java:789)
                                                                                                        at org.kiwix.kiwixmobile.core.CoreApp.onCreate(CoreApp.kt:85)
                                                                                                        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1176)
                                                                                                        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6118)
                                                                                                        at android.app.ActivityThread.access$1200(ActivityThread.java:213)
                                                                                                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:106)
                                                                                                        at android.os.Looper.loop(Looper.java:193)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:6923)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870)
2024-01-28 15:56:08.201 26101-26101 AndroidRuntime          org.kiwix.kiwixmobile                D  Shutting down VM
2024-01-28 15:56:08.206 26101-26101 AndroidRuntime          org.kiwix.kiwixmobile                E  FATAL EXCEPTION: main
                                                                                                    Process: org.kiwix.kiwixmobile, PID: 26101
                                                                                                    java.lang.RuntimeException: Unable to create application org.kiwix.kiwixmobile.KiwixApp: android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database
                                                                                                        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6123)
                                                                                                        at android.app.ActivityThread.access$1200(ActivityThread.java:213)
                                                                                                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:106)
                                                                                                        at android.os.Looper.loop(Looper.java:193)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:6923)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870)
                                                                                                    Caused by: android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database
                                                                                                        at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
                                                                                                        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:211)
                                                                                                        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:195)
                                                                                                        at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:503)
                                                                                                        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:204)
                                                                                                        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:196)
                                                                                                        at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:880)
                                                                                                        at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:865)
                                                                                                        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:739)
                                                                                                        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:729)
                                                                                                        at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:355)
                                                                                                        at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:298)
                                                                                                        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:92)
                                                                                                        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:53)
                                                                                                        at com.tonyodev.fetch2.database.FetchDatabaseManagerImpl.<init>(FetchDatabaseManagerImpl.kt:42)
                                                                                                        at com.tonyodev.fetch2.fetch.FetchModulesBuilder.buildModulesFromPrefs(FetchModulesBuilder.kt:39)
                                                                                                        at com.tonyodev.fetch2.Fetch$Impl.getInstance(Fetch.kt:1026)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule.provideFetch(DownloaderModule.kt:62)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.provideFetch(DownloaderModule_ProvideFetchFactory.java:43)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.get(DownloaderModule_ProvideFetchFactory.java:34)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.get(DownloaderModule_ProvideFetchFactory.java:13)
                                                                                                        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
                                                                                                        at org.kiwix.kiwixmobile.core.downloader.fetch.FetchDownloadMonitor_Factory.get(FetchDownloadMonitor_Factory.java:36)
                                                                                                        at org.kiwix.kiwixmobile.core.downloader.fetch.FetchDownloadMonitor_Factory.get(FetchDownloadMonitor_Factory.java:12)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.ApplicationModule_ProvideDownloadMonitor$core_debugFactory.get(ApplicationModule_ProvideDownloadMonitor$core_debugFactory.java:37)
                                                                                                        at org.kiwix.kiwixmobile.core.di.modules.ApplicationModule_ProvideDownloadMonitor$core_debugFactory.get(ApplicationModule_ProvideDownloadMonitor$core_debugFactory.java:13)
                                                                                                        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
                                                                                                        at org.kiwix.kiwixmobile.core.di.components.DaggerCoreComponent$CoreComponentImpl.injectCoreApp(DaggerCoreComponent.java:822)
                                                                                                        at org.kiwix.kiwixmobile.core.di.components.DaggerCoreComponent$CoreComponentImpl.inject(DaggerCoreComponent.java:789)
                                                                                                        at org.kiwix.kiwixmobile.core.CoreApp.onCreate(CoreApp.kt:85)
2024-01-28 15:56:08.207 26101-26101 AndroidRuntime          org.kiwix.kiwixmobile                E      at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1176)
                                                                                                        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6118)
                                                                                                        ... 8 more
2024-01-28 15:56:08.217  1931-3627  ActivityManager         system_server                        W    Force finishing activity org.kiwix.kiwixmobile/.main.KiwixMainActivity
2024-01-28 15:56:08.219  1931-3627  ActivityManager         system_server                        D  found next focusableStack ActivityStack{19dadd0 stackId=0 type=home mode=fullscreen visible=true translucent=true, 1 tasks} with top ActivityRecord{9e20994 u0 is.shortcut/com.voxel.launcher3.Launcher t2} as current stack ActivityStack{eab868c stackId=173 type=standard mode=fullscreen visible=true translucent=true, 1 tasks}
2024-01-28 15:56:08.227 26101-26101 Process                 org.kiwix.kiwixmobile                I  Sending signal. PID: 26101 SIG: 9
2024-01-28 15:56:08.232  1931-1976  BroadcastQueue          system_server                        W  Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
2024-01-28 15:56:08.233  1931-1976  BroadcastQueue          system_server                        W  Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
2024-01-28 15:56:08.234   942-942   lowmemorykiller         lmkd                                 E  Error writing /proc/26101/oom_score_adj; errno=22
2024-01-28 15:56:08.246  1931-3627  ActivityManager         system_server                        I  Process org.kiwix.kiwixmobile (pid 26101) has died: vis  +99TOP 
2024-01-28 15:56:08.246  1931-1980  libprocessgroup         system_server                        W  kill(-26101, 9) failed: No such process
2024-01-28 15:56:08.250  1195-1195  Zygote                  pid-1195                             I  Process 26101 exited due to signal (9)
2024-01-28 15:56:08.252   943-999   SurfaceFlinger          surfaceflinger                       W  Attempting to set client state on removed layer: Splash Screen org.kiwix.kiwixmobile#0
2024-01-28 15:56:08.252   943-999   SurfaceFlinger          surfaceflinger                       W  Attempting to destroy on removed layer: Splash Screen org.kiwix.kiwixmobile#0
2024-01-28 15:56:08.255  1931-2170  WindowManager           system_server                        W  Failed looking up window callers=com.android.server.wm.WindowManagerService.windowForClientLocked:5626 com.android.server.wm.WindowManagerService.removeWindow:1684 com.android.server.wm.Session.remove:226 
2024-01-28 15:56:08.258   943-2453  SurfaceFlinger          surfaceflinger                       W  Attempting to destroy on removed layer: AppWindowToken{e68c7e token=Token{572be39 ActivityRecord{c8c0600 u0 org.kiwix.kiwixmobile/.main.KiwixMainActivity t5027}}}#0
2024-01-28 15:56:08.258  1931-1980  libprocessgroup         system_server                        W  kill(-26101, 9) failed: No such process
2024-01-28 15:56:08.258  1931-1980  libprocessgroup         system_server                        I  Successfully killed process cgroup uid 10282 pid 26101 in 12ms
2024-01-28 15:56:08.306  3050-3050  NotificationController  is.shortcut                          I  resumed
2024-01-28 15:56:08.310  3050-3050  AllAppsFragment         is.shortcut                          D  refreshAppList
2024-01-28 15:56:08.329  3050-3050  AllAppsFragment         is.shortcut                          D  prefetchIcons
2024-01-28 15:56:08.332  3050-26170 AllAppsFragment         is.shortcut                          D  prefetched: 61
2024-01-28 15:56:08.826  3050-3408  OpenGLRenderer          is.shortcut                          W  Incorrectly called buildLayer on View: ShortcutAndWidgetContainer, destroying layer...
2024-01-28 15:56:10.010   899-1162  NativeSensors           and....hardware.sensors@1.0-service  D  CapSensor:  mPendingEvent.distance=1.000000
2024-01-28 15:56:10.173  1931-2178  BatteryService          system_server                        D  uevent={POWER_SUPPLY_VOLTAGE_NOW=4015021, POWER_SUPPLY_CHARGE_RATE=Normal, POWER_SUPPLY_HEALTH=Good, POWER_SUPPLY_CURRENT_NOW=-209654, POWER_SUPPLY_PRESENT=1, SUBSYSTEM=power_supply, POWER_SUPPLY_TEMP=295, SEQNUM=77196, ACTION=change, POWER_SUPPLY_NAME=battery, POWER_SUPPLY_STATUS=Charging, POWER_SUPPLY_CHARGE_COUNTER=2715431, POWER_SUPPLY_CAPACITY=62, DEVPATH=/devices/soc/qpnp-smbcharger-17/power_supply/battery}
2024-01-28 15:56:10.222   899-1162  NativeSensors           and....hardware.sensors@1.0-service  D  CapSensor:  mPendingEvent.distance=1.000000
2024-01-28 15:56:10.888   899-1162  NativeSensors           and....hardware.sensors@1.0-service  D  CapSensor:  mPendingEvent.distance=2.000000
2024-01-28 15:56:10.979   899-1162  NativeSensors           and....hardware.sensors@1.0-service  D  CapSensor:  mPendingEvent.distance=2.000000
2024-01-28 15:56:18.314 25435-25435 BoundBrokerSvc          com.google.android.gms               D  onUnbind: Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms }
2024-01-28 15:56:20.026  1931-1978  ActivityManager         system_server                        I  Start proc 26174:com.google.android.apps.messaging/u0a79 for service com.google.android.apps.messaging/.shared.datamodel.action.execution.ActionJobService
2024-01-28 15:56:20.042 26174-26174 .apps.messagin          pid-26174                            E  Not starting debugger since process cannot load the jdwp agent.
2024-01-28 15:56:20.129 26174-26174 .apps.messagin          pid-26174                            I  The ClassLoaderContext is a special shared library.
2024-01-28 15:56:20.282 26174-26174 .apps.messagin          pid-26174                            W  JIT profile information will not be recorded: profile file does not exits.
2024-01-28 15:56:20.282 26174-26174 chatty                  pid-26174                            I  uid=10079(com.google.android.apps.messaging) identical 2 lines
2024-01-28 15:56:20.283 26174-26174 .apps.messagin          pid-26174                            W  JIT profile information will not be recorded: profile file does not exits.
2024-01-28 15:56:20.315 26174-26174 MultiDex                pid-26174                            I  Installing application
2024-01-28 15:56:20.316 26174-26174 MultiDex                pid-26174                            I  VM with version 2.1.0 has multidex support
2024-01-28 15:56:20.316 26174-26174 MultiDex                pid-26174                            I  VM has multidex support, MultiDex support library is disabled.
2024-01-28 15:56:20.426 26174-26174 cudq                    pid-26174                            I  SslGuard completed installation.
2024-01-28 15:56:20.447 26174-26174 Bugle                   pid-26174                            I  BugleApplicationBase: Bugle version: messages.android_20231114_01_rc11.phone_dynamic
2024-01-28 15:56:20.546  1931-2539  WificondControl         system_server                        D  Scan result ready event
2024-01-28 15:56:20.559 26174-26206 .apps.messagin          pid-26174                            W  Accessing hidden field Ljava/util/Collections$SynchronizedCollection;->mutex:Ljava/lang/Object; (dark greylist, reflection)
2024-01-28 15:56:20.561 26174-26206 .apps.messagin          pid-26174                            W  Accessing hidden method Ljava/util/Collections$SynchronizedSet;-><init>(Ljava/util/Set;Ljava/lang/Object;)V (dark greylist, reflection)
2024-01-28 15:56:20.563 26174-26206 .apps.messagin          pid-26174                            W  Accessing hidden method Ljava/util/Collections$SynchronizedCollection;-><init>(Ljava/util/Collection;Ljava/lang/Object;)V (dark greylist, reflection)
2024-01-28 15:56:20.591 13664-13664 BoundBrokerSvc          com.google.android.gms.persistent    D  onBind: Intent { act=com.google.android.gms.phenotype.service.START pkg=com.google.android.gms }
2024-01-28 15:56:20.591 26174-26174 Bugle                   pid-26174                            I  DarkModeManager: setDarkMode: 1
2024-01-28 15:56:20.592 13664-13664 BoundBrokerSvc          com.google.android.gms.persistent    D  Loading bound service for intent: Intent { act=com.google.android.gms.phenotype.service.START pkg=com.google.android.gms }
2024-01-28 15:56:20.739 26174-26202 Bugle                   pid-26174                            I  Initializing EmojiCompat
2024-01-28 15:56:20.745 26174-26202 CarrierServices         pid-26174                            I  [10269] bypx.b: Initializing Carrier Services Library.
2024-01-28 15:56:20.756 13664-18107 FontLog                 com.google.android.gms.persistent    I  (REDACTED) Received query %s, URI %s
2024-01-28 15:56:20.756 13664-18107 FontLog                 com.google.android.gms.persistent    I  (REDACTED) Query [%s] resolved to %s
2024-01-28 15:56:20.760 26174-26174 Bugle                   pid-26174                            I  RcsAvailabilityUtilForProvisioningEngineV2: updateAvailabilityAsync, hint: NO_HINT
2024-01-28 15:56:20.761 13664-18107 FontLog                 com.google.android.gms.persistent    I  (REDACTED) Fetch %s end status %s
2024-01-28 15:56:20.762 26174-26174 RcsAvailabilityUpdaterL pid-26174                            I  updateAvailabilityAsync: scheduling updateRcsAvailability call. Hint: NO_HINT, enableWelcomePopupWithoutGoogleTos: false, reshowSuccessPopup: false
2024-01-28 15:56:20.776 13664-18107 FontLog                 com.google.android.gms.persistent    I  (REDACTED) Pulling font file for id = %d, cache size = %d
2024-01-28 15:56:20.790 13664-18107 FontLog                 com.google.android.gms.persistent    I  (REDACTED) Pulling font file for id = %d, cache size = %d
2024-01-28 15:56:20.791 26174-26202 CarrierServices         pid-26174                            I  [10269] bypx.a: Initializing Carrier Services Logging.
2024-01-28 15:56:20.812 26174-26203 Bugle                   pid-26174                            I  DatabaseHelperBasic: sqlite version is 3.22.0
2024-01-28 15:56:20.820 26174-26202 LogSaver                pid-26174                            I  LogSaver new instance with filename: carrier_services
2024-01-28 15:56:20.821 26174-26174 Bugle                   pid-26174                            I  TelephonyManagerFactory: Returning per-subscription TelephonyManager (>= N) subscription{id:3}
2024-01-28 15:56:20.832 26174-26174 Bugle                   pid-26174                            I  TelephonyManagerFactory: Returning per-subscription TelephonyManager (>= N) subscription{id:2}
2024-01-28 15:56:20.856 26174-26202 BugleBackup             pid-26174                            I  Registering preference change listener for "bugle".
2024-01-28 15:56:20.859  1931-9410  ActivityManager         system_server                        W  Background start not allowed: service Intent { cmp=com.google.android.apps.messaging/.shared.datamodel.action.execution.ActionExecutorImpl$EmptyService } to com.google.android.apps.messaging/.shared.datamodel.action.execution.ActionExecutorImpl$EmptyService from pid=26174 uid=10079 pkg=com.google.android.apps.messaging startFg?=false
2024-01-28 15:56:20.859 26174-26203 BugleDataModel          pid-26174                            I  HeavyWorkQueueEmptyObserver: Starting observation of WorkQueueWorkManagerTable
2024-01-28 15:56:20.865 26174-26174 BugleDataModel          pid-26174                            I  ActionExecutorImpl: Timestamp for ACTION_EXECUTE_QUEUED_SendReportAction elapsedRealTime: 696004379 currentTimeMillis: 1706453780865
2024-01-28 15:56:20.881 26174-26215 BugleDataModel          pid-26174                            I  ActionExecutorImpl: Timestamp for ACTION_BACKGROUND_QUEUED_SendReportAction elapsedRealTime: 696004396 currentTimeMillis: 1706453780881
2024-01-28 15:56:20.916 26174-26202 BugleRcsEngine          pid-26174                            I  [10269] cado.i: ProvisioningEngineDataRetriever: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:643]
2024-01-28 15:56:20.916 26174-26216 BugleRcsEngine          pid-26174                            I  [10282] cado.i: ProvisioningEngineDataRetriever: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:643]
2024-01-28 15:56:20.917 26174-26217 BugleRcsEngine          pid-26174                            I  [10283] cado.i: ProvisioningEngineDataRetriever: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:643]
2024-01-28 15:56:20.922 26174-26216 BugleTransport          pid-26174                            I  Tachygram is disabled because the RCS Configuration is empty [CONTEXT ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:20.922 26174-26202 BugleTransport          pid-26174                            I  Tachygram is disabled because the RCS Configuration is empty [CONTEXT ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:20.923 26174-26217 BugleTransport          pid-26174                            I  Tachygram is disabled because the RCS Configuration is empty [CONTEXT ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:20.923 26174-26202 BugleTransport          pid-26174                            I  Enabled chat transport is TRANSPORT_RCS [CONTEXT group_by="TRANSPORT_RCS" ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:20.924 26174-26216 BugleTransport          pid-26174                            I  Enabled chat transport is TRANSPORT_RCS [CONTEXT group_by="TRANSPORT_RCS" ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:20.924 26174-26217 BugleTransport          pid-26174                            I  Enabled chat transport is TRANSPORT_RCS [CONTEXT group_by="TRANSPORT_RCS" ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:20.927 26174-26217 ChatReadinessManagerImp pid-26174                            I  processRcsReadinessReason: Current ChatTransportType is: 1, ready: false
2024-01-28 15:56:20.930 26174-26217 Bugle                   pid-26174                            I  RcsAvailabilityUtilForProvisioningEngineV2: updateAvailabilityAsync, hint: NO_HINT
2024-01-28 15:56:20.931 26174-26208 RcsAvailabilityUpdaterL pid-26174                            I  updateRcsAvailability: currentAvailability: 1, newAvailability: 4, hint: NO_HINT
2024-01-28 15:56:20.931 26174-26217 RcsAvailabilityUpdaterL pid-26174                            I  updateAvailabilityAsync: scheduling updateRcsAvailability call. Hint: NO_HINT, enableWelcomePopupWithoutGoogleTos: false, reshowSuccessPopup: false
2024-01-28 15:56:20.942 26174-26216 RcsAvailabilityUpdaterL pid-26174                            I  updateRcsAvailability: currentAvailability: 4, newAvailability: 4, hint: NO_HINT
2024-01-28 15:56:20.953 26174-26217 BugleDataModel          pid-26174                            I  ActionExecutorImpl: Timestamp for ACTION_RESPONSE_QUEUED_SendReportAction elapsedRealTime: 696004468 currentTimeMillis: 1706453780953
2024-01-28 15:56:20.985  1931-1978  ActivityManager         system_server                        I  Start proc 26225:com.roaming.android.gsimcontentprovider/u0a170 for content provider com.roaming.android.gsimcontentprovider/.GSimContentProvider
2024-01-28 15:56:20.998 26225-26225 contentprovide          pid-26225                            E  Not starting debugger since process cannot load the jdwp agent.
2024-01-28 15:56:21.020  1931-2539  ActivityManager         system_server                        I  Killing 25017:com.google.android.apps.turbo/u0a167 (adj 904): empty #17
2024-01-28 15:56:21.021  1931-1980  libprocessgroup         system_server                        W  kill(-25017, 9) failed: No such process
2024-01-28 15:56:21.035  1931-1980  libprocessgroup         system_server                        W  kill(-25017, 9) failed: No such process
2024-01-28 15:56:21.042  1195-1195  Zygote                  pid-1195                             I  Process 25017 exited due to signal (9)
2024-01-28 15:56:21.048  1931-1980  libprocessgroup         system_server                        W  kill(-25017, 9) failed: No such process
2024-01-28 15:56:21.048  1931-1980  libprocessgroup         system_server                        I  Successfully killed process cgroup uid 10167 pid 25017 in 27ms
2024-01-28 15:56:21.330 26174-26219 BugleRcsProvisioning    com.google.android.apps.messaging    I  BugleSystemBindingManager: onBuglePhenotypeFlagChanged
2024-01-28 15:56:21.332 26174-26197 BugleRcsEngine          com.google.android.apps.messaging    I  [10264] byil.run: SystemBindingManager: SystemBinding enabled: false
2024-01-28 15:56:21.332 26174-26219 BugleTransport          com.google.android.apps.messaging    I  onBuglePhenotypeFlagChanged: kicking off updateActiveTransport
2024-01-28 15:56:21.337 26174-26197 BugleRcsEngine          com.google.android.apps.messaging    I  [10264] byim.b: System Binding updated
2024-01-28 15:56:21.345 26174-26217 BugleAction             com.google.android.apps.messaging    W  Failed to get msisdn from Bugle
2024-01-28 15:56:21.346 26174-26216 BugleTransport          com.google.android.apps.messaging    I  isChatAvailable: RcsAvailability is DISABLED_FROM_PREFERENCES (You turned off RCS. Turn it back on in settings)
2024-01-28 15:56:21.366 26174-26217 Bugle                   com.google.android.apps.messaging    W  Bugle: SubscriptionMetadataUtils get: unexpected subId = -2, replacing with -1
2024-01-28 15:56:21.367 26174-26217 Bugle                   com.google.android.apps.messaging    I  TelephonyManagerFactory: Returning per-subscription TelephonyManager (>= N) subscription{id:-1}
2024-01-28 15:56:21.373 26174-26217 Bugle                   com.google.android.apps.messaging    I  SubscriptionUtilsAsOfLMR1: getActiveSubscriptionInfo(): empty sub info for subscription{id:-1}
2024-01-28 15:56:21.374 26174-26202 BugleRcsEngine          com.google.android.apps.messaging    I  [10269] caey.k: ProvisioningServerUtil: Using RCS compliant config URL
2024-01-28 15:56:21.379 26174-26217 Bugle                   com.google.android.apps.messaging    W  Bugle: SubscriptionMetadataUtils get: unexpected subId = -2, replacing with -1
2024-01-28 15:56:21.383 26174-26217 BugleBackup             com.google.android.apps.messaging    I  Registering preference change listener for "buglesub_-1".
2024-01-28 15:56:21.387 26174-26217 Bugle                   com.google.android.apps.messaging    W  Bugle: SubscriptionMetadataUtils get: unexpected subId = -2, replacing with -1
2024-01-28 15:56:21.393 26174-26217 Bugle                   com.google.android.apps.messaging    W  Bugle: SubscriptionMetadataUtils get: unexpected subId = -2, replacing with -1
2024-01-28 15:56:21.393 26174-26217 Bugle                   com.google.android.apps.messaging    I  SubscriptionUtilsAsOfLMR1: getActiveSubscriptionInfo(): empty sub info for subscription{id:-1}
2024-01-28 15:56:21.393 26174-26217 Bugle                   com.google.android.apps.messaging    I  SubscriptionUtilsAsOfLMR1: getActiveSubscriptionInfo(): empty sub info for subscription{id:-1}
2024-01-28 15:56:21.393 26174-26217 Bugle                   com.google.android.apps.messaging    W  SubscriptionUtilsAsOfLMR1: getSelfRawNumber: subInfo is null for subscription{id:-1}
2024-01-28 15:56:21.398 26174-26217 BugleBackup             com.google.android.apps.messaging    I  Registering preference change listener for "buglesub_2".
2024-01-28 15:56:21.402 26174-26217 BugleAction             com.google.android.apps.messaging    W  No default number, returning empty msisdn
2024-01-28 15:56:21.404 26174-26216 BugleTransport          com.google.android.apps.messaging    I  updateActiveTransport: refreshing chat transport
2024-01-28 15:56:21.406 26174-26216 BugleTransport          com.google.android.apps.messaging    I  Tachygram is disabled because the RCS Configuration is empty [CONTEXT ratelimit_period="5 SECONDS" ]
2024-01-28 15:56:21.407 26174-26216 BugleTransport          com.google.android.apps.messaging    I  refreshChatTransport: isChatAvailable: false, enabledTransport: 1, configuration: <empty>
2024-01-28 15:56:21.657 26174-26216 RcsClientLib            com.google.android.apps.messaging    I  Connecting RcsEngineLifecycleService
2024-01-28 15:56:21.664 26174-26216 RcsClientLib            com.google.android.apps.messaging    I  shouldUseCarrierServicesJibeService: true, CarrierServices rcs service found: true
2024-01-28 15:56:21.667 26174-26216 RcsClientLib            com.google.android.apps.messaging    I  com.google.android.rcs.client.lifecycle.RcsEngineLifecycleService connected
2024-01-28 15:56:21.675  4074-22953 com.google.android.ims. com.google.android.ims               I  [224] RcsEngineImpl.triggerStopRcsStack:1 [224] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]: triggerStopRcsStack for msisdn:redacted-pii:phone_number[chars:0,last2:]
2024-01-28 15:56:21.675  4074-4331  com.google.android.ims. com.google.android.ims               I  [186] enb.handleMessage:1 [186] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]>Handler: handleMessage processing message:[STOP_RCS_STACK] with [non-null]:RcsEngineImpl reference
2024-01-28 15:56:21.676  4074-4331  com.google.android.ims. com.google.android.ims               I  [186] enb.handleMessage:22 [186] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]>Handler: RCS engine STOP RCS stack
2024-01-28 15:56:21.676 26174-26222 RcsClientLib            com.google.android.apps.messaging    I  Disconnecting RcsEngineLifecycleService
2024-01-28 15:56:21.676  4074-4331  com.google.android.ims. com.google.android.ims               W  [186] RcsEngineImpl.g:1 [186] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]: imsModule is null, shutdown not required
2024-01-28 15:56:21.677  4074-4331  com.google.android.ims. com.google.android.ims               I  [186] RcsEngineImpl.stopRcsStackInternal:9 [186] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]: skipping imsModule.stop
2024-01-28 15:56:21.677  4074-4331  com.google.android.ims. com.google.android.ims               I  [186] RcsEngineImpl.e:2 [186] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]: resetting RcsEngine internal state
2024-01-28 15:56:21.678  4074-4331  com.google.android.ims. com.google.android.ims               I  [186] enb.handleMessage:1 [186] : RcsEngineImpl[DUAL_REG]:[97cecee2-31e8]>Handler: handleMessage processing message:[NOTIFY_UPTIME_IGNORE_STATE_CHANGED] with [non-null]:RcsEngineImpl reference
2024-01-28 15:56:21.701  4074-4331  com.google.android.ims. com.google.android.ims               I  [186] ely.b:7 [186] : ProvisioningEngineDataRetriever: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:643]
2024-01-28 15:56:21.965 26174-26174 BugleDataModel          com.google.android.apps.messaging    I  ActionExecutorImpl: Timestamp for ACTION_EXECUTE_QUEUED_SendReportAction elapsedRealTime: 696005479 currentTimeMillis: 1706453781965
2024-01-28 15:56:21.966 26174-26216 BugleDataModel          com.google.android.apps.messaging    I  ActionExecutorImpl: Timestamp for ACTION_BACKGROUND_QUEUED_SendReportAction elapsedRealTime: 696005480 currentTimeMillis: 1706453781966
2024-01-28 15:56:21.969 26174-26219 ChatReadinessManagerImp com.google.android.apps.messaging    I  processRcsReadinessReason: Current ChatTransportType is: 1, ready: false
2024-01-28 15:56:21.986 26174-26219 BugleDataModel          com.google.android.apps.messaging    I  ActionExecutorImpl: Timestamp for ACTION_RESPONSE_QUEUED_SendReportAction elapsedRealTime: 696005501 currentTimeMillis: 1706453781986
2024-01-28 15:56:23.669  1213-1348  storaged                storaged                             E  getDiskStats failed with result NOT_SUPPORTED and size 0
2024-01-28 15:56:26.063 26225-26238 contentprovide          com...g.android.gsimcontentprovider  I  Waiting for a blocking GC ProfileSaver
2024-01-28 15:56:26.116 26225-26238 contentprovide          com...g.android.gsimcontentprovider  I  WaitForGcToComplete blocked ProfileSaver on AddRemoveAppImageSpace for 52.970ms
2024-01-28 15:56:27.003 26174-26174 BugleDataModel          com.google.android.apps.messaging    I  ActionExecutorImpl: Timestamp for ACTION_EXECUTE_QUEUED_SendReportAction elapsedRealTime: 696010517 currentTimeMillis: 1706453787003
2024-01-28 15:56:27.005 26174-26216 BugleDataModel          com.google.android.apps.messaging    I  ActionExecutorImpl: Timestamp for ACTION_BACKGROUND_QUEUED_SendReportAction elapsedRealTime: 696010519 currentTimeMillis: 1706453787005
2024-01-28 15:56:27.009 26174-26219 BugleTransport          com.google.android.apps.messaging    I  Tachygram is disabled because the RCS Configuration is empty [CONTEXT ratelimit_period="5 SECONDS" skipped=1 ]
2024-01-28 15:56:27.010 26174-26219 BugleTransport          com.google.android.apps.messaging    I  Enabled chat transport is TRANSPORT_RCS [CONTEXT group_by="TRANSPORT_RCS" ratelimit_period="5 SECONDS" skipped=2 ]
2024-01-28 15:56:27.013 26174-26219 ChatReadinessManagerImp com.google.android.apps.messaging    I  processRcsReadinessReason: Current ChatTransportType is: 1, ready: false
2024-01-28 15:56:27.030 26174-26219 BugleDataModel          com.google.android.apps.messaging    I  ActionExecutorImpl: Timestamp for ACTION_RESPONSE_QUEUED_SendReportAction elapsedRealTime: 696010544 currentTimeMillis: 1706453787030
2024-01-28 15:56:27.440 26174-26188 ClearcutMetricXmitter   com.google.android.apps.messaging    V  Transmission is done.
MohitMaliFtechiz commented 9 months ago

@stefan-inf Thanks for providing the logs. It seems very mysterious behavior on your device as we every time seeing a new error on your device.

This time application crashed due to a not open database error in the Fetch library according to the logs you provided. But it occurs if a device has very little memory in it or if the previous database is corrupted. Since this operation is performed inside the Fetch library we can't do much there.

Caused by: android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database

Can you please confirm a few details:

Edited: @stefan-inf This approach will take a very long to debug the actual problem can you please join our slack channel this will better to fix this problem and takes very little time to fix.

stefan-inf commented 9 months ago

I installed the newst Android Webview. With that, another app (OSM-And+, the 2nd app that started to crash recently) does not crash anymore. Then I istalled a lot of kiwix version (1.9, 2.4, 3.4, 3.7, 3.9), but always crashing...

It's really a pitty that you do not find the error. I really need kiwix, my favorite smartphone app.

If it is something with Sqllite, why does Wikimed work fine, right now on my phone? What does it differently with the DB than kiwix? Is the database for the seach index or for what else?

stefan-inf commented 8 months ago

Another Android-Studio-Crash-Report (newly installed kiwix-3.6 with new Android Webview from five days ago)

2024-02-07 16:55:10.950 1943-3563 ActivityManager system_server I START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=org.kiwix.kiwixmobile/.main.KiwixMainActivity bnds=[10,823][150,978] (has extras)} from uid 10154 2024-02-07 16:55:10.965 930-955 ANDR-PERF-RESOURCEQS ven...qti.hardware.perf@1.0-service E Failed to apply optimization [4, 0] 2024-02-07 16:55:10.982 3109-15310 AnalyticsDatabaseHelper is.shortcut D Inserting analytics logs into the database. 2024-02-07 16:55:11.001 3109-3109 NotificationController is.shortcut I paused 2024-02-07 16:55:11.009 3109-15306 AnalyticsDatabaseHelper is.shortcut D Read 11 records from analytics logs table. 2024-02-07 16:55:11.020 14863-14863 BoundBrokerSvc com.google.android.gms D onBind: Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms } 2024-02-07 16:55:11.020 14863-14863 BoundBrokerSvc com.google.android.gms D Loading bound service for intent: Intent { act=com.google.android.gms.measurement.START pkg=com.google.android.gms } 2024-02-07 16:55:11.027 1943-1994 ActivityManager system_server I Start proc 15752:org.kiwix.kiwixmobile/u0a296 for activity org.kiwix.kiwixmobile/.main.KiwixMainActivity 2024-02-07 16:55:11.039 15752-15752 wix.kiwixmobil pid-15752 E Not starting debugger since process cannot load the jdwp agent. 2024-02-07 16:55:11.103 15752-15752 wix.kiwixmobil pid-15752 W JIT profile information will not be recorded: profile file does not exits. 2024-02-07 16:55:11.113 15752-15752 ContextImpl pid-15752 W Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/cache: mkdir failed: EACCES (Permission denied) 2024-02-07 16:55:11.113 15752-15752 ContextImpl pid-15752 W Failed to update user.inode_cache: stat failed: EACCES (Permission denied) 2024-02-07 16:55:11.113 15752-15752 ContextImpl pid-15752 W Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user_de/0/org.kiwix.kiwixmobile/code_cache: mkdir failed: ENOENT (No such file or directory) 2024-02-07 16:55:11.113 15752-15752 ContextImpl pid-15752 W Failed to update user.inode_code_cache: stat failed: ENOENT (No such file or directory) 2024-02-07 16:55:11.121 14936-15295 NetworkScheduler.ATC com.google.android.gms.persistent E Called cancelTask for already completed task com.google.android.gms/.measurement.PackageMeasurementTaskService{u=0 tag="Measurement.PackageMeasurementTaskService.UPLOAD_TASK_TAG" trigger=window{start=606s,end=1214s,earliest=-92396s,latest=-91788s} requirements=[NET_CONNECTED,PREFERRED_NET_UNMETERED,PREFERRED_CHARGING] attributes=[PERSISTED] scheduled=-93002s last_run=-197s exec_window_multiplier=1.0000 jid=N/A status=ACTIVE retries=0 client_lib=GMS_TASK_SCHEDULER-240213000} :1 [CONTEXT service_id=218 ] 2024-02-07 16:55:11.127 15752-15752 ContextImpl pid-15752 W Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied) 2024-02-07 16:55:11.159 15752-15752 NetworkSecurityConfig pid-15752 D No Network Security Config specified, using platform default 2024-02-07 16:55:11.165 15752-15752 ContextImpl pid-15752 W Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied) 2024-02-07 16:55:11.168 15752-15752 ContextImpl pid-15752 W Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/files: mkdir failed: EACCES (Permission denied) 2024-02-07 16:55:11.172 15752-15752 ContextImpl pid-15752 W Failed to ensure /mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/databases: mkdir failed: EACCES (Permission denied) 2024-02-07 16:55:11.175 15752-15752 SQLiteLog pid-15752 E (14) cannot open file at line 36940 of [68b898381a] 2024-02-07 16:55:11.175 15752-15752 SQLiteLog pid-15752 E (14) os_unix.c:36940: (13) lstat(/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/databases/LibGlobalFetchLib.db) - 2024-02-07 16:55:11.176 15752-15752 SQLiteDatabase pid-15752 E Failed to open database '/mnt/expand/f7e4a008-98b5-4ebd-9e05-1244fffba445/user/0/org.kiwix.kiwixmobile/databases/LibGlobalFetchLib.db'. android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method) at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:211) at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:195) at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:503) at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:204) at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:196) at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:880) at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:865) at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:739) at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:729) at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:355) at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:298) at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:2) at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:1) at com.tonyodev.fetch2.database.FetchDatabaseManagerImpl.(FetchDatabaseManagerImpl.kt:46) at com.tonyodev.fetch2.fetch.FetchModulesBuilder.buildModulesFromPrefs(FetchModulesBuilder.kt:32) at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.get(DownloaderModule_ProvideFetchFactory.java:4) at dagger.internal.DoubleCheck.get(DoubleCheck.java:5) at org.kiwix.kiwixmobile.core.downloader.fetch.FetchDownloadMonitor_Factory.get(FetchDownloadMonitor_Factory.java:1) at org.kiwix.kiwixmobile.core.di.modules.ApplicationModule_ProvideDownloadMonitor$core_releaseFactory.get(ApplicationModule_ProvideDownloadMonitor$core_releaseFactory.java:1) at dagger.internal.DoubleCheck.get(DoubleCheck.java:5) at org.kiwix.kiwixmobile.core.di.components.DaggerCoreComponent$CoreComponentImpl.inject(DaggerCoreComponent.java:5) at org.kiwix.kiwixmobile.core.CoreApp.onCreate(CoreApp.kt:12) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1176) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6118) at android.app.ActivityThread.access$1200(ActivityThread.java:213) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6923) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870) 2024-02-07 16:55:11.177 15752-15752 AndroidRuntime pid-15752 D Shutting down VM 2024-02-07 16:55:11.178 15752-15752 AndroidRuntime pid-15752 E FATAL EXCEPTION: main Process: org.kiwix.kiwixmobile, PID: 15752 java.lang.RuntimeException: Unable to create application org.kiwix.kiwixmobile.KiwixApp: android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6123) at android.app.ActivityThread.access$1200(ActivityThread.java:213) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6923) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870) Caused by: android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method) at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:211) at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:195) at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:503) at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:204) at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:196) at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:880) at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:865) at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:739) at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:729) at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:355) at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:298) at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:2) at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:1) at com.tonyodev.fetch2.database.FetchDatabaseManagerImpl.(FetchDatabaseManagerImpl.kt:46) at com.tonyodev.fetch2.fetch.FetchModulesBuilder.buildModulesFromPrefs(FetchModulesBuilder.kt:32) at org.kiwix.kiwixmobile.core.di.modules.DownloaderModule_ProvideFetchFactory.get(DownloaderModule_ProvideFetchFactory.java:4) at dagger.internal.DoubleCheck.get(DoubleCheck.java:5) at org.kiwix.kiwixmobile.core.downloader.fetch.FetchDownloadMonitor_Factory.get(FetchDownloadMonitor_Factory.java:1) at org.kiwix.kiwixmobile.core.di.modules.ApplicationModule_ProvideDownloadMonitor$core_releaseFactory.get(ApplicationModule_ProvideDownloadMonitor$core_releaseFactory.java:1) at dagger.internal.DoubleCheck.get(DoubleCheck.java:5) at org.kiwix.kiwixmobile.core.di.components.DaggerCoreComponent$CoreComponentImpl.inject(DaggerCoreComponent.java:5) at org.kiwix.kiwixmobile.core.CoreApp.onCreate(CoreApp.kt:12) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1176) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6118) at android.app.ActivityThread.access$1200(ActivityThread.java:213)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807)  at android.os.Handler.dispatchMessage(Handler.java:106)  at android.os.Looper.loop(Looper.java:193)  at android.app.ActivityThread.main(ActivityThread.java:6923)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870)  2024-02-07 16:55:11.182 1943-6474 ActivityManager system_server W Force finishing activity org.kiwix.kiwixmobile/.main.KiwixMainActivity 2024-02-07 16:55:11.184 1943-6474 ActivityManager system_server D found next focusableStack ActivityStack{71e2af4 stackId=0 type=home mode=fullscreen visible=true translucent=true, 1 tasks} with top ActivityRecord{f75c390 u0 is.shortcut/com.voxel.launcher3.Launcher t2} as current stack ActivityStack{564294d stackId=145 type=standard mode=fullscreen visible=true translucent=true, 1 tasks} 2024-02-07 16:55:11.194 15752-15752 Process pid-15752 I Sending signal. PID: 15752 SIG: 9 2024-02-07 16:55:11.194 1943-1992 BroadcastQueue system_server W Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver 2024-02-07 16:55:11.195 1943-1992 BroadcastQueue system_server W Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver 2024-02-07 16:55:11.200 944-944 lowmemorykiller lmkd E Error writing /proc/15752/oom_score_adj; errno=22 2024-02-07 16:55:11.221 1193-1193 Zygote pid-1193 I Process 15752 exited due to signal (9) 2024-02-07 16:55:11.221 1943-3563 ActivityManager system_server I Process org.kiwix.kiwixmobile (pid 15752) has died: vis +99TOP 2024-02-07 16:55:11.221 1943-1995 libprocessgroup system_server W kill(-15752, 9) failed: No such process 2024-02-07 16:55:11.221 1943-1995 libprocessgroup system_server I Successfully killed process cgroup uid 10296 pid 15752 in 0ms 2024-02-07 16:55:11.234 945-1144 SurfaceFlinger surfaceflinger W Attempting to destroy on removed layer: AppWindowToken{6e1f06d token=Token{149084 ActivityRecord{ca1d697 u0 org.kiwix.kiwixmobile/.main.KiwixMainActivity t5263}}}#0 2024-02-07 16:55:11.278 3109-3109 NotificationController is.shortcut I resumed 2024-02-07 16:55:11.282 3109-3109 AllAppsFragment is.shortcut D refreshAppList 2024-02-07 16:55:11.297 3109-3109 AllAppsFragment is.shortcut D prefetchIcons 2024-02-07 16:55:11.300 3109-15607 AllAppsFragment is.shortcut D prefetched: 59 2024-02-07 16:55:11.988 14863-14863 BoundBrokerSvc com.google.android.gms D onUnbind: Intent { act=com.google.android.gms.safetynet.service.START pkg=com.google.android.gms } 2024-02-07 16:55:14.957 3109-15306 HttpRequestUtil is.shortcut W Could not POST to https://events.evie.com/events 2024-02-07 16:55:14.957 3109-15306 AnalyticsDatabaseHelper is.shortcut D Deleting record from database. ID: 108926 2024-02-07 16:55:14.986 3109-15306 AnalyticsDatabaseHelper is.shortcut D Deleting record from database. ID: 108927

MohitMaliFtechiz commented 8 months ago

@stefan-inf Thanks, we are debugging this issue.

kelson42 commented 7 months ago

@MohitMaliFtechiz What is the status here?

stefan-inf commented 7 months ago

I'm still waiting with my dysfunctional Kiwix app...

MohitMaliFtechiz commented 7 months ago

@stefan-inf Extremely sorry for being very late on this. I have done all the research about the bug you are facing on your device.

BTW. today I installed the newest Playstore version of Kiwix and Android Webview. Now, Kiwix does (again) not crash immediately, but after selecting the zim file.

The new version of playstore will crash when you try to select the ZIM file because your device is running on armeabi-v7a architecture, and on this architecture, we already facing this issue in https://github.com/kiwix/kiwix-android/issues/3661, https://github.com/kiwix/kiwix-android/issues/3749, https://github.com/kiwix/kiwix-android/issues/3692.

Screenshot from 2024-03-28 12-30-51

BTW, the app "Wikipedia Medizin (offline)" (Playstore, V2023-07) does not crash and works fine...

Because it is running on the old java-libkiwix that's why it is working on your device, and kiwix does not since it is using the latest java-libkiwix.

Apart from this issue, the other issue you are facing is related to the Fetch library which we are planning to replace in https://github.com/kiwix/kiwix-android/issues/3141. But the issue is not reproducible in my all devices and emulators.

So to fix the issue please do one thing don't use playstore version for now as it will not work on your device until we fix https://github.com/kiwix/kiwix-android/issues/3661. So please install this version kiwix-3.7.1.apk of Kiwix on your device.

android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: pending_ops.tag, pending_ops.target_class, pending_ops.target_package, pending_ops.user_id (code 2067 SQLITE_CONSTRAINT_UNIQUE)

Before installing this new version please go into the application settings->Storage & cache->Clear storage and cache data and clear all the data of the application to ensure that all the cache data will clear and then uninstall the application since it is giving the UNIQUE constraint error which sometimes occurs due to cache data. After doing this step install the new application from the link that I have provided you above.

stefan-inf commented 7 months ago

Thank you for your detailed reply. I have installed it as you said (i.e. clear app data and cache, uninstall current version, download 3.7.1 from your source). But as seen before, it now crashes again immediately after starting. What a pity...

MohitMaliFtechiz commented 7 months ago

@stefan-inf Thanks for your testing this version of kiwix.

Now, every version is crashing immediately after starting. Before, the 3.8.1 crashed only when opening a ZIM file, now when started. I have the 3.9.0 with WebView 120.0.6099.43. https://github.com/kiwix/kiwix-android/issues/3600#issuecomment-1864241668

Now we know that after 3.7.1 versions will not work in your device, and this database problem occurring after upgrading the Android system webview so it probably the issue with this version of Android system webview because the previous version of Android system webview was working fine in your device. At that time, the application was only crashing when selecting the ZIM file in version 3.8.1 which is obvious as we have this issue in this architecture with the latest version of kiwix.

Also, I have seen many reviews on play store for the 120.0.6099.43 version in Dec 2023 they complained it has many bugs in this version. So can you please try to upgrade/downgrade the webView and Chrome browser on your device and then try this version if it still crashing or not?

stefan-inf commented 7 months ago

I tried Webview 122.0.6261.43, 122.0.6261.119, 104.0.5112.69 and 74.0.3729.136. Kiwix did not start with any of them...

MohitMaliFtechiz commented 7 months ago

@stefan-inf Thanks for trying the different versions, regret to know that it still not working. This is taking a very long to fix it, can you please join our Slack channel so that the problem can be fixed ASAP.

MohitMaliFtechiz commented 6 months ago

@stefan-inf If you are short of time, try to update your device(if any update is available). There are many articles related to this type of problem with Motorola phones:-

  1. https://forums.lenovo.com/t5/moto-g54-5G/Apps-keeps-crashing-on-motorola-g54-android-13/m-p/5292694.
  2. https://forums.lenovo.com/t5/moto-g-power/Moto-G-power-2021-crashes-constantly/m-p/5210461
  3. https://www.reddit.com/r/motorola/comments/mazc7q/help_nearly_every_app_constantly_crashes/

Also, try to reboot the device. The latest update includes the fixes for these types of problems.

stefan-inf commented 6 months ago

There is no system update available for my device. I've rebooted my phone several times and deleted the cache and and and ...

Also, the cases described in your links are about mostly every app crashing. In my case all apps work fine except Kiwix.

MohitMaliFtechiz commented 6 months ago

@stefan-inf Thanks for your feedback. If none of these methods resolve the issue. Then we need to wait for https://github.com/kiwix/kiwix-android/issues/3141 to be implemented since the issue is related to the Fetch library which is not in our hands, we are planning to replace the Fetch library in https://github.com/kiwix/kiwix-android/issues/3141.

kelson42 commented 6 months ago

Moving back to milestone 3.10.0 because I strongly suspect we are impacted here by https://github.com/openzim/libzim/issues/866.

@MohitMaliFtechiz We should release and then test with a new release of libkiwix-java integrating libzim 9.2.0

kelson42 commented 6 months ago

@stefan-inf I would recommend to test latest nightly which integrates latest libzim 9.2.0. Fetch problems will be fixed in version 3.11.0 which is next milestone of Kiwix Android we have to work on.

stefan-inf commented 6 months ago

Thank you for the new version 3.10. Result: Kiwix crashes immediately after starting (before the GUI appears).

kelson42 commented 6 months ago

@stefan-inf Thank you for taking - again - the time to test with cutting edge version. @MohitMaliFtechiz Once 3.10.0 released, please put focus again on this, such crash at start scenarios have to be fixed in priority.

stefan-inf commented 6 months ago

Crash behaviour: I have to add that after starting Kiwix, the black logo appears on white ground and stays for 4 seconds before it crashes...

kelson42 commented 4 months ago

@MohitMaliFtechiz Fixed by #3867?

stefan-inf commented 4 months ago

Hi, is there a new Kiwix version (with the new lib) which I could test?

MohitMaliFtechiz commented 4 months ago

@stefan-inf Please test this version https://drive.google.com/file/d/11JYfBfYf3H4dIUibZ0tuMlT_vtOEm0xn/view?usp=drive_link.