안녕하세요.
이클립스에서 안드로이드로 마이그레이션을 진행중입니다.
그런데 궁금한점이 분명 이클립스에서 SQLite를 사용할때는 이상없이 잘 사용하고 있었는데
안드로이드 스튜디오에서 빌드에러를 잡고 컴파일을 진행하는데
java.lang.RuntimeException: Unable to resume activity {com.sam4s.atom/com.sam4s.atom.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'net.sqlcipher.Cursor net.sqlcipher.database.SQLiteDatabase.rawQueryWithFactory(net.sqlcipher.database.SQLiteDatabase$CursorFactory, java.lang.String, java.lang.String[], java.lang.String)' on a null object reference
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'net.sqlcipher.Cursor net.sqlcipher.database.SQLiteDatabase.rawQueryWithFactory(net.sqlcipher.database.SQLiteDatabase$CursorFactory, java.lang.String, java.lang.String[], java.lang.String)' on a null object reference
이러한 에러가 발생합니다. 왜 NullPointerException이 발생하는지도 잘 모르겠습니다.
또한 net.sqlcipher~~~ 오류가 발생하는데 sqlcipher를 꼭 사용해야 하는건지도 궁금합니다.
sqlcipher를 사용해야 한다면 API Level을 올리면서 안드로이드 정책상 꼭 사용해야 하는 것인지 아니면 회피가 가능한건지 궁금합니다.
(sqlcipher는 DataBase 암호화를 도와주는 작업으로 알고 있습니다.)
에러코드에서 Implementation net.sqlcipher를 해야한다는데.이게 과연 꼭 필요한건지 궁금합니다.
또한 왜 Nullpointer인지도 ... 제가 아직 초보라 조금만 자세히 알려주시면 감사하겠습니다.
감사합니다.