diff --git a/app/src/main/java/com/github/tvbox/osc/js/DrpyMethods.java b/app/src/main/java/com/github/tvbox/osc/js/DrpyMethods.java index d6a5390a..3df55a5a 100644 --- a/app/src/main/java/com/github/tvbox/osc/js/DrpyMethods.java +++ b/app/src/main/java/com/github/tvbox/osc/js/DrpyMethods.java @@ -13,6 +13,7 @@ import java.nio.charset.Charset; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.concurrent.TimeUnit; import okhttp3.Headers; import okhttp3.MediaType; @@ -70,7 +71,15 @@ public class DrpyMethods { } else { client = OkGoHelper.getNoRedirectClient(); } - Response response = client.newCall(request).execute(); + OkHttpClient.Builder clientBuilder = client.newBuilder(); + int timeout = 5000; + if (jsonObject.has("timeout")) { + timeout = jsonObject.optInt("timeout"); + } + clientBuilder.readTimeout(timeout, TimeUnit.MILLISECONDS); + clientBuilder.writeTimeout(timeout, TimeUnit.MILLISECONDS); + clientBuilder.connectTimeout(timeout, TimeUnit.MILLISECONDS); + Response response = clientBuilder.build().newCall(request).execute(); JSObject result = new JSObject(module); JSObject resultHeaders = new JSObject(module); Set names = response.headers().names(); diff --git a/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java b/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java index 2b399b21..67f3d829 100644 --- a/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java +++ b/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java @@ -521,6 +521,7 @@ public class PlayFragment extends BaseLazyFragment { url="http://home.jundie.top:666/unBom.php?m3u8="+url; } String finalUrl = url; + if (mActivity == null) return; requireActivity().runOnUiThread(new Runnable() { @Override public void run() { @@ -1278,6 +1279,7 @@ public class PlayFragment extends BaseLazyFragment { } void stopLoadWebView(boolean destroy) { + if (mActivity == null) return; requireActivity().runOnUiThread(new Runnable() { @Override public void run() {