Aby poprawnie korzystać z SQL Cipher dla Androida, musisz użyć zewnętrznych bibliotek i zmienić część kodu, który współdziała z Twoim DB.
Te muszą być najpierw dodany do projektu (w folderze libs). Patrz tutaj, aby uzyskać te: http://sqlcipher.net/sqlcipher-for-android/
drugie trzeba dodać plik do folderu icudt4dl.zip swoje aktywa, w tym Zip jest dostarczany z bibliotekami SQL Cipher.
Kliknij prawym przyciskiem myszy swój projekt, przejdź do właściwości, a następnie ścieżka kompilacji Java, a następnie dołącz biblioteki takie jak commons-codec.jar, guava-r09.jar, sqlcipher.jar. Gdy to zrobisz, zrób kompilację czystą.
Następnie w ciągu swojej aplikacji, zamiast importować android.database.sqlite, będzie import import net.sqlcipher.database
zmienić dowolny kod, który współdziała z DB, np:
SQLiteDatabase. loadLibs (kontekst);
String dbPath = this.getDatabasePath ("dbname.db"). GetPath();
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase (dbPath, "dbPassword", null);
Sprawdź, czy baza danych jest szyfrowana, przejdź do DDMS perspektywy w Eclipse, kliknij kartę Plik Explorer, przejdź do danych/data /, kliknij na plik .db i wybierz się plik urządzenia, zapisz go na pulpicie i otwórz go za pomocą edytora tekstu. Poszukaj wartości tekstowych wstawianych do bazy danych, jeśli nadal możesz je przeczytać, coś poszło nie tak.
Warto również zapoznać się z samouczkami SQLite przed wdrożeniem SQL Cipher. Dobrym jeden wymienione poniżej: Android sqlite database - where do i start as the tutorial has gone for notepad?
Aktualizacja
Ta odpowiedź jest przestarzała i teraz Eclipse jest praktycznie przestarzałe Android Development. Niedawno musiałem zbudować aplikację przy użyciu SQLCipher w Android Studio na Androida 5 + 6 i to są kroki, które podążyłem.
W Android Studio można dołączyć SQLCipher jako zależność w pliku kompilacji.Zaktualizować zależności w kompilacji Gradle zawierać następujący wiersz:
dependencies{
compile 'net.zetetic:android-database-sqlcipher:[email protected]'
}
Możesz być na bieżąco z wersjami tutaj: https://mvnrepository.com/artifact/net.zetetic/android-database-sqlcipher
moja aplikacja nie będzie budować, chyba że usunęła SQLCipher pliki w lib folder i folder zasobów, ale potem działało zgodnie z oczekiwaniami. Po wprowadzeniu tych zmian uruchom kompilację/wyczyść i sprawdź, czy działa.
Te same czynności, o których mowa powyżej ze zmianą kodu, nadal trwają.
Zrobiłem warsztat konferencyjny na temat SQLCipher i związanych z nim kwestii bezpieczeństwa (http://www.slideshare.net/commonsguy/sqlcipher-for-android) i mam dwa rozdziały w mojej książce na temat SQLCipher, w tym samouczek, którego użyłem do część praktyczna tego warsztatu (http://commonsware.com/Android). – CommonsWare
Czy masz konkretne pytania, które są niejasne? –