제가 sqlitebrower를 사용해 db 파일을 만들고 이를 안드로이드 내부 파일 시스템에 복사해서 사용하려고 합니다. 해당 파일은 assets에 넣어두고 assetmanager를 통해 복사하려고 하고 있습니다. 그래서 넷 검색을 통해 아래의 코드를 제 앱에 첨가했는데요.

 String dir="data/data/패키지 이름";
		String db_name="dictionary.db";
		File folder = new File(dir+"databases");
		folder.mkdirs();
		File outfile = new File(dir+"databases/"+db_name);
		if(outfile.length() <= 0) {
			AssetManager assetManager = getResources().getAssets();
			try {
				InputStream is = assetManager.open(db_name, AssetManager.ACCESS_BUFFER);
				long filesize = is.available();
				byte[] tempdata = new byte[(int)filesize];
				is.read(tempdata);
				is.close();
				outfile.createNewFile();
				FileOutputStream fo = new FileOutputStream(outfile);
				fo.write(tempdata);
				fo.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}

이 부분을 oncreate 메소드 안에 포함시키고 앱을 만들어 실행하였습니다. 그런데 문제가  앱 실행 후 ddms를 이용해 파일 시스템을 본 결과 assets의 파일이 복사되지 않음은 물론이거니와 위 코드에서 mkdirs()를 이용해 data/data 밑에 databases라는 폴더가 생성되게 했는데 폴더도 생성이 안되어 있습니다. 에러나 exception은 전혀 일어나지 않았구요. 아예 이 부분이 무시당한 채 다른 부분만 실행된 것으로 보입니다. 비슷한 경우가 있는가 찾아봤습니다만 찾을 수 없어서 혹시 어떤 부분이 문제가 되는지 아시거나 경험해보신 분 있으면 조언 부탁드리겠습니다. 

공지사항을 다 읽었습니다.