百度地图

主要步骤
第一步
进入开放平台注册开发账号
第二步
下载对应sdk
第三步
创建应用 获取SHA1(开发版和发布版)
第四步
集成(添加jar和so动态库文件)清单配置
第五步
调用API

1.创建应用
//获取开发版 :
双击SigningReport 得到开发版SHAl的

//获取发布版 :
Build ---> Generate SSingened AK -->
点击Create new....
key store path :工程所放的位置
Password,Confirm 都是密码统一的
Alias ,First and Last Name :起名

之后点击Next 即可
在Terminal 中进行获取
keytool -v -list -keystore yn.jks
输入密钥库口令:123456(Password,Confirm 和这里的一样)
获取到发布版的SHAl

提交之后得到Key值

就开始在代码中实现咯~~~~~~~
第一步:创建并配置工程(具体方法参见工程配置部分的介绍);
第二步:在AndroidManifest中添加开发密钥、所需权限等信息;
(1)在application中添加开发密钥
< application > < meta - data android : name = "com.baidu.lbsapi.API_KEY" android : value = "开发者 key" /> </ application >
2)添加所需权限
< uses - permission android : name = "android.permission.ACCESS_NETWORK_STATE" /> < uses - permission android : name = "android.permission.INTERNET" /> < uses - permission android : name = "com.android.launcher.permission.READ_SETTINGS" /> < uses - permission android : name = "android.permission.WAKE_LOCK" /> < uses - permission android : name = "android.permission.CHANGE_WIFI_STATE" /> < uses - permission android : name = "android.permission.ACCESS_WIFI_STATE" /> < uses - permission android : name = "android.permission.GET_TASKS" /> < uses - permission android : name = "android.permission.WRITE_EXTERNAL_STORAGE" /> < uses - permission android : name = "android.permission.WRITE_SETTINGS" />
第三步,在布局xml文件中添加地图控件;
< com. baidu . mapapi . map . MapView android : id = "@+id/bmapView" android : layout_width = "fill_parent" android : layout_height = "fill_parent" android : clickable = "true" />


//代码中
public class MainActivity extends AppCompatActivity {

private MapView mMapView ;
@Override
protected void onCreate (Bundle savedInstanceState) {
super .onCreate(savedInstanceState) ;
//在使用SDK各组件之前初始化context信息,传入ApplicationContext
//注意该方法要再setContentView方法之前实现
SDKInitializer. initialize (getApplicationContext()) ;
setContentView(R.layout. activity_main ) ;
//获取地图控件引用
mMapView = (MapView) findViewById(R.id. bmapView ) ;
//获取地图
BaiduMap map = mMapView .getMap() ;
//普通地图
// map.setMapType(BaiduMap.MAP_TYPE_NORMAL);
//卫星地图
// map.setMapType(BaiduMap.MAP_TYPE_SATELLITE);
//开启交通地图
// map.setTrafficEnabled(true);
//开启热力地图
map.setBaiduHeatMapEnabled( true ) ;
//定义Maker坐标
LatLng latlng = new LatLng( 39.963175 , 116.400244 ) ;
//构建Maker图标
BitmapDescriptor bitmapDescriptor = BitmapDescriptorFactory. fromResource (R.drawable. icon_gcoding ) ;
//第一种方式直接显示地图标注
OverlayOptions options = new MarkerOptions().position(latlng).icon(bitmapDescriptor).draggable( true ) ;
map.addOverlay(options) ;
//--------------------------------------------------------------------------
final LatLng latlngA =new LatLng(39.963175, 116.300244);
BitmapDescriptor bitmapDescriptor1 = BitmapDescriptorFactory. fromResource (R.drawable. icon_marka );
MarkerOptions options1 = new MarkerOptions().position(latlngA).icon(bitmapDescriptor1).zIndex(9).draggable(true);
//第二种方式添加掉下动画效果
options1.animateType(MarkerOptions.MarkerAnimateType. drop );
//第二种方式添加生长动画效果
// options1.animateType(MarkerOptions.MarkerAnimateType.grow);
//转换
final Marker mMarkerA = (Marker) ( map.addOverlay(options1));
//--------------------------------------------------------------
//点击跳转
map.setOnMarkerClickListener(new BaiduMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
//判断对应Marker进行跳转
if(mMarkerA ==marker){
Intent intent =new Intent(MainActivity.this,OthActivity.class);
startActivity(intent);
}
return true;
}
});
//调用BaiduMap对象的setOnMarkerDragListener方法设置marker拖拽的监听
map.setOnMarkerDragListener(new BaiduMap.OnMarkerDragListener() {
@Override
//拖拽中
public void onMarkerDrag(Marker marker) {

}

@Override
//拖拽结束
public void onMarkerDragEnd(Marker marker) {
LatLng position = marker.getPosition();
//纬度
double latitude = position.latitude;
//经度
double longitude = position.longitude;
//打印出拖拽后的经度纬度
Log. i ("xxxx",latitude+","+longitude);
}

@Override
//开始拖拽
public void onMarkerDragStart(Marker marker) {

}
});

}
@Override
protected void onDestroy() {
super.onDestroy();
//在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
mMapView.onDestroy();
}
@Override
protected void onResume() {
super.onResume();
//在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
mMapView.onResume();
}
@Override
protected void onPause() {
super.onPause();
//在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
mMapView.onPause();
}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值