百度地图,请求位置的服务无法启动 百度地图地位 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 百度地图 有 官方Demo 的建议你下载看看 是配置<service>那个吗?我配置了也时不能成功启动啊 locationClient = new LocationClient(getApplicationContext());把你的this改为getApplicationContext()就行了。 把this改为getApplicationContext()了,可是还是不行哎。。谁来帮忙啊。 代码是没有问题的,我的问题出在没有在配置文件中配置service这个组件 谢谢了,用这种方法果然可以。但是,我还是有点不懂:工程(1)中是我做测试用的,里面只有一个MainActivity的时候,我用this,成功获取到了位置信息,工程(2)中有多个Activity,获取位置信息的Activity不是MainActivity。这时再用this就无法获取到了,而改成getApplicationContext()就成功的获取到了位置信息…这是什么原因呢?希望您能解答一下…再次致谢! 谢谢了,用这种方法果然可以。但是,我还是有点不懂:工程(1)中是我做测试用的,里面只有一个MainActivity的时候,我用this,成功获取到了位置信息,工程(2)中有多个Activity,获取位置信息的Activity不是MainActivity。这时再用this就无法获取到了,而改成getApplicationContext()就成功的获取到了位置信息…这是什么原因呢?希望您能解答一下…再次致谢!遭遇与层主一致,调了一两天了擦...搞清楚问题了么? 我看了下getApplicationContext()和this的区别,关于生命周期的,但是没弄明白 谢谢了,用这种方法果然可以。但是,我还是有点不懂:工程(1)中是我做测试用的,里面只有一个MainActivity的时候,我用this,成功获取到了位置信息,工程(2)中有多个Activity,获取位置信息的Activity不是MainActivity。这时再用this就无法获取到了,而改成getApplicationContext()就成功的获取到了位置信息…这是什么原因呢?希望您能解答一下…再次致谢!百度类参考里面写的: public LocationClient ( Context ) //须在主线程中声明是不是跟这个有关系,this不在主线程? 应该是这样的,只有一个Activity时候,其this是在主线程中,当我做的有多个Activity的时候,入口Activity是另外的一个,也就是说,此时再用this,就不是在主线程中了…也不知道是不是这样子的,我暂时就先这样理解了,如果您有什么好的解释,麻烦您告诉我一下…谢谢! 谢谢了,用这种方法果然可以。但是,我还是有点不懂:工程(1)中是我做测试用的,里面只有一个MainActivity的时候,我用this,成功获取到了位置信息,工程(2)中有多个Activity,获取位置信息的Activity不是MainActivity。这时再用this就无法获取到了,而改成getApplicationContext()就成功的获取到了位置信息…这是什么原因呢?希望您能解答一下…再次致谢!百度类参考里面写的: public LocationClient ( Context ) //须在主线程中声明是不是跟这个有关系,this不在主线程? 应该是这样的,只有一个Activity时候,其this是在主线程中,当我做的有多个Activity的时候,入口Activity是另外的一个,也就是说,此时再用this,就不是在主线程中了…也不知道是不是这样子的,我暂时就先这样理解了,如果您有什么好的解释,麻烦您告诉我一下…谢谢! 百度的官方示例你看了么,定位图层那个例子里面用的就是this,而不是getapplicationcontext <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" android:exported="false"> <intent-filter > <action android:name="com.baidu.location.service" android:exported="false"/> </intent-filter> </service><uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>java文件加入option.setServiceName("com.baidu.location.service");就解决了无法启动service的问题。包里有内置service option.setOpenGps(true);//打开gps 加这句试试 初始化LocationClient类此处需要注意:LocationClient类必须在主线程中声明。需要Context类型的参数。Context需要时全进程有效的context,推荐用getApplicationConext获取全进程有效的context官方文档说的很清楚了; 【100分求答案】问个关于notification和activity的小白问题,求指点 各位高手有没有做过android里应用分享 android自带浏览器播放视频的问题 ID不自动生成 android.R.layout的常量对应的布局 这段话啥意思 Adapter的使用求解 TextView赋值问题 急!Android应用加入微信分享,调用不了微信 口袋通和微信的公众订阅号有关系吗? android程序在真机上运行不了 在线求解 proguard混淆的解释
把你的this改为getApplicationContext()就行了。
代码是没有问题的,我的问题出在没有在配置文件中配置service这个组件
遭遇与层主一致,调了一两天了擦...
搞清楚问题了么? 我看了下getApplicationContext()和this的区别,关于生命周期的,但是没弄明白
百度类参考里面写的:
public LocationClient ( Context ) //须在主线程中声明
是不是跟这个有关系,this不在主线程?
百度类参考里面写的:
public LocationClient ( Context ) //须在主线程中声明
是不是跟这个有关系,this不在主线程? 应该是这样的,只有一个Activity时候,其this是在主线程中,当我做的有多个Activity的时候,入口Activity是另外的一个,也就是说,此时再用this,就不是在主线程中了…也不知道是不是这样子的,我暂时就先这样理解了,如果您有什么好的解释,麻烦您告诉我一下…谢谢!
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote"
android:exported="false">
<intent-filter >
<action android:name="com.baidu.location.service"
android:exported="false"/>
</intent-filter>
</service>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>java文件加入option.setServiceName("com.baidu.location.service");
就解决了无法启动service的问题。包里有内置service
官方文档说的很清楚了;