Android Question sqlCipher error

Discussion in 'Android Questions' started by mc73, Jun 12, 2018.

  1. mc73

    mc73 Well-Known Member Licensed User

    Upon initializing a new cipher db, I get:

    Code:
    *** Service (starter) Create ***
    ** 
    Service (starter) Start **
    ** 
    Activity (main) Create, isFirst = true **
    java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip 
    file "/data/app/myapp=/base.apk"],nativeLibraryDirectories=[/data/app/myapp==/lib/arm64, /system/fake-libs64, /data/app/myapp==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]]] couldn't find "libsqlcipher.so"
       at java.lang.Runtime.loadLibrary0(Runtime.java:1011)
       at java.lang.System.loadLibrary(System.java:
    1657)
       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 anyhwheresoftware.b4a.objects.sqlcipher.SQLCipher.Initialize(
    SQLCipher.java:51)
       at java.lang.reflect.Method.invoke(Native Method)
       at anywheresoftware.b4a.shell.Shell.runVoidMethod(
    Shell.java:755)
       at anywheresoftware.b4a.shell.Shell.raiseEventImpl(
    Shell.java:345)
       at anywheresoftware.b4a.shell.Shell.raiseEvent(
    Shell.java:249)
       at java.lang.reflect.Method.invoke(Native Method)
       at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:
    139)
       at biz.logismic.taxisapp.main.afterFirstLayout(main.java:
    104)
       at biz.logismic.taxisapp.main.access$
    000(main.java:17)
       at biz.logismic.taxisapp.main$WaitForLayout.run(main.java:
    82)
       at android.os.Handler.handleCallback(Handler.java:
    789)
       at android.os.Handler.dispatchMessage(Handler.java:
    98)
       at android.os.Looper.loop(Looper.java:
    164)
       at android.app.ActivityThread.main(ActivityThread.java:
    6938)
       at java.lang.reflect.Method.invoke(Native Method)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:
    327)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:
    1374)
    ** 
    Activity (main) Resume **
    An error occurred:
    (Line: 
    177) sqlite.Initialize(File.DirInternal,"dats.db",Tru
    java.lang.ClassCastException: java.lang.String cannot be cast 
    to java.lang.Boolean
    Any help will be appreciated.
     
  2. RichardN

    RichardN Active Member Licensed User

    Is that 'sqlite.Initialize' statement in the log as written in the code? Looks like you are passing a string where a boolean variable is required?
     
  3. mc73

    mc73 Well-Known Member Licensed User

    I noticed that too. I checked the syntax it's fine.
     
  4. Erel

    Erel Administrator Staff Member Licensed User

    Are you testing it on a real device?
     
  5. mc73

    mc73 Well-Known Member Licensed User

    Yes.
    However when testing with a sample app, everything worked as expected.
    Oh, well, after noticing that currently there's no sqlcipher for ios I'll just switch to encrypted objects for compatibility reasons.
     
  6. Erel

    Erel Administrator Staff Member Licensed User

    Check B4XEncryption. It is compatible with B4i iEncryption (B4i method might pad the result with 0 bytes).
     
    mc73 likes this.
  7. mc73

    mc73 Well-Known Member Licensed User

    This exactly what I'll do, thank you :)
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice