osmdroid: Crash when searching for caching directory

Please note: issues related to or caused by osmbonuspack will be closed with a suggestion to open an issue at https://github.com/MKergall/osmbonuspack

(feel free to delete whatever doesn’t apply)

Issue Type

[ ] Question [x] Bug [ ] Improvement [ ] Build system related [ ] Performance [ ] Documentation

Description and/or steps/code to reproduce the problem

Calling Configuration.getInstance().load(context, PreferenceManager.getDefaultSharedPreferences(context)) crashes the app after I updated the lib from 6.1.6 to 6.1.7.

07-22 22:39:17.322 6516-6516/org.openhab.habdroid.beta I/StorageUtils: /storage/emulated/0 is NOT writable
07-22 22:39:17.323 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /proc/mounts
07-22 22:39:17.323 6516-6516/org.openhab.habdroid.beta D/StorageUtils: rootfs / rootfs ro,seclabel,relatime 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: none /dev/cpuctl cgroup rw,relatime,cpu 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /dev/logd tmpfs rw,context=u:object_r:logd_tmpfs:s0,relatime,size=512k,mode=770,uid=1036,gid=1036 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: proc /proc proc rw,relatime 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: sysfs /sys sysfs rw,seclabel,relatime 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: none /sys/kernel/debug debugfs rw,relatime 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: none /acct cgroup rw,relatime,cpuacct 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /mnt/media_rw tmpfs rw,seclabel,relatime,mode=755,uid=1000,gid=1000 0 0
07-22 22:39:17.324 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/vold/179:129 /mnt/media_rw/sdcard1 vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
07-22 22:39:17.325 6516-6516/org.openhab.habdroid.beta I/StorageUtils: /mnt/media_rw/sdcard1 is NOT writable
07-22 22:39:17.325 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /mnt/secure tmpfs rw,seclabel,relatime,mode=700 0 0
07-22 22:39:17.325 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/vold/179:129 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/platform/mtk-msdc.0/by-name/system /system ext4 ro,seclabel,noatime,discard,nodelalloc,errors=panic,commit=1,data=ordered 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/platform/mtk-msdc.0/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,noauto_da_alloc,data=ordered 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/loop1 /data/metrics ext4 rw,seclabel,relatime,data=ordered 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/platform/mtk-msdc.0/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,noauto_da_alloc,data=ordered 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/block/loop0 /mnt/sqfs squashfs ro,context=u:object_r:squashfs_file:s0,relatime 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: tmpfs /storage/emulated tmpfs rw,seclabel,nosuid,nodev,relatime,mode=751,gid=1028 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/fuse /storage/sdcard1 fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/fuse /storage/emulated/0 fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
07-22 22:39:17.326 6516-6516/org.openhab.habdroid.beta D/StorageUtils: /dev/fuse /storage/emulated/legacy fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
07-22 22:39:17.331 6516-6516/org.openhab.habdroid.beta I/StorageUtils: /storage/sdcard1 is NOT writable
07-22 22:39:17.331 6516-6516/org.openhab.habdroid.beta I/StorageUtils: /storage/emulated/legacy is NOT writable
07-22 22:39:17.333 6516-6516/org.openhab.habdroid.beta I/StorageUtils: /storage/emulated/0 is NOT writable
07-22 22:39:17.368 6516-6516/org.openhab.habdroid.beta D/OsmDroid: Unable to create base path at null
    java.lang.NullPointerException: Attempt to read from field 'java.lang.String org.osmdroid.tileprovider.util.StorageUtils$StorageInfo.path' on a null object reference
        at org.osmdroid.config.DefaultConfigurationProvider.getOsmdroidBasePath(DefaultConfigurationProvider.java:255)
        at org.osmdroid.config.DefaultConfigurationProvider.getOsmdroidBasePath(DefaultConfigurationProvider.java:247)
        at org.osmdroid.config.DefaultConfigurationProvider.load(DefaultConfigurationProvider.java:337)
        at org.openhab.habdroid.ui.MapViewHelper.createViewHolder(MapViewHelper.kt:55)
        at org.openhab.habdroid.ui.WidgetAdapter.onCreateViewHolder(WidgetAdapter.kt:187)
        at org.openhab.habdroid.ui.WidgetAdapter.onCreateViewHolder(WidgetAdapter.kt:98)
        at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:7078)
        at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6235)
        at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118)
        at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114)
        at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2303)
        at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1627)
        at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
        at androidx.recyclerview.widget.LinearLayoutManager.scrollBy(LinearLayoutManager.java:1391)
        at androidx.recyclerview.widget.LinearLayoutManager.scrollVerticallyBy(LinearLayoutManager.java:1128)
        at androidx.recyclerview.widget.RecyclerView.scrollStep(RecyclerView.java:1841)
        at androidx.recyclerview.widget.RecyclerView$ViewFlinger.run(RecyclerView.java:5302)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:781)
        at android.view.Choreographer.doCallbacks(Choreographer.java:592)
        at android.view.Choreographer.doFrame(Choreographer.java:559)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:767)
        at android.os.Handler.handleCallback(Handler.java:739)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5597)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:984)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)

Here’s the relavant file in my app: https://github.com/openhab/openhab-android/blob/master/mobile/src/foss/java/org/openhab/habdroid/ui/MapViewHelper.kt#L55

Environment

If it’s a bug, version(s) of android this affects:

At least on api 22.

Version of osmdroid the issue relates to:

6.1.7

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 15 (1 by maintainers)

Commits related to this issue

Most upvoted comments

I’m using this patch on https://github.com/openhab/openhab-android, but gradle cannot resolve the snapshot:

diff --git a/mobile/build.gradle b/mobile/build.gradle
index 98f07343..1eb7dddb 100644
--- a/mobile/build.gradle
+++ b/mobile/build.gradle
@@ -17,6 +17,10 @@ buildscript {
         mavenCentral()
         google()
         jcenter()
+        maven{
+            url  'https://oss.sonatype.org/content/repositories/snapshots/'
+            name 'OSS-Sonatype'
+        }
     }
     dependencies {
         classpath "com.google.gms:google-services:4.3.3"
@@ -161,7 +165,7 @@ dependencies {
     }
     // MapView support
     fullImplementation "com.google.android.gms:play-services-maps:17.0.0"
-    fossImplementation "org.osmdroid:osmdroid-android:6.1.6"
+    fossImplementation "org.osmdroid:osmdroid-android:6.1.9-SNAPSHOT:debug@aar"

     // FCM
     fullImplementation "com.google.firebase:firebase-messaging:20.2.4"

Had to rollback to 6.1.6, as log is full of NPE.