android点击地址调用地图,Android 实现点击按钮 调用手机外部地图导航
//彈出Dialog 選擇外部地圖
private void setMap(){
final Dialog dia=new AlertDialog.Builder(mContext).create();
View view=LayoutInflater.from(mContext).inflate(R.layout.dialog_map, null);
dia.show();
dia.getWindow().setContentView(view);
TextView tv_baidu=(TextView) view.findViewById(R.id.tv_baidu);
TextView tv_quxiao=(TextView) view.findViewById(R.id.tv_quxiao);
TextView tv_gaode=(TextView) view.findViewById(R.id.tv_gaode);
//調用外部百度地圖
tv_baidu.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
baidu();
dia.dismiss();
}
});
//調用外部高德地圖
tv_gaode.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
gaoDe();
dia.dismiss();
}
});
//取消對話框
tv_quxiao.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dia.dismiss();
}
});
}
//調用外部高德地圖方法
private void gaoDe(){
if (Contacts.isAvilible(mContext, "com.autonavi.minimap")) {
try{
Intent intent = Intent.getIntent("androidamap://navi?sourceApplication=慧醫&poiname=我的目的地&lat="+終點緯度+"&lon="+終點經度+"&dev=0");
mContext.startActivity(intent);
} catch (URISyntaxException e)
{e.printStackTrace(); }
}else{
Toast.makeText(mContext, "您尚未安裝高德地圖", Toast.LENGTH_LONG).show();
Uri uri = Uri.parse("market://details?id=com.autonavi.minimap");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
mContext.startActivity(intent);
}
}
private void baidu(){
//起點經緯度
LatLng sLatLng=new LatLng(Double.parseDouble(MyApp.getWeidu()),Double.parseDouble(MyApp.getJingdu()));
//終點經緯度
LatLng eLatLng=new LatLng(Double.parseDouble(lat), Double.parseDouble(lng));
RouteParaOption para = new RouteParaOption();
para.startName("從這里開始");
para.startPoint(sLatLng);
para.endName(address);//起點位置
para.endPoint(eLatLng);
try {
BaiduMapRoutePlan.openBaiduMapDrivingRoute(para, this);
//BaiduMapNavigation.openBaiduMapNavi(para, this);
} catch (BaiduMapAppNotSupportNaviException e) {
e.printStackTrace();
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("您尚未安裝百度地圖app或app版本過低,點擊確認安裝?");
builder.setTitle("提示");
builder.setPositiveButton("確認", new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
OpenClientUtil.getLatestBaiduMapApp(mContext);
//BaiduMapNavigation.
}
});
builder.setNegativeButton("取消", new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
}
}
//dialog 布局dialog_map
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:orientation="vertical" >
android:id="@+id/tv_baidu"
android:layout_width="200dp"
android:layout_height="40dp"
android:gravity="center"
android:layout_gravity="center"
android:text="百度地圖"
android:textColor="#006CD8"
android:textSize="16sp" />
android:layout_width="100dp"
android:layout_height="0.5dp"
android:background="@color/line"
android:paddingLeft="5dp"
android:layout_gravity="center_horizontal"
android:paddingRight="5dp"
/>
android:id="@+id/tv_gaode"
android:layout_width="200dp"
android:layout_height="40dp"
android:gravity="center"
android:layout_gravity="center"
android:text="高德地圖"
android:textColor="#006CD8"
android:textSize="16sp" />
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/line" />
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal" >
android:id="@+id/tv_quxiao"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="取消"
android:layout_gravity="center"
android:textColor="#006CD8"
android:textSize="18sp" />
總結
以上是生活随笔為你收集整理的android点击地址调用地图,Android 实现点击按钮 调用手机外部地图导航的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机专业论文要交源代码吗,计算机毕业论
- 下一篇: Chrome浏览器最新改版 Androi