二、进入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(); } }
这样就可以简单的显示地图了,默认中心点是北京。