作者skywillnosky (Alfred)
看板java
标题Re: [问题] 关於android GPS的问题 (附上 DDMS 的 LogCat)
时间Thu Aug 19 21:43:31 2010
※ 引述《skywillnosky (Alfred)》之铭言:
: 程式语言:android
: 编辑软体:Eclipse
: 请问一下
: GPS定位不是会用到
: .getLongitude()
: .getLatitude()
: 专门抓经纬度的函式
: 可是不知道为什麽
: 只要牵涉到这两个函数
: 像是传给一个double型别的变数
: double x = xxx.getLongitude();
: 或是 xx.append(DoubletoString(xxx.getLongitude()));
: 程式就会跑不出来
: 有人知道为什麽吗?
: 诚心请教<(_ _)>
: PS:目前只有使用模拟器跑
: 完整程式码:http://203.64.183.230/MyLocation.7z
找了好久 总算找到LogCat在哪了(我是新手OTZ)
以下是LogCat(只显示error跟warning)
/************************************************************************/
WARN/dalvikvm(1638): threadid=3: thread exiting with
uncaught exception (group=0x4000fe70)
ERROR/AndroidRuntime(1638): Uncaught handler: thread main exiting due to
uncaught exception
ERROR/AndroidRuntime(1638):
java.lang.RuntimeException: Unable to start activity
ComponentInfo{com.demo.android.mylocation/com.demo.android.mylocation.MyLocation}:
java.lang.NullPointerException
ERROR/AndroidRuntime(1638): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2268)
ERROR/AndroidRuntime(1638): at
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2284)
ERROR/AndroidRuntime(1638): at
android.app.ActivityThread.access$1800(ActivityThread.java:112)
ERROR/AndroidRuntime(1638): at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1692)
ERROR/AndroidRuntime(1638): at
android.os.Handler.dispatchMessage(Handler.java:99)
ERROR/AndroidRuntime(1638): at
android.os.Looper.loop(Looper.java:123)
ERROR/AndroidRuntime(1638): at
android.app.ActivityThread.main(ActivityThread.java:3948)
ERROR/AndroidRuntime(1638): at
java.lang.reflect.Method.invokeNative(Native Method)
ERROR/AndroidRuntime(1638): at
java.lang.reflect.Method.invoke(Method.java:521)
ERROR/AndroidRuntime(1638): at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:782)08-19
ERROR/AndroidRuntime(1638): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
ERROR/AndroidRuntime(1638): at
dalvik.system.NativeStart.main(Native Method)
ERROR/AndroidRuntime(1638): Caused by: java.lang.NullPointerException
ERROR/AndroidRuntime(1638): at
com.demo.android.mylocation.MyLocation.updateStat(MyLocation.java:31)
ERROR/AndroidRuntime(1638): at
com.demo.android.mylocation.MyLocation.onCreate(MyLocation.java:18)
ERROR/AndroidRuntime(1638): at
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)
ERROR/AndroidRuntime(1638): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2231)
ERROR/AndroidRuntime(1638): ... 11 more
WARN/ActivityManager(568): Launch timeout has expired, giving up wake
lock!
WARN/ActivityManager(568): Activity idle timeout
for HistoryRecord{43638d18
{com.demo.android.mylocation/com.demo.android.mylocation.MyLocation}}
WARN/InputManagerService(568): Window already focused, ignoring
focus gain of:
com.android.internal.view.IInputMethodClient$Stub$Proxy@436b71d0
/*************************************************************************/
已经把时间删掉了
反正错误讯息就是由上而下应该不用吧
还有就是有人知道怎麽让复制的logcat换行吗?
排版搞的好辛苦= =
拜托各位神手了
※ 编辑: skywillnosky 来自: 125.230.108.106 (08/19 21:55)
1F:→ passli:在27行後面加上 08/19 23:13
2F:→ passli:criteria.setAccuracy(Criteria.ACCURACY_FINE); 08/19 23:14
3F:→ skywillnosky:问题解决了 可是跟大大说的那个无关= = 居然是模拟器 08/20 20:48
的GPS没开 後来找到该范例的原作者 似乎这个范例无法自己开启GPS 要先用前一个范例 google map预览的那个范例
来开启GPS功能 在执行这个范例才可以 不过还是感谢大家的热心帮忙
以下是某论坛 盖索林的留言
/****************************************************************************/
终於试出来同样的状态了。
原因是范例中未处理 GPS 未启动的情况,因此本范例必须在 GPS 启动状态下才可使用
验证方法:
* 可先进入 Maps 程式,按选单进入 My Locations 模式
* 若 My Locations 模式查不到座标,范例也不会查的到
解决方式:
这时,请进入 DDMS 或打开 Emulator Control 面板 (查看本书的 36-13 页或 36-6 节
....好像在同一章里嘛),照着这节的指示改变经纬度的参数,按下 Send 键即可看到
Maps 程式中座标跟着改变
这时 GPS 即处於启动状态,再去测 MyLocations 程式时即可正常使用。
--
有第二版的话就来加 GPS 启动程式码吧,有人要先试着写吗?
※ 编辑: skywillnosky 来自: 203.64.183.229 (08/20 20:56)