我正在处理 GPS 部分和标准,我可以将精度设置为 ACCURACY_FINE、ACCURACY_MEDIUM 等。但是,由于某种原因,如果我将标准设置为 ACCURACY_HIGH,我会不断收到强制关闭错误。关于可能导致它的原因有什么想法吗?
这是我的 list ,我很确定一切正常,因为我可以使用不同的条件:
<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_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
这是我的日志:
07-05 08:51:48.641: W/dalvikvm(1040): threadid=1: thread exiting with uncaught exception (group=0x40015578)
07-05 08:51:48.657: E/AndroidRuntime(1040): FATAL EXCEPTION: main
07-05 08:51:48.657: E/AndroidRuntime(1040): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.jetdelivery.mobile/com.jetdelivery.mobile.statuspage}: java.lang.IllegalArgumentException: accuracy=3
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.os.Handler.dispatchMessage(Handler.java:99)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.os.Looper.loop(Looper.java:130)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.ActivityThread.main(ActivityThread.java:3687)
07-05 08:51:48.657: E/AndroidRuntime(1040): at java.lang.reflect.Method.invokeNative(Native Method)
07-05 08:51:48.657: E/AndroidRuntime(1040): at java.lang.reflect.Method.invoke(Method.java:507)
07-05 08:51:48.657: E/AndroidRuntime(1040): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
07-05 08:51:48.657: E/AndroidRuntime(1040): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
07-05 08:51:48.657: E/AndroidRuntime(1040): at dalvik.system.NativeStart.main(Native Method)
07-05 08:51:48.657: E/AndroidRuntime(1040): Caused by: java.lang.IllegalArgumentException: accuracy=3
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.location.Criteria.setAccuracy(Criteria.java:223)
07-05 08:51:48.657: E/AndroidRuntime(1040): at com.jetdelivery.mobile.statuspage.onCreate(statuspage.java:125)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-05 08:51:48.657: E/AndroidRuntime(1040): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
07-05 08:51:48.657: E/AndroidRuntime(1040): ... 11 more
我正在使用 Android 2.3.5 固件进行开发。谢谢!
最佳答案
机器人Criteria有两组独立的精度常数。 ACCURACY_FINE 和 ACCURACY_COARSE 用于一般定位,而 ACCURACY_LOW、ACCURACY_MEDIUM 和 ACCURACY_HIGH “可用于水平、高度、速度或方位精度。”如果您谈论的是一般 GPS 位置,您应该使用粗略或精细。
关于Android GPS ACCURACY_HIGH 导致强制关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11348109/
下面的代码在我第一次运行它时就可以正常工作:require'rubygems'require'spreadsheet'book=Spreadsheet.open'/Users/me/myruby/Mywks.xls'sheet=book.worksheet0row=sheet.row(1)putsrow[1]book.write'/Users/me/myruby/Mywks.xls'当我再次运行它时,我会收到更多消息,例如:/Library/Ruby/Gems/1.8/gems/spreadsheet-0.6.5.9/lib/spreadsheet/excel/reader.rb:11
我目前正在用Ruby编写一个项目,它使用ActiveRecordgem进行数据库交互,我正在尝试使用ActiveRecord::Base.logger记录所有数据库事件具有以下代码的属性ActiveRecord::Base.logger=Logger.new(File.open('logs/database.log','a'))这适用于迁移等(出于某种原因似乎需要启用日志记录,因为它在禁用时会出现NilClass错误)但是当我尝试运行包含调用ActiveRecord对象的线程守护程序的项目时脚本失败并出现以下错误/System/Library/Frameworks/Ruby.frame
一段时间以来,我一直在使用open_uri下拉ftp路径作为数据源,但突然发现我几乎连续不断地收到“530抱歉,允许的最大客户端数(95)已经连接。”我不确定我的代码是否有问题,或者是否是其他人在访问服务器,不幸的是,我无法真正确定谁有问题。本质上,我正在读取FTPURI:defself.read_uri(uri)beginuri=open(uri).readuri=="Error"?nil:urirescueOpenURI::HTTPErrornilendend我猜我需要在这里添加一些额外的错误处理代码...我想确保我采取一切预防措施来关闭所有连接,这样我的连接就不是问题所在,但是我
我正在尝试获得良好的Ruby编码风格。为防止意外调用具有相同名称的局部变量,我总是在适当的地方使用self.。但是现在我偶然发现了这个:classMyClass上面的代码导致错误privatemethodsanitize_namecalled但是当删除self.并仅使用sanitize_name时,它会起作用。这是为什么? 最佳答案 发生这种情况是因为无法使用显式接收器调用私有(private)方法,并且说self.sanitize_name是显式指定应该接收sanitize_name的对象(self),而不是依赖于隐式接收器(也是
我有一个super简单的脚本,它几乎包含了FayeWebSocketGitHub页面上用于处理关闭连接的内容:ws=Faye::WebSocket::Client.new(url,nil,:headers=>headers)ws.on:opendo|event|p[:open]#sendpingcommand#sendtestcommand#ws.send({command:'test'}.to_json)endws.on:messagedo|event|#hereistheentrypointfordatacomingfromtheserver.pJSON.parse(event.d
下面的代码工作正常:person={:a=>:A,:b=>:B,:c=>:C}berson={:a=>:A1,:b=>:B1,:c=>:C1}kerson=person.merge(berson)do|key,oldv,newv|ifkey==:aoldvelsifkey==:bnewvelsekeyendendputskerson.inspect但是如果我在“ifblock”中添加return,我会得到一个错误:person={:a=>:A,:b=>:B,:c=>:C}berson={:a=>:A1,:b=>:B1,:c=>:C1}kerson=person.merge(berson
我要下载http://foobar.com/song.mp3作为song.mp3,而不是让Chrome在其native中打开它浏览器中的播放器。我怎样才能做到这一点? 最佳答案 您只需要确保发送这些header:Content-Disposition:attachment;filename=song.mp3;Content-Type:application/octet-streamContent-Transfer-Encoding:binarysend_file方法为您完成:get'/:file'do|file|file=File.
我有一个ruby脚本可以打开与Apple推送服务器的连接并发送所有待处理的通知。我看不出任何原因,但当Apple断开我的脚本时,我遇到了管道损坏错误。我已经编写了我的脚本来适应这种情况,但我宁愿只是找出它发生的原因,这样我就可以在第一时间避免它。它不会始终根据特定通知断开连接。它不会以特定的字节传输大小断开连接。一切似乎都是零星的。您可以在单个连接上发送的数据传输或有效负载计数是否有某些限制?看到人们的解决方案始终保持一个连接打开,我认为这不是问题所在。我看到连接在3次通知后断开,我看到它在14次通知后断开。我从未见过它能超过14点。有没有人遇到过这种类型的问题?如何处理?
使用ruby的watir测试网络应用程序时,浏览器最后会保持打开状态。网上的一些建议是,要进行真正的单元测试,您应该在每次测试时(在拆卸调用中)打开和关闭浏览器,但这很慢而且毫无意义。或者他们做这样的事情:defself.suites=superdefs.afterClass#Closebrowserenddefs.run(*args)superafterClassendsend但这会导致摘要输出不再显示(诸如“100次测试、100次断言、0次失败、0次错误”之类的内容仍应显示)。我怎样才能让ruby或watir在我的测试结束时关闭浏览器? 最佳答案
我遇到了同样的问题here对于python,但对于ruby。我需要输出这样一个小数字:0.00001,而不是1e-5。有关我的特定问题的更多信息,我正在使用f.write("Mynumber:"+small_number.to_s+"\n")输出到一个文件对于我的问题,准确性不是什么大问题,所以只做一个if语句来检查是否small_number那么更通用的方法是什么? 最佳答案 f.printf"Mynumber:%.5f\n",small_number您可以将.5(小数点右侧5位数字)替换为您喜欢的任何特定格式大小,例如,%8