Closed
Description
Description
App crashes while unlocking a vault using Android 7.0/7.1 due to ThreadLocal.withInitial(...)
requires API level 26, our min. is currently 24
System Setup
- Android version: 7.0/7.1, later is not affected
- Cryptomator version: 1.6.0-beta1
- Cloud type: x
Steps to Reproduce
Unlock vault
Expected Behavior
Vault gets unlocked
Actual Behavior
App crashes
Reproducibility
Always
Additional Information
https://issuetracker.google.com/issues/160484830?pli=1
org.cryptomator E/AndroidRuntime: FATAL EXCEPTION: android_2
Process: org.cryptomator, PID: 3031
java.lang.NoSuchMethodError: No static method withInitial(Ljava/util/function/Supplier;)Ljava/lang/ThreadLocal; in class Ljava/lang/ThreadLocal; or its super classes (declaration of 'java.lang.ThreadLocal' appears in /system/framework/core-oj.jar)
at org.cryptomator.siv.SivMode.<init>(SivMode.java:54)
at org.cryptomator.siv.SivMode.<init>(SivMode.java:42)
at org.cryptomator.cryptolib.v1.FileNameCryptorImpl$1.initialValue(FileNameCryptorImpl.java:30)
at org.cryptomator.cryptolib.v1.FileNameCryptorImpl$1.initialValue(FileNameCryptorImpl.java:27)
at java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:160)
at java.lang.ThreadLocal.get(ThreadLocal.java:150)
at org.cryptomator.cryptolib.v1.FileNameCryptorImpl.hashDirectoryId(FileNameCryptorImpl.java:44)
at org.cryptomator.data.cloud.crypto.CryptoImplDecorator.dirHash(CryptoImplDecorator.kt:94)
at org.cryptomator.data.cloud.crypto.CryptoImplDecorator.createDirIdInfoFor(CryptoImplDecorator.kt:361)
at org.cryptomator.data.cloud.crypto.CryptoImplVaultFormat7.createDirIdInfo(CryptoImplVaultFormat7.kt:254)
at org.cryptomator.data.cloud.crypto.CryptoImplDecorator.dirIdInfo(CryptoImplDecorator.kt:356)
at org.cryptomator.data.cloud.crypto.CryptoImplVaultFormat7.list(CryptoImplVaultFormat7.kt:136)