mh- / corona-warn-companion-android

Android App Which Shows Details about CWA Exposures (Requires Root or CCTG or RaMBLE Apps)
GNU General Public License v3.0
130 stars 22 forks source link

Companion cannot read DB on Android 8 #136

Closed jeverling closed 2 years ago

jeverling commented 2 years ago

Hi, I seem to have a similar problem as in #112. My phone is running Android 8.0.0.

The contents of /data/data/com.google.android.gms/app_contact-tracing-contact-record-db/:

total 240
-rw------- 1 u0_a18 u0_a18  4626 2021-12-15 12:59 000029.ldb
-rw------- 1 u0_a18 u0_a18 16105 2021-12-16 09:19 000070.ldb
-rw------- 1 u0_a18 u0_a18  4285 2021-12-16 23:16 000090.ldb
-rw------- 1 u0_a18 u0_a18 26747 2021-12-19 05:22 000169.ldb
-rw------- 1 u0_a18 u0_a18  5050 2021-12-19 23:27 000187.ldb
-rw------- 1 u0_a18 u0_a18 53622 2021-12-21 00:35 000298.ldb
-rw------- 1 u0_a18 u0_a18  1411 2021-12-22 03:53 000317.ldb
-rw------- 1 u0_a18 u0_a18  6446 2021-12-22 22:22 000339.ldb
-rw------- 1 u0_a18 u0_a18  1185 2021-12-24 01:44 000362.ldb
-rw------- 1 u0_a18 u0_a18 18553 2021-12-25 01:59 000404.ldb
-rw------- 1 u0_a18 u0_a18  5112 2021-12-25 12:51 000419.log
-rw------- 1 u0_a18 u0_a18   587 2021-12-25 12:49 000420.ldb
-rw------- 1 u0_a18 u0_a18    16 2021-12-25 12:03 CURRENT
-rw------- 1 u0_a18 u0_a18     0 2021-12-14 04:21 LOCK
-rw------- 1 u0_a18 u0_a18   600 2021-12-25 12:49 LOG
-rw------- 1 u0_a18 u0_a18   178 2021-12-25 11:41 LOG.old
-rw------- 1 u0_a18 u0_a18   789 2021-12-25 12:49 MANIFEST-000417

The log messages of the companion app:

12-25 12:54:35.722 23720 23720 D ContactDbOnDisk: Trying to copy LevelDB
12-25 12:54:39.673 23720 23720 D ContactDbOnDisk: Cache file owner: u0_a148
12-25 12:54:39.746 23720 23720 D ContactDbOnDisk: Cache file group: sdcard_rw
12-25 12:54:39.810 23720 23720 D ContactDbOnDisk: Cache file context: u:object_r:sdcardfs:s0
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: Result from trying to copy LevelDB: total 228
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  4626 2021-12-25 12:54 000029.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 16105 2021-12-25 12:54 000070.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  4285 2021-12-25 12:54 000090.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 26747 2021-12-25 12:54 000169.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  5050 2021-12-25 12:54 000187.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 53622 2021-12-25 12:54 000298.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  1411 2021-12-25 12:54 000317.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  6446 2021-12-25 12:54 000339.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  1185 2021-12-25 12:54 000362.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 18553 2021-12-25 12:54 000404.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  5112 2021-12-25 12:54 000419.log
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   587 2021-12-25 12:54 000420.ldb
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0    16 2021-12-25 12:54 CURRENT
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0     0 2021-12-25 12:54 LOCK
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   600 2021-12-25 12:54 LOG
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   178 2021-12-25 12:54 LOG.old
12-25 12:54:39.941 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   789 2021-12-25 12:54 MANIFEST-000417
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: Result from trying to set owner, group and context: total 228
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  4626 2021-12-25 12:54 000029.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 16105 2021-12-25 12:54 000070.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  4285 2021-12-25 12:54 000090.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 26747 2021-12-25 12:54 000169.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  5050 2021-12-25 12:54 000187.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 53622 2021-12-25 12:54 000298.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  1411 2021-12-25 12:54 000317.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  6446 2021-12-25 12:54 000339.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  1185 2021-12-25 12:54 000362.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0 18553 2021-12-25 12:54 000404.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0  5112 2021-12-25 12:54 000419.log
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   587 2021-12-25 12:54 000420.ldb
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0    16 2021-12-25 12:54 CURRENT
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0     0 2021-12-25 12:54 LOCK
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   600 2021-12-25 12:54 LOG
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   178 2021-12-25 12:54 LOG.old
12-25 12:54:40.080 23720 23720 D ContactDbOnDisk: -rw-rw---- 1 u0_a148 sdcard_rw u:object_r:sdcardfs:s0   789 2021-12-25 12:54 MANIFEST-000417
12-25 12:54:40.265 23720 23720 D ContactDbOnDisk: /storage/emulated/0/Android/data/org.tosl.coronawarncompanion/cache/app_contact-tracing-contact-record-db_/000422.ldb: open failed: EACCES (Permission denied)
12-25 12:54:40.265 23720 23720 D ContactDbOnDisk: LevelDB not found.

And the contents of /storage/emulated/0/Android/data/org.tosl.coronawarncompanion/cache/app_contact-tracing-contact-record-db_/:

total 228
-rw-rw---- 1 u0_a148 sdcard_rw  4626 2021-12-25 12:54 000029.ldb
-rw-rw---- 1 u0_a148 sdcard_rw 16105 2021-12-25 12:54 000070.ldb
-rw-rw---- 1 u0_a148 sdcard_rw  4285 2021-12-25 12:54 000090.ldb
-rw-rw---- 1 u0_a148 sdcard_rw 26747 2021-12-25 12:54 000169.ldb
-rw-rw---- 1 u0_a148 sdcard_rw  5050 2021-12-25 12:54 000187.ldb
-rw-rw---- 1 u0_a148 sdcard_rw 53622 2021-12-25 12:54 000298.ldb
-rw-rw---- 1 u0_a148 sdcard_rw  1411 2021-12-25 12:54 000317.ldb
-rw-rw---- 1 u0_a148 sdcard_rw  6446 2021-12-25 12:54 000339.ldb
-rw-rw---- 1 u0_a148 sdcard_rw  1185 2021-12-25 12:54 000362.ldb
-rw-rw---- 1 u0_a148 sdcard_rw 18553 2021-12-25 12:54 000404.ldb
-rw-rw---- 1 u0_a148 sdcard_rw  5112 2021-12-25 12:54 000419.log
-rw-rw---- 1 u0_a148 sdcard_rw   587 2021-12-25 12:54 000420.ldb
-rw-rw---- 1 u0_a148 sdcard_rw    16 2021-12-25 12:54 CURRENT
-rw-rw---- 1 u0_a148 sdcard_rw     0 2021-12-25 12:54 LOCK
-rw-rw---- 1 u0_a148 sdcard_rw   600 2021-12-25 12:54 LOG
-rw-rw---- 1 u0_a148 sdcard_rw   178 2021-12-25 12:54 LOG.old
-rw-rw---- 1 u0_a148 sdcard_rw   789 2021-12-25 12:54 MANIFEST-000417

I seem to be able to access the files correctly using adb. Is there something I can do to make it work? Or maybe convert the DB manually to something that the companion app can import? I'm not familiar with leveldb so all I got so far was some unintelligible binary data. Apparently I had a risk contact, and would really like to know at what time so I can assess the risk better and maybe warn others. I think the time of contact is absolutely crucial and I can't understand why it's not included in the data that the CWA shows. But well that's a different topic. Thanks for any help and thanks for the app!

jeverling commented 2 years ago

I had to give the Companion app "Storage" permissions. It didn't ask me, but I saw that there was an option in the app settings. After activating it, it was able to read the DB copy successfully.