storesafe/cordova-sqlite-storage

Java 8 compatibility causes plugin crash

NeoLSN opened this issue · 3 comments

Currently Sqlite plugin will crash when closing app if app is built base on Java 8. Since cordova-android@7.0.0 is ready to support Java 8 now, this would be an issue for app.

io.sqlc.SQLitePlugin.onDestroy

java.lang.NoSuchMethodError: No virtual method keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView; in class Ljava/util/concurrent/ConcurrentHashMap; or its super classes (declaration of 'java.util.concurrent.ConcurrentHashMap' appears in /system/framework/core-libart.jar)

And this is the issue https://gist.github.com/AlainODea/1375759b8720a3f9f094

Currently Sqlite plugin will crash when closing app if app is built base on Java 8. Since cordova-android@7.0.0 is ready to support Java 8 now, this would be an issue for app.
io.sqlc.SQLitePlugin.onDestroy

java.lang.NoSuchMethodError: No virtual method keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView; in class Ljava/util/concurrent/ConcurrentHashMap; or its super classes (declaration of 'java.util.concurrent.ConcurrentHashMap' appears in /system/framework/core-libart.jar)

And this is the issue https://gist.github.com/AlainODea/1375759b8720a3f9f094

Thanks @NeoLSN for reporting this issue along with the gist with the suggested solution. I am treating this as a duplicate of #726, should be solved by the suggested solution. Thanks again!

On an old app using 2.0.2, the minimum upgrade required would be 2.1.3? @brodybits @NeoLSN

Sounds right. I generally do not support old versions and recommend that you upgrade to the latest, if possible. There have been quite a few major bug fixes including security and data integrity fixes.