当我在模拟器中单击从管理面板添加的试用视频时,我会收到这样的错误。
EXCEPTION: AsyncTask #4
Process: yupitr.xhub.video, PID: 2749
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:354)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
at java.util.concurrent.FutureTask.setException(FutureTask.java:252)
at java.util.concurrent.FutureTask.run(FutureTask.java:271)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.ClassCastException: com.android.okhttp.internal.huc.HttpURLConnectionImpl cannot be cast to javax.net.ssl.HttpsURLConnection
at yupitr.xhub.video.Methods.Methods.getBitmapFromURL(Methods.java:390)
at yupitr.xhub.video.Activity.video.All_PlayerActivity$LoadColor.doInBackground(All_PlayerActivity.java:443)
at yupitr.xhub.video.Activity.video.All_PlayerActivity$LoadColor.doInBackground(All_PlayerActivity.java:430)
at android.os.AsyncTask$2.call(AsyncTask.java:333)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764)
BitmapFromUrl代码这里有我应该组织的地方吗?问题出在哪里?我找不到它
public Bitmap getBitmapFromURL(String src) {
try {
URL url = new URL(src);
InputStream input;
if(Setting.SERVER_URL.contains("https://")) {
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
input = connection.getInputStream();
} else {
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
input = connection.getInputStream();
}
return BitmapFactory.decodeStream(input);
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
在代码上检查此强制转换:
Caused by: java.lang.ClassCastException: com.android.okhttp.internal.huc.HttpURLConnectionImpl cannot be cast to javax.net.ssl.HttpsURLConnection
错误指向这些行:
All_PlayerActivity.java:443
All_PlayerActivity.java:430