android baiduyun登陆出问题了地图问题

Android开发百度地图(一)之初体验开发版SHA1:在Eclipse&Window&Preferences&Android&Build,打了马赛克那玩意儿包名:在AndroidManifest.xml文件中查看创建成功后最后会得到这一串key2、下载SDK包进入中可以自定义下载开发包、示例代码和文档。3、基本配置1& 导入库将libs jar包导入到项目中,还有so文件,把so文件放到armeabi文件夹,jar包放到libs文件夹,如下图所示:2& 配置key及权限打开AndroidManifest.xml文件,添加以下权限:&!-- 系统设置权限 --&
&uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /&
&!-- 这个权限用于进行网络定位 --&
&uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /&
&!-- 这个权限用于访问GPS定位 --&
&uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /&
&!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 --&
&uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /&
&!-- 获取运营商信息,用于支持提供运营商信息相关的接口 --&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /&
&!-- 用于读取手机当前的状态 --&
&uses-permission android:name="android.permission.READ_PHONE_STATE" /&
&!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据 --&
&uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /&
&!-- 访问网络,网络定位需要上网 --&
&uses-permission android:name="android.permission.INTERNET" /&
然后在application里面添加key和定位服务&meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="申请的key值" /&
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" &
&/service&
然后就完成了基本配置,之后就可以开始撸代码了4、开始撸代码第一步,在主界面main.xml添加地图视图&com.baidu.mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" /&
第二步,创建MApplication.java进行初始化地图相关,在AndroidManifest.xml文件application中添加:android:name="该类所在路径"
看以下图片中框框部分注释官方这样说道“在使用SDK各组件之前初始化context信息,传入ApplicationContext。注意该方法要在再(有个错别字)setContentView方法之前实现”,我们知道,实现Application后,当应用程序启动时,它首先执行的是Application实现类的onCreate(Bundle saveInstanceState)方法,是在Activity实现类之前,所以适合进行初始化地图相关。当然,你要是在Activity中也是可以的/**
* 描述:APP应用程序
* 作者: kimball &br&
* 日期: 日 下午6:05:54 &br&
public class MApplication extends Application {
* 上下文对象
public static Context context;
public void onCreate() {
super.onCreate();
//在使用SDK各组件之前初始化context信息,传入ApplicationContext
//注意该方法要再setContentView方法之前实现
SDKInitializer.initialize(this.getApplicationContext());
第三步,创建BaseActivity.java,继承AppCompatActivity(该类我是放一些Activity通用的东东的,后面会用到)/**
* 描述:Activity
* 作者: kimball &br&
* 日期: 日 上午9:47:04 &br&
public class BaseActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
第四步,ManActivity.java,继承BaseActivity.javapublic class MainActivity extends BaseActivity {
// 地图相关
private MapView mapView;
// 地图控件
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.main);
this.init();
private void init(){
// 初始化控件
this.initControls();
// 初始化地图
this.initMap();
* 初始化控件
private void initControls(){
// 获取地图视图
this.mapView = (MapView) findViewById(R.id.bmapView);
* 初始化地图
private void initMap(){
// 不显示百度地图Logo
mapView.removeViewAt(1);
// 不显示地图上比例尺
mapView.showScaleControl(false);
// 不显示地图缩放控件(按钮控制栏)
mapView.showZoomControls(false);
// 获取百度地图对象
baiduMap = mapView.getMap();
baiduMap.setMyLocationEnabled(true);
// 设置为一般地图
baiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);
// 设置初始大图大小500米
MapStatusUpdate msu = MapStatusUpdateFactory.zoomTo(15.0f);
baiduMap.setMapStatus(msu);
* 当Activity处于可见状态时运行
protected void onStart() {
super.onStart();
* Activity销毁时运行
protected void onDestroy() {
super.onDestroy();
// 管理地图的生命周期:销毁
if(mapView != null){
mapView.onDestroy();
* Activity可以得到用户焦点时运行
protected void onResume() {
super.onResume();
if(mapView != null){
mapView.onResume();
* Activity被遮挡住时运行
protected void onPause() {
super.onPause();
if(mapView != null){
mapView.onPause();
* Activity处于不可见状态时运行
protected void onStop() {
super.onStop();
5、执行效果效果图引用官方例子图片,因为现在这个app进度已经快了好多,效果图已经不适用,大同小异,将就看看吧!6、注意事项a,要是出现白色小方格,地图不显示,请检查key配置是否正确b,要是出现一开启应用程序就闪退并报未能找到SDKInitializer类相似的问题,请检查libs导入是否正确。如还是不能解决,请参考文章开头所说的描述三、结语到这里初体验就已经结束了,是不是很简单?没事儿,后面我们再慢慢深入。说实话,这篇文章我花了一个多星期才写好,说第二天就写好,结果我看了一天的历史,后面又看了几天。说第二天就写好,结果我写app又花了好多天。说第二天写好,结果浪着浪着时间又过去。我不是在找借口啊!没有,绝对没有的事儿!这篇其实是我在写一个app(等写好后开源的一个小项目,受不了一些地图无所谓的功能,我们是有“态度”的青年,对不对?)开始写的,然后然后,就各种原因啊!天时地利人和都不沾边啥的,但这没有关系,我会尽快让文章跟上app进度的,嗯,相信我PS您还可以关注我的微信公众号:kimball 个人小站:www.kimball.site新浪微博:知乎:赞赏还没有人赞赏,快来当第一个赞赏的人吧!4收藏分享举报文章被以下专栏收录高效的中文IT技术平台{&debug&:false,&apiRoot&:&&,&paySDK&:&https:\u002F\u002Fpay.zhihu.com\u002Fapi\u002Fjs&,&wechatConfigAPI&:&\u002Fapi\u002Fwechat\u002Fjssdkconfig&,&name&:&production&,&instance&:&column&,&tokens&:{&X-XSRF-TOKEN&:null,&X-UDID&:null,&Authorization&:&oauth c3cef7c66aa9e6a1e3160e20&}}{&database&:{&Post&:{&&:{&isPending&:false,&contributes&:[{&sourceColumn&:{&lastUpdated&:,&description&:&一个专注互联网相关技术的专栏&,&permission&:&COLUMN_PUBLIC&,&memberId&:,&contributePermission&:&COLUMN_PUBLIC&,&translatedCommentPermission&:&all&,&canManage&:true,&intro&:&高效的中文IT技术平台&,&urlToken&:&dreawer&,&id&:21254,&imagePath&:&v2-def9c21d9ca33ad157f4208.jpg&,&slug&:&dreawer&,&applyReason&:&0&,&name&:&极乐科技&,&title&:&极乐科技&,&url&:&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fdreawer&,&commentPermission&:&COLUMN_ALL_CAN_COMMENT&,&canPost&:true,&created&:,&state&:&COLUMN_NORMAL&,&followers&:26814,&avatar&:{&id&:&v2-def9c21d9ca33ad157f4208&,&template&:&https:\u002F\u002Fpic3.zhimg.com\u002F{id}_{size}.jpg&},&activateAuthorRequested&:false,&following&:false,&imageUrl&:&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-def9c21d9ca33ad157f4208_l.jpg&,&articlesCount&:698},&state&:&accepted&,&targetPost&:{&titleImage&:&&,&lastUpdated&:,&imagePath&:&&,&permission&:&ARTICLE_PUBLIC&,&topics&:[,3646],&summary&:&本文系作者原创,如需转载请注明出处!一、概述 我来现在这家公司前是面试的java,公司招聘的也是java。结果上班之后,给我一个U盘,里面是Android的Eclipse开发环境,让我做Android?天啦噜,我压根不会,然后就自学咯!边百度边、看文档操作,开始上手了…&,&copyPermission&:&ARTICLE_COPYABLE&,&translatedCommentPermission&:&all&,&likes&:0,&origAuthorId&:0,&publishedTime&:&T11:59:47+08:00&,&sourceUrl&:&&,&urlToken&:,&id&:2444040,&withContent&:false,&slug&:,&bigTitleImage&:false,&title&:&Android开发百度地图(一)之初体验&,&url&:&\u002Fp\u002F&,&commentPermission&:&ARTICLE_ALL_CAN_COMMENT&,&snapshotUrl&:&&,&created&:,&comments&:0,&columnId&:21254,&content&:&&,&parentId&:0,&state&:&ARTICLE_PUBLISHED&,&imageUrl&:&&,&author&:{&bio&:&程序员&,&isFollowing&:false,&hash&:&0baea6d06e2636bdf17cc&,&uid&:716200,&isOrg&:false,&slug&:&kimball.site&,&isFollowed&:false,&description&:&像蚂蚁一样工作,像蝴蝶一样生活\n博客小站:kimball.site&,&name&:&kimballlu&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fkimball.site&,&avatar&:{&id&:&v2-bfe40a2a46f8df283c3b6&,&template&:&https:\u002F\u002Fpic2.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&memberId&:,&excerptTitle&:&&,&voteType&:&ARTICLE_VOTE_CLEAR&},&id&:593227}],&title&:&Android开发百度地图(一)之初体验&,&author&:&kimball.site&,&content&:&\u003Cblockquote\u003E本文系作者原创,如需转载请注明出处!\u003C\u002Fblockquote\u003E\u003Ch2\u003E一、概述\u003C\u002Fh2\u003E\u003Cp\u003E
我来现在这家公司前是面试的java,公司招聘的也是java。结果上班之后,给我一个U盘,里面是Android的Eclipse开发环境,让我做Android?天啦噜,我压根不会,然后就自学咯!边百度边、看文档操作,开始上手了,然后才知道谷歌对Eclipse已经停止更新,推出了AndroidStudio,然后公司用的还是Eclipse中的Android4.2版本。上述就是我为啥用Eclipse开发APP,就别说我啥不追随技术更新...反正这个月底我也走人了,当然最主要的是公司电脑根本带不动AndroidStudio,进入正题\u003C\u002Fp\u003E\u003Cp\u003E
我选择百度地图是有原因的,它确实在使用上来说(当然除了那可怕的“推广”、“全家桶”),还是很不错的!所以导致我很喜欢谷歌地图\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Ci\u003E注意:由于谷歌对Eclipse的ADT停止更新以及百度地图API的原因,百度地图SDK3.7(不包含)以上版本不支持低版本的ADT(编译通过,但app闪退,提示无法初始化SDK,未找到该类),至于版本几,没测试。目前知道的是ADT23.7是支持。我现在的环境是ADT23.7、Android6.0\u003C\u002Fi\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Ch2\u003E二、正文\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cb\u003E 1、先去百度地图API官网注册帐号并且申请API KEY\u003C\u002Fb\u003E——\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Flbsyun.baidu.com\u002F\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E百度地图开放平台\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E
进入API控制台中心创建应用\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9524afb998d801e949a23cdc_b.jpg\& data-rawwidth=\&1195\& data-rawheight=\&316\& class=\&origin_image zh-lightbox-thumb\& width=\&1195\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9524afb998d801e949a23cdc_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='1195'%20height='316'&&\u002Fsvg&\& data-rawwidth=\&1195\& data-rawheight=\&316\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&1195\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9524afb998d801e949a23cdc_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9524afb998d801e949a23cdc_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cp\u003E
按照要求填写\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-02c999f83a6d9f68eb71a690ea12677a_b.jpg\& data-rawwidth=\&1151\& data-rawheight=\&835\& class=\&origin_image zh-lightbox-thumb\& width=\&1151\& data-original=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-02c999f83a6d9f68eb71a690ea12677a_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='1151'%20height='835'&&\u002Fsvg&\& data-rawwidth=\&1151\& data-rawheight=\&835\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&1151\& data-original=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-02c999f83a6d9f68eb71a690ea12677a_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-02c999f83a6d9f68eb71a690ea12677a_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Ci\u003E\u003Cb\u003E发布版SHA1:\u003C\u002Fb\u003E\u003C\u002Fi\u003E是创建的android.keystore中的查询出来的,打了码的那玩意儿就是\u003Ci\u003E发布版SHA1,\u003C\u002Fi\u003E使用CMD进入该文件目录,键入\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-text\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003Ekeytool -list -keystore debug.keystore\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9f2e9b52c3b87cef0d669c96a3195452_b.jpg\& data-rawwidth=\&640\& data-rawheight=\&258\& class=\&origin_image zh-lightbox-thumb\& width=\&640\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9f2e9b52c3b87cef0d669c96a3195452_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='640'%20height='258'&&\u002Fsvg&\& data-rawwidth=\&640\& data-rawheight=\&258\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&640\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9f2e9b52c3b87cef0d669c96a3195452_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-9f2e9b52c3b87cef0d669c96a3195452_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cp\u003E\u003Ci\u003E\u003Cb\u003E开发版SHA1:\u003C\u002Fb\u003E\u003C\u002Fi\u003E在Eclipse&Window&Preferences&Android&Build,打了马赛克那玩意儿\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-2b07e501eefb7c407c2a74c6_b.jpg\& data-rawwidth=\&771\& data-rawheight=\&561\& class=\&origin_image zh-lightbox-thumb\& width=\&771\& data-original=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-2b07e501eefb7c407c2a74c6_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='771'%20height='561'&&\u002Fsvg&\& data-rawwidth=\&771\& data-rawheight=\&561\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&771\& data-original=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-2b07e501eefb7c407c2a74c6_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-2b07e501eefb7c407c2a74c6_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Ci\u003E包名:\u003C\u002Fi\u003E在AndroidManifest.xml文件中查看\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-dee6d8d10bdd753b6ae4c7fa9ee82d1b_b.jpg\& data-rawwidth=\&646\& data-rawheight=\&145\& class=\&origin_image zh-lightbox-thumb\& width=\&646\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-dee6d8d10bdd753b6ae4c7fa9ee82d1b_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='646'%20height='145'&&\u002Fsvg&\& data-rawwidth=\&646\& data-rawheight=\&145\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&646\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-dee6d8d10bdd753b6ae4c7fa9ee82d1b_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-dee6d8d10bdd753b6ae4c7fa9ee82d1b_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cp\u003E创建成功后最后会得到这一串key\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-8ca6c0ffdaeb552471aba7_b.jpg\& data-rawwidth=\&869\& data-rawheight=\&86\& class=\&origin_image zh-lightbox-thumb\& width=\&869\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-8ca6c0ffdaeb552471aba7_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='869'%20height='86'&&\u002Fsvg&\& data-rawwidth=\&869\& data-rawheight=\&86\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&869\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-8ca6c0ffdaeb552471aba7_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-8ca6c0ffdaeb552471aba7_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cb\u003E\u003Ci\u003E2、下载SDK包\u003C\u002Fi\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E进入\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Flbsyun.baidu.com\u002Fsdk\u002Fdownload%3Fselected%3Dmapsdk_basicmap%2Cmapsdk_searchfunction%2Cmapsdk_lbscloudsearch%2Cmapsdk_calculationtool%2Cmapsdk_radar\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E百度地图SDK\u003C\u002Fa\u003E中可以自定义下载开发包、示例代码和文档。\u003C\u002Fp\u003E\u003Cp\u003E\u003Ci\u003E\u003Cb\u003E3、基本配置\u003C\u002Fb\u003E\u003C\u002Fi\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E1& 导入库\u003C\u002Fp\u003E\u003Cp\u003E将libs jar包导入到项目中,还有so文件,把so文件放到armeabi文件夹,jar包放到libs文件夹,如下图所示:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-a1ede4cb5ae6aade13cb4_b.jpg\& data-rawwidth=\&416\& data-rawheight=\&442\& class=\&content_image\& width=\&416\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='416'%20height='442'&&\u002Fsvg&\& data-rawwidth=\&416\& data-rawheight=\&442\& class=\&content_image lazy\& width=\&416\& data-actualsrc=\&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-a1ede4cb5ae6aade13cb4_b.jpg\&\u003E\u003C\u002Ffigure\u003E2& 配置key及权限\u003C\u002Fp\u003E\u003Cp\u003E打开AndroidManifest.xml文件,添加以下权限:\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E系统设置权限\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&com.android.launcher.permission.READ_SETTINGS\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E这个权限用于进行网络定位\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.ACCESS_COARSE_LOCATION\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E这个权限用于访问GPS定位\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.ACCESS_FINE_LOCATION\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E用于访问wifi网络信息\u003C\u002Fspan\u003E\u003Cspan class=\&err\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewifi信息会用于进行网络定位\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.ACCESS_WIFI_STATE\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E获取运营商信息\u003C\u002Fspan\u003E\u003Cspan class=\&err\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003E用于支持提供运营商信息相关的接口\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.ACCESS_NETWORK_STATE\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E用于读取手机当前的状态\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.READ_PHONE_STATE\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E写入扩展存储\u003C\u002Fspan\u003E\u003Cspan class=\&err\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003E向扩展卡写入数据\u003C\u002Fspan\u003E\u003Cspan class=\&err\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003E用于写入离线定位数据\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.WRITE_EXTERNAL_STORAGE\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&!--\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003E访问网络\u003C\u002Fspan\u003E\u003Cspan class=\&err\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003E网络定位需要上网\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Euses\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epermission\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&android.permission.INTERNET\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E然后在application里面添加key和定位服务\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Emeta\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Edata\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&com.baidu.lbsapi.API_KEY\&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Evalue\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&申请的key值\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eservice\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&com.baidu.location.f\&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eenabled\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&true\&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eprocess\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&:remote\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\n\u003Cspan class=\&o\&\u003E&\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eservice\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E然后就完成了基本配置,之后就可以开始撸代码了\u003C\u002Fp\u003E\u003Cp\u003E\u003Ci\u003E\u003Cb\u003E4、开始撸代码\u003C\u002Fb\u003E\u003C\u002Fi\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E第一步,在主界面main.xml添加地图视图\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ecom\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Ebaidu\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Emapapi\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Emap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EMapView\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&@+id\u002FbmapView\&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Elayout_width\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&fill_parent\&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Elayout_height\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&fill_parent\&\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Eandroid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Eclickable\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&true\&\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E\u002F&\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E第二步,创建MApplication.java进行初始化地图相关,在AndroidManifest.xml文件application中添加:\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&nl\&\u003Eandroid:\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ename\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&该类所在路径\&\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cbr\u003E\u003Cp\u003E看以下图片中框框部分注释\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-7b7aebe92b7383bcf7db519aa7dfd0b7_b.jpg\& data-rawwidth=\&777\& data-rawheight=\&221\& class=\&origin_image zh-lightbox-thumb\& width=\&777\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-7b7aebe92b7383bcf7db519aa7dfd0b7_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='777'%20height='221'&&\u002Fsvg&\& data-rawwidth=\&777\& data-rawheight=\&221\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&777\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-7b7aebe92b7383bcf7db519aa7dfd0b7_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-7b7aebe92b7383bcf7db519aa7dfd0b7_b.jpg\&\u003E\u003C\u002Ffigure\u003E官方这样说道“\u003Cb\u003E在使用SDK各组件之前初始化context信息,传入ApplicationContext。注意该方法要在再(有个错别字)setContentView方法之前实现\u003C\u002Fb\u003E”,我们知道,实现Application后,当应用程序启动时,它首先执行的是Application实现类的onCreate(Bundle saveInstanceState)方法,是在Activity实现类之前,所以适合进行初始化地图相关。\u003C\u002Fp\u003E\u003Cp\u003E当然,你要是在Activity中也是可以的\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&cm\&\u003E\u002F** \u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * 描述:APP应用程序
&br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * 作者: kimball &br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * E-mail:
&br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * 日期: 日 下午6:05:54 &br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E *\u002F\u003C\u002Fspan\u003E\n\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eclass\u003C\u002Fspan\u003E \u003Cspan class=\&nc\&\u003EMApplication\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eextends\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EApplication\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n\t\t\n\t\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E\t * 上下文对象\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E\t *\u002F\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Estatic\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EContext\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Econtext\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\t\t\n\t\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonCreate\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E()\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n\t
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonCreate\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t
\u003Cspan class=\&c1\&\u003E\u002F\u002F在使用SDK各组件之前初始化context信息,传入ApplicationContext
\u003C\u002Fspan\u003E\n
\u003Cspan class=\&c1\&\u003E\u002F\u002F注意该方法要再setContentView方法之前实现 \u003C\u002Fspan\u003E\n\t
\u003Cspan class=\&n\&\u003ESDKInitializer\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Einitialize\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&k\&\u003Ethis\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EgetApplicationContext\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E());\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E第三步,创建BaseActivity.java,继承AppCompatActivity(该类我是放一些Activity通用的东东的,后面会用到)\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&cm\&\u003E\u002F** \u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * 描述:Activity
&br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * 作者: kimball &br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * E-mail:
&br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * 日期: 日 上午9:47:04 &br&\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E *\u002F\u003C\u002Fspan\u003E\n\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eclass\u003C\u002Fspan\u003E \u003Cspan class=\&nc\&\u003EBaseActivity\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eextends\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EAppCompatActivity\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n\t\n\t\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonCreate\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EBundle\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EsavedInstanceState\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonCreate\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EsavedInstanceState\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\t\t\n\t\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E第四步,ManActivity.java,继承BaseActivity.java\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eclass\u003C\u002Fspan\u003E \u003Cspan class=\&nc\&\u003EMainActivity\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eextends\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EBaseActivity\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n\t\n
\u003Cspan class=\&c1\&\u003E\u002F\u002F 地图相关\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EMapView\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 地图控件\u003C\u002Fspan\u003E\n\n
\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonCreate\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EBundle\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EsavedInstanceState\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonCreate\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EsavedInstanceState\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ethis\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EsetContentView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ER\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Elayout\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&c1\&\u003E\u002F\u002F 初始化\u003C\u002Fspan\u003E\n
\u003Cspan class=\&k\&\u003Ethis\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Einit\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* 初始化\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Einit\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(){\u003C\u002Fspan\u003E\n
\u003Cspan class=\&c1\&\u003E\u002F\u002F 初始化控件\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ethis\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EinitControls\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 初始化地图\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ethis\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EinitMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* 初始化控件\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EinitControls\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(){\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 获取地图视图\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ethis\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EmapView\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EMapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EfindViewById\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ER\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003Eid\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EbmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* 初始化地图\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EinitMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(){\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 不显示百度地图Logo\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EremoveViewAt\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 不显示地图上比例尺
\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EshowScaleControl\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kc\&\u003Efalse\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E
\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 不显示地图缩放控件(按钮控制栏)
\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EshowZoomControls\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kc\&\u003Efalse\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 获取百度地图对象\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EbaiduMap\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EgetMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EbaiduMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EsetMyLocationEnabled\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kc\&\u003Etrue\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 设置为一般地图\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EbaiduMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EsetMapType\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EBaiduMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EMAP_TYPE_NORMAL\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E \t\t\t\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 设置初始大图大小500米\t\t\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003EMapStatusUpdate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Emsu\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EMapStatusUpdateFactory\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EzoomTo\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mf\&\u003E15.0f\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E \n\t\u003Cspan class=\&n\&\u003EbaiduMap\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EsetMapStatus\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Emsu\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* 当Activity处于可见状态时运行\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonStart\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E()\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonStart\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* Activity销毁时运行\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonDestroy\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E()\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonDestroy\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 管理地图的生命周期:销毁\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E!=\u003C\u002Fspan\u003E \u003Cspan class=\&kc\&\u003Enull\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E){\u003C\u002Fspan\u003E\n\t
\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonDestroy\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* Activity可以得到用户焦点时运行\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonResume\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E()\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonResume\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E!=\u003C\u002Fspan\u003E \u003Cspan class=\&kc\&\u003Enull\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E){\u003C\u002Fspan\u003E\n\t
\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonResume\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* Activity被遮挡住时运行\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonPause\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E()\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonPause\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&c1\&\u003E\u002F\u002F 暂停\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E!=\u003C\u002Fspan\u003E \u003Cspan class=\&kc\&\u003Enull\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E){\u003C\u002Fspan\u003E\n\t
\u003Cspan class=\&n\&\u003EmapView\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonPause\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n
\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
* Activity处于不可见状态时运行\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E
*\u002F\u003C\u002Fspan\u003E\n
\u003Cspan class=\&nd\&\u003E@Override\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprotected\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EonStop\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E()\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Esuper\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&na\&\u003EonStop\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E();\u003C\u002Fspan\u003E\n
\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\t\n\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E\u003Ci\u003E\u003Cb\u003E5、执行效果\u003C\u002Fb\u003E\u003C\u002Fi\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E效果图引用官方例子图片,因为现在这个app进度已经快了好多,效果图已经不适用,大同小异,将就看看吧!\u003C\u002Fp\u003E\u003Cp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-512ea556f1ffee743dfddd9_b.jpg\& data-rawwidth=\&1080\& data-rawheight=\&1920\& class=\&origin_image zh-lightbox-thumb\& width=\&1080\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-512ea556f1ffee743dfddd9_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='1080'%20height='1920'&&\u002Fsvg&\& data-rawwidth=\&1080\& data-rawheight=\&1920\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&1080\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-512ea556f1ffee743dfddd9_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-512ea556f1ffee743dfddd9_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Ci\u003E\u003Cb\u003E6、注意事项\u003C\u002Fb\u003E\u003C\u002Fi\u003E\u003C\u002Fp\u003E\u003Cp\u003Ea,要是出现白色小方格,地图不显示,请检查key配置是否正确\u003C\u002Fp\u003E\u003Cp\u003Eb,要是出现一开启应用程序就闪退并报未能找到SDKInitializer类相似的问题,请检查libs导入是否正确。如还是不能解决,请参考文章开头所说的描述\u003C\u002Fp\u003E\u003Ch2\u003E三、结语\u003C\u002Fh2\u003E\u003Cp\u003E到这里初体验就已经结束了,是不是很简单?没事儿,后面我们再慢慢深入。\u003C\u002Fp\u003E\u003Cp\u003E说实话,这篇文章我花了一个多星期才写好,说第二天就写好,结果我看了一天的历史,后面又看了几天。说第二天就写好,结果我写app又花了好多天。说第二天写好,结果浪着浪着时间又过去。我不是在找借口啊!没有,绝对没有的事儿!\u003C\u002Fp\u003E\u003Cp\u003E这篇其实是我在写一个app(等写好后开源的一个小项目,受不了一些地图无所谓的功能,我们是有“态度”的青年,对不对?)开始写的,然后然后,就各种原因啊!天时地利人和都不沾边啥的,但这没有关系,我会尽快让文章跟上app进度的,嗯,相信我\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003EPS\u003C\u002Fb\u003E\u003Cbr\u003E您还可以关注我的\u003C\u002Fp\u003E\u003Cp\u003E微信公众号:kimball \u003C\u002Fp\u003E\u003Cp\u003E个人小站:www.kimball.site\u003C\u002Fp\u003E\u003Cp\u003E新浪微博:\u003Ca href=\&http:\u002F\u002Flink.zhihu.com\u002F?target=http%3A\u002F\u002Fweibo.com\u002F\u002Fprofile%3Ftopnav%3D1%26wvr%3D6%26is_all%3D1\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003Ekimball-lu\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E知乎:\u003Ca href=\&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fkimball.site\u002Factivities\& class=\&internal\&\u003Ekimball\u003C\u002Fa\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T03:59:47.000Z&),&canComment&:false,&commentPermission&:&anyone&,&commentCount&:8,&collapsedCount&:0,&likeCount&:4,&state&:&published&,&isLiked&:false,&slug&:&&,&lastestTipjarors&:[],&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&reviewers&:[],&topics&:[{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&Android&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&开源项目&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&Java&}],&adminClosedComment&:false,&titleImageSize&:{&width&:0,&height&:0},&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&column&:{&slug&:&dreawer&,&name&:&极乐科技&},&tipjarState&:&activated&,&tipjarTagLine&:&真诚赞赏,手留余香&,&sourceUrl&:&&,&pageCommentsCount&:8,&tipjarorCount&:0,&annotationAction&:[],&hasPublishingDraft&:false,&snapshotUrl&:&&,&publishedTime&:&T11:59:47+08:00&,&url&:&\u002Fp\u002F&,&lastestLikers&:[{&bio&:&爱自由,富于幻想&,&isFollowing&:false,&hash&:&61033dfe47a401ecc11615f&,&uid&:04,&isOrg&:false,&slug&:&zhang-chang-hao-59&,&isFollowed&:false,&description&:&不生产代码,只是代码的搬运工&,&name&:&不吐槽会死&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fzhang-chang-hao-59&,&avatar&:{&id&:&a3bec9a24bef025bfeeb39&,&template&:&https:\u002F\u002Fpic4.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&程序猿c++&,&isFollowing&:false,&hash&:&c88a5c5ec5daab8a73295&,&uid&:861300,&isOrg&:false,&slug&:&lhb.&,&isFollowed&:false,&description&:&&,&name&:&嘿哈嚯&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Flhb.&,&avatar&:{&id&:&5b5dbd3ed1ae5f3eaebc3&,&template&:&https:\u002F\u002Fpic2.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&可能还要折腾再一段时间&,&isFollowing&:false,&hash&:&bd06ff0ba7c2ac049c3bfd45956bbdbf&,&uid&:84,&isOrg&:false,&slug&:&xiaobuliao&,&isFollowed&:false,&description&:&想了半天,想不出来&,&name&:&小不了&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fxiaobuliao&,&avatar&:{&id&:&v2-a0d72d7a686aef982e0ce&,&template&:&https:\u002F\u002Fpic2.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&极乐小程序商店(http:\u002F\u002Fstore.dreawer.com\u002F)&,&isFollowing&:false,&hash&:&4b43cf6f3d97f480b3ca2c13e5b12752&,&uid&:563500,&isOrg&:false,&slug&:&Dreawer&,&isFollowed&:false,&description&:&知乎专栏 && https:\u002F\u002Fzhuanlan.zhihu.com\u002Fdreawer \n极乐小程序商店 && http:\u002F\u002Fstore.dreawer.com\u002F\n极乐科技
&& http:\u002F\u002Fwww.dreawer.com\u002F&,&name&:&极乐君&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002FDreawer&,&avatar&:{&id&:&v2-8cb80f97b7d5f74c7a8997cbc4089e1f&,&template&:&https:\u002F\u002Fpic3.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false}],&summary&:&\u003Cimg src=\&http:\u002F\u002Fpic1.zhimg.com\u002Fv2-9524afb998d801e949a23cdc_200x112.png\& data-rawwidth=\&1195\& data-rawheight=\&316\& class=\&origin_image inline-img zh-lightbox-thumb\& data-original=\&http:\u002F\u002Fpic1.zhimg.com\u002Fv2-9524afb998d801e949a23cdc_r.png\&\u003E本文系作者原创,如需转载请注明出处!一、概述 我来现在这家公司前是面试的java,公司招聘的也是java。结果上班之后,给我一个U盘,里面是Android的Eclipse开发环境,让我做Android?天啦噜,我压根不会,然后就自学咯!边百度边、看文档操作,开始上手了…&,&reviewingCommentsCount&:0,&meta&:{&previous&:{&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&topics&:[{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&PRC&},{&url&:&https:\u002F\u002Fwww.zhihu.com\u002Ftopic\u002F&,&id&:&&,&name&:&Java&}],&adminClosedComment&:false,&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&author&:{&bio&:&java&,&isFollowing&:false,&hash&:&84cfff6dc&,&uid&:758300,&isOrg&:false,&slug&:&zhi-qiu-z&,&isFollowed&:false,&description&:&Blog:https:\u002F\u002Fmuyinchen.github.io\u002F\nemail:&,&name&:&知秋z&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fzhi-qiu-z&,&avatar&:{&id&:&v2-b4cbc55c3e17&,&template&:&https:\u002F\u002Fpic2.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&column&:{&slug&:&dreawer&,&name&:&极乐科技&},&content&:&\u003Cp\u003ERPC, 即 Remote Procedure Call(远程过程调用), 说得通俗一点就是: 调用远程计算机上的服务, 就像调用本地服务一样\u003C\u002Fp\u003E\u003Cp\u003E具体的介绍就不多说了,通过搜索引擎可以获得很多这方面的介绍。\u003C\u002Fp\u003E\u003Cp\u003E这里推荐一篇文章:\u003Ca href=\&https:\u002F\u002Flink.zhihu.com\u002F?target=https%3A\u002F\u002Fmy.oschina.net\u002Fhuangyong\u002Fblog\u002F361751\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E轻量级分布式 RPC 框架\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E对于架构的设计,说些自己的看法,不想去说那么抽象,拿一个人来讲:\u003C\u002Fp\u003E\u003Cp\u003E首先,人体的组成必须要由骨架,这就是表示项目应该有一个总体的架构图。\u003C\u002Fp\u003E\u003Cp\u003E然后,要有各个器官来各司其中,这就是各个模块了。\u003C\u002Fp\u003E\u003Cp\u003E再者,各个器官之间要交流,那就需要有个中间件来承载的,这里就是血管,而血液就是信息承载体,里面包含了各种器官需要的物质和生产出的物质,血液在代码中的体现可能是一个ConcurrentMap。\u003C\u002Fp\u003E\u003Cp\u003E最后,专注于各个模块的实现,所用的逻辑和技术具体问题具体再分析处理\u003C\u002Fp\u003E\u003Cp\u003E首先对这个框架的设计图:\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-8f2d83a8c8b695a40c4bd_b.jpg\& data-rawwidth=\&654\& data-rawheight=\&630\& class=\&origin_image zh-lightbox-thumb\& width=\&654\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-8f2d83a8c8b695a40c4bd_r.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cp\u003E本文将为您揭晓开发轻量级分布RPC框架的具体过程,该框架基于TCP协议,提供了NIO特性,提供高效的序列化方式,同时也具备服务注册与发现的能力。\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cp\u003E根据以上技术需求,我们可以使用如下技术选型:\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003ESpring:它是最强大的依赖注入框架,也是业界的权威标准。\u003C\u002Fli\u003E\u003Cli\u003ENetty:它使NIO编程更加容易,屏蔽了Java底层的NIO细节。\u003C\u002Fli\u003E\u003Cli\u003EKryo:一个快速高效的Java序列化框架,旨在提供快速,高效和易用的API。无论文件,数据库或网络数据Kryo都可以随时完成序列化\u003C\u002Fli\u003E\u003Cli\u003EZooKeeper:提供服务注册与发现功能,开发分布式系统的必备选择,同时它也具备天生的集群能力。\u003C\u002Fli\u003E\u003Cbr\u003E\u003C\u002Fol\u003E\u003Cp\u003ENetty请自己找文章或书学习的,推荐Netty.in.Action\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cbr\u003E\u003Ch2\u003E\u003Cb\u003E编写核心模块\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E一个模块下面也是可以根据很多细分的小模块流程来做的\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cbr\u003E\u003Ch2\u003E\u003Cb\u003E1.编写通用模块\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E因为用的是netty,所以对于netty的编程主要考虑几个方面,编解处理,核心逻辑处理类编码处理就涉及到了序列化处理和所要处理的对象,\u003C\u002Fp\u003E\u003Cp\u003E我们所要求的包括方法的名称参数和方法所属类,设计上,以一个id为唯一标志,服务端处理完返回的结果同样携带此id,这样就可以很轻松取到了,这也就是血液所携带的信息的体现。\u003C\u002Fp\u003E\u003Cb\u003E设计请求和回复类:\u003C\u002Fb\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&kn\&\u003Epackage\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Ecom.nia.rpc.core.protocol\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&kn\&\u003Eimport\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Elombok.Data\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * Author
知秋\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * Created by Auser on \u002F17.\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E *\u002F\u003C\u002Fspan\u003E\n\u003Cspan class=\&nd\&\u003E@Data\u003C\u002Fspan\u003E\n\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eclass\u003C\u002Fspan\u003E \u003Cspan class=\&nc\&\u003ERequest\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Elong\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003ErequestId\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EClass\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&?&\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eclazz\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EString\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Emethod\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EClass\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&?&[]\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EparameterTypes\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EObject\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E[]\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eparams\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Elong\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003ErequestTime\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&o\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-java\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&kn\&\u003Epackage\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Ecom.nia.rpc.core.protocol\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&kn\&\u003Eimport\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Elombok.Getter\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&kn\&\u003Eimport\u003C\u002Fspan\u003E \u003Cspan class=\&nn\&\u003Elombok.Setter\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E\u002F**\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * Author
知秋\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E * Created by Auser on \u002F17.\u003C\u002Fspan\u003E\n\u003Cspan class=\&cm\&\u003E *\u002F\u003C\u002Fspan\u003E\n\u003Cspan class=\&nd\&\u003E@Setter\u003C\u002Fspan\u003E\n\u003Cspan class=\&nd\&\u003E@Getter\u003C\u002Fspan\u003E\n\u003Cspan class=\&kd\&\u003Epublic\u003C\u002Fspan\u003E \u003Cspan class=\&kd\&\u003Eclass\u003C\u002Fspan\u003E \u003Cspan class=\&nc\&\u003EResponse\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&kt\&\u003Elong\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003ErequestId\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EObject\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Eresponse\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&kd\&\u003Eprivate\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EThrowable\u003C\u002Fspan\u003E \u003Cspan class=\&n

我要回帖

更多关于 baiduyun登陆出问题了 的文章

 

随机推荐