オフライン マップを操作する Android アプリを開発しようとしています。おかげで、マップを作成し、マップをオフラインで読み込むことができました。
今、ルートを作成しようとしていますが、その方法をよく理解していません。
私が正しければ、ここで説明されているようなノード、ウェイ、リレーションを含むosmファイルを使用する必要があります。
私の質問は、このファイルのデータをアプリにロードするにはどうすればよいですか? このデータをアプリにロードする方法の例を見つけることができませんでした。私が発見したのは、この osm ファイルをより小さな pbf ファイルに変換できることだけです。
このosmデータの使い方を誰か説明してもらえますか? 誰かが私に例を挙げてもらえますか? それとも私は間違ったアプローチを取っていますか?
このコードは 700kb の OSM ファイルをロードしますが、私のものは 99MB あるのでロードしません。
// create the factory
SAXParserFactory factory = SAXParserFactory.newInstance();
// create a parser
SAXParser parser = factory.newSAXParser();
// create the reader (scanner)
XMLReader xmlreader = parser.getXMLReader();
// assign our handler
xmlreader.setContentHandler(osmHandler);
xmlInputStream = context.getResources().openRawResource(R.raw.lisboa);
//xmlInputStream = context.getResources().openRawResource(R.raw.milano);
//xmlInputStream = new FileInputStream(new File(Environment.getExternalStorageDirectory()+File.separator+"MyMaps","Lissabon.osm"));
xmlreader.parse(new InputSource(xmlInputStream));
osmHandler.isLoaded=true;
osmbonuspack_v3.4 と osmdroid_3.0.10 を使用しています。
ありがとう