关闭

百度API———基础地图(一)*

标签: Android百度地图
77人阅读 评论(0) 收藏 举报
分类:

百度AIP地址
基础地图

1.获取秘钥

发布版SHA1的值必须自己手动创建签名,使用默认签名是不行的!
创建签名的办法
使用默认秘钥最主要的体现就是程序能运行,但是无法获取地图

2.配置环境

材料

不是所有的都必须要使用,可以自行选择

jar包 so文件 功能
baidumapapi_map_vX_X_X.jar libBaiduMapSDK_map_vX_X_X.so 地图功能包
baidumapapi_search_vX_X_X.jar libBaiduMapSDK_search_vX_X_X.so 检索功能包
baidumapapi_cloud_vX_X_X.jar libBaiduMapSDK_cloud_vX_X_X.so 云检索功能包
baidumapapi_util_vX_X_X.jar libBaiduMapSDK_util_vX_X_X.so 工具功能包;
baidumapapi_radar_vX_X_X.jar libBaiduMapSDK_radar_vX_X_X.so 周边雷达工具包

Eclipse使用

需要的全部copy到libs目录下,然后导入jar包
Eclipse使用

AndroidStudio使用

jar包放入libs目录下,so文件放在src/jniLibs目录下,如果so文件不放在这个目录,需要在gradle文件配置。
别忘了jar包需要导入。
AndroidStudio使用

3.开始第一个百度地图

不多说先上效果图

效果图

AndroidManifest.xml中的配置

  1. 添加开发秘钥
  2. 添加权限
  3. 开发秘钥
    这里写图片描述
    注意权限在application外,开发秘钥写在application内
<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" />
<application>  
    <meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="开发者 key" />  
</application>

布局文件

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

Activity

public class MainActivity extends Activity {  
    MapView mMapView = null;  
    @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);  
    }  
    @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();  
        }  
    }

4.遇到的坑

重写父类方法的时候,一定要注意,不要重写双参的。
会遇到onResume生命周期报错

@Override
public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
    super.onCreate(savedInstanceState, persistentState);
}

@Override
protected void onResume() {
    super.onResume();
    mMapView.onResume();  
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1667次
    • 积分:188
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档