如何从loopj获取android-async-http的Throwable(错误)?

时间:2013-01-22 15:50:24

标签: android post request loopj android-async-http

我正在使用来自LoopJ(https://github.com/loopj/android-async-http)的(我猜)相当流行的库来发出GET和POST请求。一切都工作得很好,但是当涉及到cookie处理时,我遇到了一些错误。有时,我的应用程序中的POST-Login请求无故失败。在这种情况下,POST请求的onFailure方法被正确调用:

        @Override
        public void onFailure(Throwable error, String content) {
            Log.e("custom onFailure POST", error.getMessage());
            cb.onTaskComplete("LOGIN_FAILED");
        }

奇怪的是,“Throwable error”和“String content”都是NULL对象。这使得分析将用户登录到我的应用程序的问题变得非常困难。有人能告诉我,如何获得失败的根源?是否还有其他方法可以实现从请求中获得更好的故障转发?

1 个答案:

答案 0 :(得分:0)

最简单的方法是调试应用程序,在onFailure方法中放置一个断点。当它在该断点上停止时,查看调用堆栈以找到错误源自的位置。

此外,在您的方法中,您可以调用Thread.currentThread().getStackTrace()然后循环遍历StackTraceElement[]数组 - 这样您就可以将信息输出到日志(或标准输出等),这样您就不需要调试中的应用程序。