【问题标题】:Implement Basic HttpClient Post with Loopj on Android在 Android 上使用 Loopj 实现 Basic HttpClient Post
【发布时间】:2017-01-19 15:38:36
【问题描述】:

我是 Android 编程新手,在使用 Loopj 库实现消息发送器的基本版本时遇到了一些困难。

这是我的代码:

package com.test.app;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.loopj.android.http.*;

import org.apache.http.Header;

public class Test extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test);

        AsyncHttpClient client = new AsyncHttpClient();
        client.get("https://www.google.com", new AsyncHttpResponseHandler() {

            @Override
            public void onStart() {
                // called before request is started
            }

            @Override
            public void onSuccess(int statusCode, Header[] headers, byte[]     response) {
                // called when response HTTP status is "200 OK"
           }

            @Override
            public void onFailure(int statusCode, Header[] headers, byte[] errorResponse, Throwable e) {
                //called when response HTTP status is "4XX" (eg. 401, 403, 404)
            }

            @Override
            public void onRetry(int retryNo) {
                // called when request is retried
            }
        });

    }

}

这段代码给了我两个我正在尝试解决的错误:

  1. AsyncHttpClient 客户端 = new AsyncHttpClient();下划线 AsyncHttpClient 并报告错误:“必须将类声明为抽象或实现 onFailure 的抽象方法”

  2. onSuccess 和 onFailure 的 @Override 指定带有下划线,并且错误状态为“该方法未覆盖其超类中的方法”。

如何在我的 Android Activity 中进行这项工作?

【问题讨论】:

  • 你为什么使用这个没有社区和更新的旧 http 客户端?
  • 好吧,因为我是新手,我看到了使用此代码将消息推送到 Azure 的示例代码。你有什么建议吗?我对不同的方法持开放态度。

标签: android httpclient android-async-http loopj asynchttpclient


【解决方案1】:

这是因为导入错误。

你应该替换:

import org.apache.http.Header;

import cz.msebera.android.httpclient.Header;

更新:

顺便说一句,如果你想进行 HTTP POST,你应该使用 .post() 而不是 .get()

【讨论】:

  • 这行得通,如果你知道的话,请推荐替代库。
  • 如果你只想要客户端 okhttp 是目前最好的库。如果你想使用 okhttp 和 rxjava 的 REST API 客户端改造 2 是最现代的堆栈。恕我直言
  • 感谢您的帮助,我将尝试将旧代码改编为 okhttp。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-10
  • 2012-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多