1

Android-Development 向けの優れた REST/HTTP クライアントを検索しましたが、私のニーズを満たすものは見つかりませんでした。

質問があります。Android プロジェクトで HTTP クライアント オブジェクトを再利用する良い方法はありますか?

リクエスト(非同期)を行うためにhttpclientにアクセスするための中心的な場所(おそらく静的クラス?)があれば良いでしょう...

Androidプロジェクトでこれを行うにはどうすればよいですか?

私の資格情報についても同じことが言えます。(私は基本認証を使用しており、アクティビティからアクティビティへ資格情報を渡したくありません)

4

3 に答える 3

2

RoboSpice をお勧めします。

RoboSpice は、非同期ネットワーク リクエストの記述を容易にするモジュラー Android ライブラリです。

これにはキャッシュ マネージャーがあり、サービスとして機能します。これは、一般的な AsyncTasks よりも優れていると思います。

https://github.com/octo-online/robospice

また、 R クラスには触れないでください。リソースから自動的に構築されます。

于 2013-03-09T21:58:30.893 に答える
1

チェックアウトすることをお勧めします

https://github.com/posco2k8/rest_loader_tutorial


また、解析が acync ローダーに移動し、UI スレッドでの遅延を回避するように、その場合の最終データになるRESTLoader.RESTResponse dataように、マイナーな改善の変更を提案します。変更の提案を指摘するコードを追加します。dataList<String>

@Override
public void onLoadFinished(Loader<RESTLoader.RESTResponse> loader, RESTLoader.RESTResponse data) {
    int    code = data.getCode();
    String json = data.getData(); // <-- (change) this should be the final data

    // Check to see if we got an HTTP 200 code and have some data.
    if (code == 200 && !json.equals("")) {

        // For really complicated JSON decoding I usually do my heavy lifting
        // Gson and proper model classes, but for now let's keep it simple
        // and use a utility method that relies on some of the built in
        // JSON utilities on Android.
        List<String> tweets = getTweetsFromJson(json); // <-- (change) that parse move to loader

        // Load our list adapter with our Tweets.
        mAdapter.clear();
        for (String tweet : tweets) {
            mAdapter.add(tweet);
        }
    }
    else {
        Toast.makeText(this, "Failed to load Twitter data. Check your internet settings.", Toast.LENGTH_SHORT).show();
    }
}
于 2013-03-09T22:01:27.357 に答える
0

前述のように、RoboSpice は非常に良い選択です。単純にローカル リソースをリモート データと同期させたい場合は、「リソース指向」ライブラリであるRestDroidを使用して、非同期 REST 要求を処理できます。

于 2013-03-18T11:11:02.547 に答える