1
에 포함됩니다. .apk와 함께 포함 할 수 있습니까? 시장에서 앱을 다운로드 한 후 내 용도가 있습니다. 앱을 열면 모든 타일과 모든 확대/축소 수준이리스 국가 1 개국 (어쩌면 크지는 않음)에 표시되어야합니다. PS. 나는 OSM을 사용한다. PS.2 내 영어 문법에 대해 사과드립니다.오프라인지도는 .png 파일에 타일이있는 경우
편집 : 한 국가가 너무 클 수 있습니다. 한 주 또는 한 주 및 일부 확대/축소 수준 일 수도 있습니다.
EDIT2 : 이것은 내가 사용하는 기능이며 inputstream에 대해 할 수있는 일은 대단히 감사합니다.
AssetManager assetManager = getAssets();
try {
files = assetManager.list("Map");
} catch (IOException e) {
Log.e("tag", e.getMessage());
}
try {
firstField = (EditText) findViewById(R.id.firstId);
firstField.setText(Integer.toString(files.length)
+ " file. File name is " + files[0]);
} catch (Exception e) {
e.printStackTrace();
}
try {
inputStream = assetManager.open("Map/mapnik.zip");
// String s = null;
// s = readTextFile(inputStream);
// secondField = (EditText) findViewById(R.id.secondId);
// secondField.setText(s);
} catch (IOException e) {
Toast.makeText(this, "Error" + e.toString(), Toast.LENGTH_SHORT)
.show();
}
빠른 답장을 보내 주셔서 감사합니다. 내가해야 할 일은 tileManager를 pack하는 assetManager를 사용하는 것입니다. onCreate에서 app을 열면 getAsset()을 읽고 sdcard에 다시 써야합니까? 나는 이해 했는가? – majorl3oat
거의. 애셋 관리자를 사용하여 APK에서 애셋을 가져 오지 않으면 apk를 빌드하기 전에 애셋 폴더에 파일을 저장하기 만하면됩니다. 빌드 프로세스에 의해 자동으로 압축됩니다. 또한 자산을 사용하기 위해 반드시 SD 카드에 복사 할 필요는 없습니다. 직접 사용할 수 있습니다. InputStream에 대해서 열 수가 있습니다. – mah
죄송합니다. 몇 일 전에 오프라인 상태였습니다. 나는 당신의 의견을 완전히 이해합니다. 하지만 Mapnik.zip 파일이 있고이 파일은/sdcard/osmdroid에서 압축을 풀 필요가 있습니다. 자산에서이 zip 파일을 가져온 후이 파일을 내가 언급 한 디렉토리에 압축을 풀 수 있습니까? 나는 이것에 대해 구글과 입력 스트림에 의해서만 txt 파일을 읽을 발견. 고마워요. – majorl3oat