protected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.test_5);initViews();init();OnClickListener clickListener = new OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubString keyworld = "";// 此处要对输入进行校验if (v.getId() == R.id.product_1) {keyworld = PRODUCT_NAME[0];} else if (v.getId() == R.id.product_2) {keyworld = PRODUCT_NAME[1];} else if (v.getId() == R.id.product_3) {keyworld = PRODUCT_NAME[2];} else if (v.getId() == R.id.product_4) {keyworld = PRODUCT_NAME[3];} else if (v.getId() == R.id.product_5) {keyworld = PRODUCT_NAME[4];}//}};product_1.setOnClickListener(clickListener);product_2.setOnClickListener(clickListener);product_3.setOnClickListener(clickListener);product_4.setOnClickListener(clickListener);product_5.setOnClickListener(clickListener);locationClient.start();if (locationClient != null && locationClient.isStarted()) {Log.i("start", "location服务开始");locationClient.requestLocation();} else {Log.i("LocSDK_2.0_Demo1", "locClient is null or not started");}// 发起POI查询请求。请求过程是异步的,定位结果在上面的监听函数onReceivePoi中获取。if (locationClient != null && locationClient.isStarted())locationClient.requestPoi();locationData = new LocationData();}

public void init() {// 初始化application,如果BMapManager为Null,建立实例app = (DemoApplication) this.getApplication();Toast.makeText(Gift.this, "mBmapmanager=" + app.mBMapManager, 1).show();if (app.mBMapManager == null) {Toast.makeText(Gift.this, "再次初始化地图manager", 1).show();app.mBMapManager = new BMapManager(this);// DemoApplication用来验证key和网络连接,用getApplication()获得BMapManager实例app.mBMapManager.init(DemoApplication.strKey,new DemoApplication.MyGeneralListener());}// 实例化locationClient类locationClient = new LocationClient(getApplicationContext());// 注册监听事件,MyLocationListener两个重写方法处理相关操作locationClient.registerLocationListener(bdLocationListener);// 设置定位参数包括:定位模式(单次定位,定时定位),返回坐标类型,是否打开GPS等等LocationClientOption option = new LocationClientOption();option.setOpenGps(true);// 打开gpsoption.setCoorType("gcj02");option.setScanSpan(1000);// 发起定位请求。请求过程是异步的,定位结果在上面的监听函数onReceiveLocation中获取。locationClient.setLocOption(option);locationClient.start();}


请看以上代码,本人最近又开始研究百度地图定位问题,但是非常郁闷,这段代码明明以前写的时候是可以进行定位,现在却没反应,晕啊。

权限 user-permission 和 service 都加了

后来经过多方学习了解

把 locationClient = new LocationClient(this); 改成 locationClient = new LocationClient(getApplicationContext()); 就可以了。这是为什么啊。。不懂是不是和百度地图

定位sdk的版本有关,求大神解释。。


更多相关文章

  1. android 监听app进入后台以及从后台进入前台
  2. 根据IP地址定位城市
  3. Android(安卓)textview中某些字段设置点击监听
  4. Android(安卓)Gallery获取滑动停止的位置
  5. android中短信监听
  6. android http 本地 web服务(tomcat)
  7. 百度地图实现拖动图标输入地址
  8. Android(安卓)监听开机完成广播,完成监听SIM卡功能
  9. Android(安卓)定时到服务器取数据并刷新

随机推荐

  1. Android(安卓)Audio System 之三: AudioPo
  2. Android第十七课 Jni string空串跨模块使
  3. Android欢迎界面的实现
  4. No implementation found for long org.o
  5. 20145328 《Java程序设计》实验四实验报
  6. Android(安卓)高仿抖音双击点赞效果
  7. PermissionsDispatcher动态权限申请
  8. Android加载图片出现内存溢出攻略
  9. Android(安卓)Studio插件Gsonformat使用
  10. Android笔记汇总