• 如何使用百度地图API


    一、申请密钥

    1、先用eclipse创建一个Android工程
    2、在百度api官网上申请一个密钥,链接:http://lbsyun.baidu.com/apiconsole/key
    二、工程配置
    1、将baidumapapi_vX_X_X.jar拷贝到工程libs目录下,将libBaiduMapSDK_vX_X_X.so拷贝到libsarmeabi
    目录下,拷贝完成后,如下所示:
    注:liblocSDK3.so和locSDK_3.1.jar为百度定位SDK所使用资源,开发者可根据实际需求自行添加。

    2、右键工程属性,在Libraries中选择“Add External JARs”,选择baidumapapi_vX_X_X.jar,确定返回
    配置好以上步骤,即可使用百度地图了
     
    三、显示百度地图
    1、在android配置清单文件中AndroidManifest.xml添加开发密钥和所需权限
    1. <application><meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="开发者 key"/></application>
     
    所需权限
    1. <uses-permissionandroid:name="android.permission.GET_ACCOUNTS"/>
    2. <uses-permissionandroid:name="android.permission.USE_CREDENTIALS"/>
    3. <uses-permissionandroid:name="android.permission.MANAGE_ACCOUNTS"/>
    4. <uses-permissionandroid:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
    5. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
    6. <uses-permissionandroid:name="android.permission.INTERNET"/>
    7. <uses-permissionandroid:name="com.android.launcher.permission.READ_SETTINGS"/>
    8. <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
    9. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
    10. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
    11. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    12. <uses-permissionandroid:name="android.permission.BROADCAST_STICKY"/>
    13. <uses-permissionandroid:name="android.permission.WRITE_SETTINGS"/>
    14. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/> 
    2、在xml布局中添加地图控件
    1. <com.baidu.mapapi.map.MapView
    2. android:id="@+id/bmapView"
    3. android:layout_width="fill_parent"
    4. android:layout_height="fill_parent"
    5. android:clickable="true"/>
    ​3、在应用程序创建时初始化,SDK引用的全局变量Context
     
     注意:在SDK各功能组件使用之前都需要调用

    SDKInitializer.initialize(getApplicationContext());,因此我们建议该方法放在Application的初始化方法中

    1. publicclassMyApplicationextendsApplication{
    2. @Override
    3. publicvoid onCreate(){
    4. super.onCreate();
    5. //在使用SDK各组件之前初始化context信息,传入ApplicationContext
    6. SDKInitializer.initialize(getApplicationContext());
    7. System.out.println("SDKInitializer一初始化");
    8. }
    9. }
    1. 设置自定义的application为默认应用
    2. <application
    3. android:name="com.bao.ah.MyApplication"
    4. android:allowBackup="true"
    5. android:icon="@drawable/ic_launcher"
    6. android:label="@string/app_name"
    7. android:theme="@style/AppTheme">
     
    1. publicclassMainActivityextendsActivity{
    2. @Override
    3. protectedvoid onCreate(Bundle savedInstanceState){
    4. super.onCreate(savedInstanceState);
    5. //在使用SDK各组件之前初始化context信息,传入ApplicationContext
    6. //注意该方法要再setContentView方法之前实现
    7. //SDKInitializer.initialize(getApplicationContext());
    8. setContentView(R.layout.activity_main);
    9. }
    10. }
    4、百度地图应和Activity生命周期绑定
    1. publicclassMainActivityextendsActivity{
    2. MapView mMapView =null;
    3. @Override
    4. protectedvoid onCreate(Bundle savedInstanceState){
    5. super.onCreate(savedInstanceState);
    6. //在使用SDK各组件之前初始化context信息,传入ApplicationContext
    7. //注意该方法要再setContentView方法之前实现
    8. //SDKInitializer.initialize(getApplicationContext());
    9. setContentView(R.layout.activity_main);
    10. //获取地图控件引用
    11. mMapView =(MapView) findViewById(R.id.bmapView);
    12. }
    13. @Override
    14. protectedvoid onDestroy(){
    15. super.onDestroy();
    16. //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
    17. mMapView.onDestroy();
    18. }
    19. @Override
    20. protectedvoid onResume(){
    21. super.onResume();
    22. //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
    23. mMapView.onResume();
    24. }
    25. @Override
    26. protectedvoid onPause(){
    27. super.onPause();
    28. //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
    29. mMapView.onPause();
    30. }
    31. }
    完成步骤,运行程序,如下:
     
     
     
     
     





  • 相关阅读:
    数据结构与算法4—队列
    栈的应用——括号匹配
    迷宫求解
    python的socket编程
    数据结构与算法3—栈
    数据结构与算法2—链表
    数据结构与算法1—线性表
    增量解析
    ElementTree类
    节点序列化
  • 原文地址:https://www.cnblogs.com/bbthome/p/4119638.html
Copyright © 2020-2023  润新知