我有一个应用程序可以打开一个webview,并在另一个线程(asynctask)中,定期通过http向服务器提交GPS数据。
我看到以下异常,但难以查明来源。你能帮我吗? Android的相对新手在这里。
V/ Exception Handler( 206): java.lang.StringIndexOutOfBoundsException
V/ Exception Handler( 206):
V/ Exception Handler( 206): --------- Stack trace ---------
V/ Exception Handler( 206):
V/ Exception Handler( 206): java.lang.String.<init>(String.java:190)
V/ Exception Handler( 206): android.webkit.FrameLoader.populateStaticHeaders(FrameLoader.java:372)
V/ Exception Handler( 206): android.webkit.FrameLoader.handleHTTPLoad(FrameLoader.java:222)
V/ Exception Handler( 206): android.webkit.WebViewWorker.handleMessage(WebViewWorker.java:129)
V/ Exception Handler( 206): android.os.Handler.dispatchMessage(Handler.java:99)
V/ Exception Handler( 206): android.os.Looper.loop(Looper.java:130)
V/ Exception Handler( 206): android.os.HandlerThread.run(HandlerThread.java:60)
跟踪没有说明我的代码中是否有任何内容导致此问题。我只看到android系统代码。(或者可能是我看起来不正确)。
答案 0 :(得分:0)
在String构造函数中有一个StringIndexOutOfBoundsException是非常罕见的,我之前没有遇到它。您传递给AsyncTask的哪种数据(随后传递给WebKit)?它是字符串缓冲区还是某个数组?
通常当我无法推断出错误的原因时,我会尝试:
修改强>
当我尝试在我的模拟器上强制StringOutOfBoundsException
时,它是FATAL EXCEPTION
,日志级别为Error
,日志标记为AndroidRuntime
。在您的情况下,似乎ExceptionHandler
已捕获异常并已打印具有Verbose
日志级别的堆栈跟踪。这个异常处理程序是你自己的?或者它属于android框架?