마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

openOrCreateDatabase 질문입니다.

0 추천
안녕하세요.

SQLiteDatabase db;를 선언한 뒤

db = openOrCreateDatabase(dbFileName, MODE_WORLD_WRITEABLE, null);

을 사용하여 db를 생성하거나 열고 싶은데 문제가 있어 막혔습니다.

 

첫 번째 문제는, openOrCreateDatabase 메소드를

MainActivity.java가 아닌, 별도의 클래스에서 사용하고 싶은데 이게 안되고

 

두 번째 문제는, MainActivity.java에서 사용하더라도, MODE_WORLD_WRITEABLE 부분이

가로줄(strike line)이 쫙 그어져있네요. 정상 실행은 되는데 Warning이 떠서 찝찝하군요;;

 

 

어떻게 고칠 수 있을까요? 도와주세요 !!
黒崎圭一 (120 포인트) 님이 2014년 1월 10일 질문

1개의 답변

0 추천

MODE_WORLD_WRITEABLE 라는 상수값이 deprecated 되어서 가로줄이 그어져서 나오는거구요

deprecated 되었다는 의미는 더이상 해당 기능에 대해 보장이나 기술지원하지 않겠다는 뜻입니다.

아마 API Level 17 에서 deprecated 되었기 때문에 그 이하 버전에서는 큰 이상 없이 잘 작동할 거라고

보이기 때문에 크게 신경안쓰셔도 되지만, 계속 마음에 걸리신다면 대체할 수 있는 다른 값을

추가적으로 검색해보시기 바랍니다.

 

그리고 Activity가 아닌 별도의 클래스에서 openOrCreateDatabase 메소드를 사용하고 싶으시다면

별도의 액티비티에서 별도의 클래스에 context를 인자로 넘기셔서 context.openOrCreateDatabase

하시면 사용이 가능합니다.

 

Gradler (109,780 포인트) 님이 2014년 1월 10일 답변
...