Android中的Volley不再起作用...?

亚历克斯

我试图更加清晰地编写一些android代码(避免使用类内定义),但是我偶然发现了例如在此描述的凌空问题,这似乎不起作用!首先,这是我的代码段:

public class ServiceStock {

    public Context context;

    private class ResponseListener implements Response.Listener<String>  {

        ResponseListener() {
            Log.d("test Listener", "constructor");
        }

        @Override
        public void onResponse(String response) {
            Log.d("test Listener:", response);
        }

    }

    private class ErrListener implements Response.ErrorListener  {

        public Context context;

        ErrListener(Context context) {
            this.context = context;
            Log.d("error Listener", "constructor");
        }


        @Override
        public void onErrorResponse(VolleyError error) {
            Toast.makeText(this.context, "Did not work", Toast.LENGTH_SHORT).show();
            Log.d("error Listener", "error");
        }


    }

    public ServiceStock(Context context)
    {
        this.context = context;
    }

    public String getCurrentStockPrice(String symbol) {
        Log.d("ServiceTest", "method_start");
        RequestQueue queue = Volley.newRequestQueue(this.context);
        String url = "http://finance.yahoo.com/d/quotes.csv?s=" + symbol + "&f=sl1";

        ResponseListener listener = new ResponseListener();
        ErrListener error = new ErrListener(this.context);
        StringRequest stringRequest = new StringRequest(
                Request.Method.GET,
                url,
                listener,
                error
        );
        Log.d("ServiceTest", "method_end");

        return "OK";

    }
}

可以看到,我正在写入日志文件。我看到以下输出:

0 20:01:54.215 3299-3299/com.impyiablue.stoxx D/ServiceTest: method_start
12-10 20:01:54.229 3299-3299/com.impyiablue.stoxx D/test Listener: constructor
12-10 20:01:54.229 3299-3299/com.impyiablue.stoxx D/error Listener: constructor
12-10 20:01:54.238 3299-3299/com.impyiablue.stoxx D/ServiceTest: method_end

但没有别的。使用listenererror实例时,我看不到日志输出但是其中之一必须使用!至少当我使用类定义时,它可以正常工作。但现在没有onResponse,也没有onErrorResponse被称为!?那么怎么回事以及如何解决呢?

PS:也许有人对如何使context处理更加复杂有想法哈...

安基特

android中的Volley不再起作用…?

如果实施正确,它确实可以工作。

这是您的代码中的问题。

您只是在创建stringRequest而不执行它!甚至没有将其添加到requestQueue中

RequestQueue queue = Volley.newRequestQueue(this/*ActivityContext*/);
queue.add(stringRequest); // you need something like this.

这是为您提供的简单请求教程链接

在齐射实施人员中,这是更常见的错误。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

android:textColor在棉花糖中不再起作用

来自分类Dev

Volley JsonObjectRequest Post参数不再起作用

来自分类Dev

IntelliJ中的Intellisense不再起作用

来自分类Dev

$(this)在onClick事件中不再起作用

来自分类Dev

C ++中的循环不再起作用

来自分类Dev

freegeoip不再起作用

来自分类Dev

FormData不再起作用

来自分类Dev

SwiftSpinner不再起作用

来自分类Dev

@ 注释不再起作用

来自分类Dev

Android KitKat(4.4)视频自动播放在webview中不再起作用

来自分类Dev

Android Java下载管理器不再起作用

来自分类Dev

startUpdatingLocation在XCode 6.1中不再起作用

来自分类Dev

数据URI在Chrome中不再起作用,为什么?

来自分类Dev

localStorage在iOS 7 WebView中不再起作用

来自分类Dev

cflocation在CF10中不再起作用

来自分类Dev

CSS3 Transition在Chrome中不再起作用

来自分类Dev

UITextField上的UITapGestureRecognizer在IOS 7.1中不再起作用

来自分类Dev

Destroy()在Unity3D中不再起作用

来自分类Dev

<head>中的JavaScript在AJAX调用后不再起作用

来自分类Dev

AfterInterceptor在Grails 3.0.1中不再起作用

来自分类Dev

在R中编译c ++代码不再起作用

来自分类Dev

新文章在Joomla 3.3.3中不再起作用

来自分类Dev

表中的<link>和<div>不再起作用

来自分类Dev

为什么emacs在iTerm中不再起作用?

来自分类Dev

分布式通知在Catalina中不再起作用

来自分类Dev

日期的Docker标记在Gitlab中不再起作用

来自分类Dev

Django GEOS API中的几何交集不再起作用

来自分类Dev

UITextField上的UITapGestureRecognizer在IOS 7.1中不再起作用

来自分类Dev

新文章在Joomla 3.3.3中不再起作用