从自定义应用程序启动百度地图意图
Launching Baidu Map intent from custom app
在我的应用程序中,我提供了一个送货地址。当用户按下一个按钮时,它会启动一个 google 映射的意图,并将该地址作为参数。
String uri = String.format(Locale.ENGLISH, "google.navigation:q=" + shipmentAdress);
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse(uri));
startActivity(intent);
我想为无法访问 Google 地图但可以访问百度地图的中国客户做同样的事情。请记住,我没有 GPS 坐标,只有地址。
有谁知道我会怎么做?他们所有的文档都是中文的,他们的应用程序也是中文的,到目前为止,我只使用 Google 翻译。
我已经把它归结为 "baidumap://map/geocoder?src=openApiDemo&address="
之类的东西,但它通常是 returns 和错误(我想,我使用了错误的屏幕截图和 Pleco 的 OCR 来翻译它。)
最终想通了:
String uri = String.format(Locale.CHINA, "baidumap://map/navi?query=" + shipmentAdress);
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse(uri));
startActivity(intent);
尝试使用这个Intent
try {
Intent intent = Intent.parseUri("intent://map/marker?location=21.028399,105.790824&title=CV Cầu &content=Công viên vui chơi&src=yourCompanyName|yourAppName#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end", Intent.URI_INTENT_SCHEME);
if (intent.resolveActivity(getActivity().getPackageManager()) != null) {
startActivity(intent);
}
} catch (URISyntaxException e) {
e.printStackTrace();
}
在我的应用程序中,我提供了一个送货地址。当用户按下一个按钮时,它会启动一个 google 映射的意图,并将该地址作为参数。
String uri = String.format(Locale.ENGLISH, "google.navigation:q=" + shipmentAdress);
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse(uri));
startActivity(intent);
我想为无法访问 Google 地图但可以访问百度地图的中国客户做同样的事情。请记住,我没有 GPS 坐标,只有地址。
有谁知道我会怎么做?他们所有的文档都是中文的,他们的应用程序也是中文的,到目前为止,我只使用 Google 翻译。
我已经把它归结为 "baidumap://map/geocoder?src=openApiDemo&address="
之类的东西,但它通常是 returns 和错误(我想,我使用了错误的屏幕截图和 Pleco 的 OCR 来翻译它。)
最终想通了:
String uri = String.format(Locale.CHINA, "baidumap://map/navi?query=" + shipmentAdress);
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse(uri));
startActivity(intent);
尝试使用这个Intent
try {
Intent intent = Intent.parseUri("intent://map/marker?location=21.028399,105.790824&title=CV Cầu &content=Công viên vui chơi&src=yourCompanyName|yourAppName#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end", Intent.URI_INTENT_SCHEME);
if (intent.resolveActivity(getActivity().getPackageManager()) != null) {
startActivity(intent);
}
} catch (URISyntaxException e) {
e.printStackTrace();
}