UnsatisfiedLinkError on ver3.5.9 android

First of all, I would like to thank the team for providing this wonderful library.

I have used sqlcipher 3 android for several years.
Now I use the version 3.5.9
And recently got UnsatisfiedLinkError in Play store Android vitals.

Wiko U FEEL(P6601AE)Android 6.0
BMobile AX921(Bmobile_AX921)Android 6.0

Caused by: java.lang.UnsatisfiedLinkError:
at java.lang.Runtime.loadLibrary (Runtime.java:367)
at java.lang.System.loadLibrary (System.java:1076)
at net.sqlcipher.database.SQLiteDatabase$1.loadLibraries (SQLiteDatabase.java:213)
at net.sqlcipher.database.SQLiteDatabase.loadLibs (SQLiteDatabase.java:230)
at net.sqlcipher.database.SQLiteDatabase.loadLibs (SQLiteDatabase.java:209)
at net.sqlcipher.database.SQLiteDatabase.loadLibs (SQLiteDatabase.java:202)

at net.sqlcipher.database.SQLiteDatabase.loadLibs(context);

implementation ‘net.zetetic:android-database-sqlcipher:3.5.9@aar’

I can’t grasp the cause.
Should I migrate to version 4?

Sorry for poor English.
Any help would be greatly appreciated.

Hi @apps_ambertabby

Are you using ProGuard by chance? If so, you might try disabling that and retesting your application on those devices. Alternatively, if you are using ABI splits, that could be the cause depending on the CPU target’s your application is supporting.

The latest version of SQLCipher for Android is 4.1.13 which offers many security and feature improvements, but will likely require some changes to your application in order to update existing databases. You may find this post helpful if you decide to upgrade.

Thank you for your reply.
Yes, I use ProGuard.

-keep class net.sqlcipher.** { *; }

My app has tens of thousands of users.
Among them, only two people have had this problem recently.
I can’t reproduce this issue in my environment.

I don’t use ABI splits, but I use Android App Bundle.
Is there a problem with the Android App Bundle?
Is there a workaround for that?

Thank you for reading this to the end.

Hi @apps_ambertabby,

Unfortunately, I cannot say as we do not use that. A few follow-up questions:

  • Did you recently start using that?
  • Do you have those devices to test on?
  • Are you able to revert your deployment strategy to not use App Bundle to see if that addresses your issue?

Thank you for quick reply.

  • Did you recently start using that?

I am using the Android App Bundle since November 1, 2018

  • Do you have those devices to test on?

I don’t have those device that crashed.

  • Are you able to revert your deployment strategy to not use App Bundle to see if that addresses your issue?

Unfortunately, I don’t think so.

I forgot to mention, but it may have been since I started using Relinker.
https://github.com/KeepSafe/ReLinker

Thanks again.

  • Are you able to revert your deployment strategy to not use App Bundle to see if that addresses your issue?

We tested for a few months without using the app bundle.
During that time, no problem happened.

We found a way that seems to be a solution.

https://issuetracker.google.com/issues/111233819

Thank you