我恰巧也原来做过员工位置管理,使用百度api或者类似的。说白了就是定位不要纯依赖gps,很多硬件为了省电,会对熄屏下的模块功能和运行进行限制。还有个问题就是熄屏大概30分钟后手机蜂窝数据也会休眠,这时候就必须要用服务唤醒一次才可以了。
解决方案 »
- 关于读取email数据库德权限问题
- Android requires compiler compliance level 5.0 or 6.0. Found '1.7'
- android开发环境安装太费劲了!各位老师帮帮忙?
- Android2.3.4(linux)下什么文件记录了相关的信息呢(与WinCE下注册表相对应的信息)?
- 移植C++或者java代码到Android源码的步骤
- 在STK应用中 send sms 出现异常
- google 工具栏字词翻译功能
- ViewGroup类的setOnTouchListener无效
- 关于ksoap2 中产生的错误
- 大神帮帮忙
- android开发一般都看哪些开发网站学习?应聘的话哪些网站上投简历比较靠谱?求大神门解答。。。
- 有没有图片缩放移动裁剪的demo?
我现在使用android自带的gps功能,之前用过百度的,可以实现屏幕关闭状态下的定位,但是实际测试的过程中,同样的路线,中间经常会有一段gps定位不上,一直也没解决,所以就看看用自带的定位功能,而且自带的还有每隔多少米定位一次的功能,更符合我的需要。
楼主可以考虑下高德。
多谢您。
之前用过百度的,是没有这个功能的,后来尝试了android自带的gps功能,但是锁屏下的定位一直没搞定
private void acquireWakeLock() {
if (null == wakeLock) {
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK
| PowerManager.ON_AFTER_RELEASE, getClass()
.getCanonicalName());
if (null != wakeLock) {
// Log.i(TAG, "call acquireWakeLock");
wakeLock.acquire();
}
}
} // 释放设备电源锁
private void releaseWakeLock() {
if (null != wakeLock && wakeLock.isHeld()) {
// Log.i(TAG, "call releaseWakeLock");
wakeLock.release();
wakeLock = null;
}
}
在定位的service onStart()调用acquireWakeLock(),在onDestroy()调用releaseWakeLock();
我用的是高德地图,最近刚做这个功能,希望对你有帮助,另外你参考http://blog.csdn.net/ryantang03/article/details/9317499,他说的很详细