【安卓开发】连接百度地图api

一、打开百度地图api官网

二、进入Android开发文档,按照文档创建应用(开发版sha1和发布版sha1可以写成一个),并下载你想要的开发包

三、解压开发包,发现里面有jar包和充满.so文件的文件夹

四、在工程目录app/src/main下创建jniLibs文件夹,把开发包中充满.so类型文件的文件夹挪进去

五、把jar包放入app/libs文件夹,并且在as页面右击jar包,选择Add As Library项,导入jar包

六、在AndroidManifest.xml文件里加入以下代码:

  <!-- 这个权限用于进行网络定位 -->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <!-- 这个权限用于访问GPS定位 -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <!-- SD卡读取权限,用户写入离线定位数据 -->
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    <!-- 允许联网 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- 获取GSM(2g)、WCDMA(联通3g)等网络状态的信息 -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <!-- 获取wifi网络状态的信息 -->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <!-- 保持CPU 运转,屏幕和键盘灯有可能是关闭的,用于文件上传和下载 -->
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <!-- 获取sd卡写的权限,用于文件上传和下载 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <!-- 允许读取手机状态 用于创建BmobInstallation -->
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<service
            android:name="com.baidu.location.f"
            android:enabled="true"
            android:process=":remote" />

        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="你申请的AK是什么,这个引号里就写什么" />

七、在相应的layout文件里面加以下代码:

<com.baidu.mapapi.map.TextureMapView
        android:id="@+id/baidumap"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:layout_marginTop="230dp"
        ></com.baidu.mapapi.map.TextureMapView>

八、在layout文件对应的activity或fragment里面加入如下代码:

fragment:

private TextureMapView mapView;
private BaiduMap mBaiduMap;
  public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        SDKInitializer.initialize(getActivity().getApplicationContext());
        View view = inflater.inflate(R.layout.activity_locate, container, false);
       mapView = (TextureMapView) view.findViewById(R.id.baidumap);
        mBaiduMap = mapView.getMap();
        return view;
    }

@Override
public void onResume() {
    super.onResume();
    mapView.onResume();
}

@Override
public void onPause() {
    super.onPause();
    mapView.onPause();
}

@Override
public void onDestroy() {
    super.onDestroy();
    mapView.onDestroy();  
}
activity:
public class MainActivity extends AppCompatActivity {
    private TextureMapView mapView = null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        SDKInitializer.initialize(getApplicationContext());
        setContentView(R.layout.activity_main);
        mapView = (TextureMapView)findViewById(R.id.baidumap);
    }
    @Override
    protected  void onDestroy(){
        super.onDestroy();
        mapView.onDestroy();
    }
    @Override
    protected void onResume(){
        super.onResume();
        mapView.onResume();
    }
    @Override
    protected void onPause(){
        super.onPause();
        mapView.onPause();
    }
}

这样就可以简单的显示地图了,默认中心点是北京。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值