驚くべきMytrackアップデートを見たことがあるかどうかは分かりませんが、kmlファイルをGoogle Earthアプリに送信し、Googleアプリ内に表示することができます(インストールされている場合はもちろん)。MyTracks(オープンソース)のようにkmlファイルをGoogle Earthに送信するにはどうすればよいですか?
ソースコードがあります:http://code.google.com/p/mytracks/source/browse/
が、私はそのようなことを達成するための方法を見つけることができません。
else if (playTrack) {
Intent intent = new Intent()
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK)
.putExtra(GOOGLE_EARTH_TOUR_FEATURE_ID, KmlTrackWriter.TOUR_FEATURE_ID)
.setClassName(GOOGLE_EARTH_PACKAGE, GOOGLE_EARTH_CLASS)
.setDataAndType(Uri.fromFile(new File(savedPath)), GOOGLE_EARTH_KML_MIME_TYPE);
startActivity(intent);
ハードコードされた方法は、このコードを与える:
Intent intent = new Intent()
.addFlags(
Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_NEW_TASK)
.putExtra("com.google.earth.EXTRA.tour_feature_id","tour")
.setClassName("com.google.earth", "com.google.earth.EarthActivity")
.setDataAndType(Uri.fromFile(new File("/sdcard/test.kml")),
"application/vnd.google-earth.kml+xml");
startActivity(intent);
しかし、上記のコードは、単純にこのコードよりも、同じ結果にパスが表示されます。
Intent mapIntent = new Intent(Intent.ACTION_VIEW);
Uri uri1 = Uri.parse("file:///sdcard/test.kml");
mapIntent.setData(uri1);
startActivity(Intent.createChooser(mapIntent, "Sample"));
私の目的は、「再生」を使用して同じ結果を得ることですトン。
Android 5から6への変更もありましたか?私のアプリはAndroid 5のGoogle EarthでKMLを開くことができます.Android 6では、Google Earthが開きますが、明らかにKMLファイルが届きませんでしたか? –