Lucene을 사용하여 모바일 응용 프로그램을 개발 중입니다. 색인 파일을 포함하는 폴더가 있습니다. 응용 프로그램에서 이러한 인덱스 파일을 검색에 사용하려고합니다. Lucene Library는이 폴더의 경로가 읽기를 기대합니다. 이 폴더를 assets 폴더에 넣었습니다. 하지만이 폴더의 경로를 가져올 수 없습니다. Android 저장소 문서를 확인했습니다. 하지만 기존의 폴더를 외부 저장소에 추가하는 방법을 찾지 못했습니다. 외부 저장소에 추가하면 getExternalFilesDir()
으로 경로를 가져올 수 있습니다. 에뮬레이터를 사용하여 작업하고 있습니다.기존 폴더를 Android에 추가하고 사용하는 방법은 무엇입니까?
Directory dir = FSDirectory.open(Paths.get("path of index folder"));
IndexReader reader = DirectoryReader.open(dir);
searcher = new IndexSearcher(reader);
위의 코드 섹션은 폴더 경로를 직접 지정할 수 있으므로 Java SE 응용 프로그램에서 잘 작동합니다. 하지만 안드로이드에서는 에뮬레이터를 사용하여 작업하고 있습니다. 어떻게 안드로이드에서 인덱스 폴더의 경로를 줄 수 있습니까? 애플리케이션에서이 폴더를 어디에 배치해야합니까?
답해 주셔서 감사합니다. 인덱스 파일을 내부 저장소에 썼습니다. 나는 "getFilesDir(). toString()"을 사용하여 인덱스 폴더의 경로를 얻는다. 당신이 말했듯이, Java 1.8이 존재하기 때문에 Lucene은 현재 안드로이드에서 작업 중입니다. 참고 : Lucene 버전 7.0.1 SDK 26 – candreva