百度地图

首先我们要打开他们的网页

http://lbsyun.baidu.com/

找到AndroidSDK开发平台

在这里插入图片描述
在这里插入图片描述

创建我们的Ak值
在这里插入图片描述
在这里插入图片描述
发布版SHA1值怎么获取
在这里插入图片描述
双击点击SingningReport
在这里插入图片描述
包名
在这里插入图片描述
填写完就能生成AK值
在这里插入图片描述
开发包的下载
在这里插入图片描述
根据自己需求来选择然后下载开发包
在这里插入图片描述
下载完之后我们就可以看到我们的压缩包里的一些东西
在这里插入图片描述

我们把这些全部复制到libs下  BaiduLBS_Android.Jar 导包

在这里插入图片描述
接下来我们在src->main->创建一个jinLibs
在这里插入图片描述

创建完之后添加到我们build.gradle的android{} 下


sourceSets {
    main {
        jniLibs.srcDir 'libs'
    }
} 

然后还要添加,如果有就不用添加

dependencies {
implementation files('libs/BaiduLBS_Android.jar')
}

添加完之后 我们编译一下我们的项目

在这里插入图片描述
(1)在application中添加开发密钥(AK)

<application>  
    <meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="开发者 key" />  
<application>

(2)添加所需权限

注意: 权限应添加在 appliction 之外,如添加到appliction 内部,会导致无法访问网络,不显示地图。
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
//获取设备网络状态,禁用后无法获取网络状态
<uses-permission android:name="android.permission.INTERNET"/> 
//网络权限,当禁用后,无法进行检索等相关业务
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
//读取设备硬件信息,统计数据
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /> 
//读取系统信息,包含系统版本等信息,用作统计
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
//获取设备的网络状态,鉴权所需网络代理
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
//允许sd卡写权限,需写入地图数据,禁用后无法显示地图
<uses-permission android:name="android.permission.WRITE_SETTINGS" /> 
//获取统计数据
<uses-permission android:name="android.permission.CAMERA" />  
//使用步行AR导航,配置Camera权限

在布局xml文件中添加地图控件;

<com.baidu.mapapi.map.MapView  
    android:id="@+id/bmapView"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
    android:clickable="true" />

在应用程序创建时初始化 SDK引用的Context 是全局变量;

public class DemoApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        //在使用SDK各组件之前初始化context信息,传入ApplicationContext   
        SDKInitializer.initialize(this);
        //自4.3.0起,百度地图SDK所有接口均支持百度坐标和国测局坐标,用此方法设置您使用的坐标类型.
        //包括BD09LL和GCJ02两种坐标,默认是BD09LL坐标。
        SDKInitializer.setCoordType(CoordType.BD09LL);
    }
}

创建地图Activity,管理地图生命周期,定位坐标;

public class MainActivity extends Activity {  
    private MapView mMapView = null;  
    private  BaiduMap mBaiduMap;
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);    
        setContentView(R.layout.activity_main);  
        //获取地图控件引用  
        mMapView = (MapView) findViewById(R.id.bmapView);  
        mBaiduMap = bmapView.getMap();
        
        mBaiduMap.setMyLocationEnabled(true);
        MyLocationData locationData = new MyLocationData.Builder()
                //40.0481292144,116.3065021771
                .latitude(40.0481292144)
                .longitude(116.3065021771)
                .build();
// 设置定位数据
        mBaiduMap.setMyLocationData(locationData);
        BitmapDescriptor marker = BitmapDescriptorFactory
                .fromResource(R.drawable.icon_openmap_focuse_mark);
        MyLocationConfiguration config = new MyLocationConfiguration(
                MyLocationConfiguration.LocationMode.FOLLOWING, true, marker);
        mBaiduMap.setMyLocationConfigeration(config);
    }  
    @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();  
        }  
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值