91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

android http怎樣設置超時時間

小樊
81
2024-11-19 09:27:42
欄目: 編程語言

在Android中,您可以使用HttpURLConnection或者第三方庫如OkHttp來設置HTTP請求的超時時間。下面是兩種方法的示例:

方法1:使用HttpURLConnection

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;

public class MainActivity extends AppCompatActivity {

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

        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    URL url = new URL("http://example.com");
                    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                    connection.setConnectTimeout(5000); // 設置連接超時時間為5秒
                    connection.setReadTimeout(5000); // 設置讀取數據超時時間為5秒
                    int responseCode = connection.getResponseCode();
                    Log.d("ResponseCode", String.valueOf(responseCode));
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }).start();
    }
}

方法2:使用OkHttp

首先,您需要在項目的build.gradle文件中添加OkHttp依賴:

dependencies {
    implementation 'com.squareup.okhttp3:okhttp:4.9.1'
}

然后,您可以使用以下代碼設置超時時間:

import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

public class MainActivity extends AppCompatActivity {

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

        OkHttpClient client = new OkHttpClient.Builder()
                .connectTimeout(5, TimeUnit.SECONDS) // 設置連接超時時間為5秒
                .readTimeout(5, TimeUnit.SECONDS) // 設置讀取數據超時時間為5秒
                .build();

        Request request = new Request.Builder()
                .url("http://example.com")
                .build();

        client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                e.printStackTrace();
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                if (response.isSuccessful()) {
                    String responseBody = response.body().string();
                    Log.d("ResponseCode", String.valueOf(response.code()));
                } else {
                    Log.d("ResponseCode", String.valueOf(response.code()));
                }
            }
        });
    }
}

請注意,如果您使用OkHttp并希望在后臺線程中執行網絡請求,請確保您已在AndroidManifest.xml中添加INTERNET權限:

<uses-permission android:name="android.permission.INTERNET" />

0
康定县| 仁化县| 中方县| 札达县| 当阳市| 随州市| 扬州市| 富裕县| 福贡县| 女性| 兴宁市| 乌拉特中旗| 兴业县| 北辰区| 万盛区| 玛多县| 涟水县| 张家界市| 共和县| 大兴区| 龙泉市| 乐昌市| 社旗县| 瑞丽市| 梧州市| 安图县| 永和县| 武邑县| 汉沽区| 马山县| 北票市| 南投市| 东源县| 深泽县| 华容县| 诸城市| 丰镇市| 会东县| 巴林左旗| 剑川县| 台东市|