sql >> Database teknologi >  >> RDS >> SQLite

Hvordan kommer man i gang med SQLCipher til Android?

For korrekt at bruge SQL Cipher til Android skal du bruge eksterne biblioteker og ændre noget af koden, som interagerer med din DB.

  1. Disse skal først tilføjes til dit projekt (indenfor mappen libs.) Se her for at få disse:http://sqlcipher.net/sqlcipher-for-android/

  2. For det andet skal du tilføje filen icudt4dl.zip til din aktiver-mappe, denne zip kommer med SQL Cipher-bibliotekerne.

  3. Højreklik på dit projekt, gå til egenskaber og derefter Java build-sti og inkluder biblioteker såsom commons-codec.jar, guava-r09.jar, sqlcipher.jar. Når dette er gjort, skal du lave en build-rengøring.

  4. Så i din app vil du i stedet for at importere android.database.sqlite importere import net.sqlcipher.database

  5. Ændre enhver kode, der interagerer med DB, eksempel:

    SQLiteDatabase.loadLibs(context);

    String dbPath =this.getDatabasePath("dbname.db").getPath();

    SQLiteDatabase db =SQLiteDatabase.openOrCreateDatabase(dbPath,"dbPassword", null);

  6. Bekræft, at databasen er krypteret, gå til DDMS-perspektiv i Eclipse, klik på filstifinderfanen, naviger til data/data/, klik på .db-filen og vælg hent enhedsfil, gem den på dit skrivebord og åbn den med en tekst redaktør. Se efter de almindelige tekstværdier, du har indsat i din database, hvis du stadig kan læse dem, er noget gået galt.

Det kan også være en god idé at tjekke nogle SQLite-tutorials, før du implementerer SQL Cipher. En god en er nævnt her:Android sqlite-database - hvor starter jeg, da vejledningen er gået til notesblok?

Opdater

Dette svar er forældet nu, og Eclipse er praktisk talt forældet til Android-udvikling. Jeg var for nylig nødt til at bygge en app ved hjælp af SQLCipher på Android Studio til Android 5 + 6, og dette er de trin, jeg fulgte.

I Android Studio kan du inkludere SQLCipher som en afhængighed i din build-fil. Opdater dine afhængigheder i build gradle til at inkludere følgende linje:

dependencies{
    compile 'net.zetetic:android-database-sqlcipher:[email protected]'
}

Du kan holde dig opdateret med versioner her:https://mvnrepository.com/artifact/net.zetetic/android-database-sqlcipher

Min app ville ikke bygge, medmindre jeg fjernede SQLCipher-filerne i lib-mappen og asset-mappen, men efter det virkede det som forventet. Når du har foretaget disse ændringer, skal du køre en build/clean og kontrollere, om det virker.

De samme trin nævnt ovenfor med at ændre din kode gælder stadig.



  1. NYHEDER:Ny Microsoft SQL Server Native Client 18 udgivet!

  2. Hvordan Log() virker i PostgreSQL

  3. Hvordan CONCAT_WS() virker i PostgreSQL

  4. Den mest effektive måde at gemme IP-adresse i MySQL