Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 接口实现错误?_Java_Android - Fatal编程技术网

Java 接口实现错误?

Java 接口实现错误?,java,android,Java,Android,我对安卓系统的经验较少,每当用户收到firebase的推送通知时,我都会尝试使用Volley库在后台下载一个文件 我遵循了这个教程 我的firebase通知接收器类看起来像 public class MyFirebaseMessagingService extends FirebaseMessagingService implements Response.Listener<byte[]>, Response.ErrorListener { 我在传递的上下文中遇到错误 任何帮助

我对安卓系统的经验较少,每当用户收到firebase的推送通知时,我都会尝试使用Volley库在后台下载一个文件

我遵循了这个教程

我的firebase通知接收器类看起来像

public class MyFirebaseMessagingService extends FirebaseMessagingService implements Response.Listener<byte[]>, Response.ErrorListener {
我在传递的上下文中遇到错误

任何帮助对我来说都是非常有用的

预期参数为截击侦听器、错误侦听器,并且您正在传递android上下文

预期参数为截击侦听器、错误侦听器,并且您正在传递android上下文


很明显,正如您从图像中看到的,您传递了错误的上下文。您需要传递volley.Response.Listener而不是adnroid.content.Context,但我已经在我的类中实现了它。。。实现Response.Listener,Response.errorListener将
上下文
替换为
谢谢@shine_joseph,成功了!很明显,正如您从图像中看到的,您传递了错误的上下文。您需要传递volley.Response.Listener而不是adnroid.content.Context,但我已经在我的类中实现了它。。。实现Response.Listener,Response.errorListener将
上下文
替换为
谢谢@shine_joseph,成功了!如果没有解释,您的正确答案将失去其价值。附加解释。。。thnaks@davidxxx如果没有解释,您的正确答案将失去其价值。附加解释。。。thnaks@davidxxx
public class InputStreamVolleyRequest extends Request<byte[]> {
    private final Response.Listener<byte[]> mListener;
    private Map<String, String> mParams;
    //create a static map for directly accessing headers
    public Map<String, String> responseHeaders;

    public InputStreamVolleyRequest(int post, String mUrl, Response.Listener<byte[]> listener,
                                    Response.ErrorListener errorListener, HashMap<String, String> params) {
        // TODO Auto-generated constructor stub

        super(post, mUrl, errorListener);
        // this request would never use cache since you are fetching the file content from server
        setShouldCache(false);
        mListener = listener;
        mParams = params;
    }

    @Override
    protected Map<String, String> getParams()
            throws com.android.volley.AuthFailureError {
        return mParams;
    }

    ;


    @Override
    protected void deliverResponse(byte[] response) {
        mListener.onResponse(response);
    }

    @Override
    protected Response<byte[]> parseNetworkResponse(NetworkResponse response) {

        //Initialise local responseHeaders map with response headers received
        responseHeaders = response.headers;

        //Pass the response data here
        return Response.success(response.data, HttpHeaderParser.parseCacheHeaders(response));
    }
}
request = new InputStreamVolleyRequest(Request.Method.GET, urltohit, context, context, null);
request = new InputStreamVolleyRequest(Request.Method.GET, urltohit, this, this, null);