android - java.lang.RuntimeException:执行doInBackground()时出错?
问题描述
当我单击从模拟器的管理面板中添加的试用视频时,我收到了这样的错误。
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
推荐阅读
- jupyter - 是否可以手动更新interactive_output?
- javascript - 让 Promise.race 仅在成功时完成
- python-3.x - 为了使其实例实现上下文管理器协议,需要在类 A 中重新定义哪些功能?
- c# - 由于与 ILogger 的引用冲突,无法启动依赖注入的 Azure 函数
- visual-studio - 连接到其他计算机上的 adb 服务器的 Visual Studio 可以运行连接到其他计算机的 android 设备吗?
- codenameone - 如何在屏幕底部为 iPhone X 任务切换栏留下空白?
- python - 使用 Selenium 和条件 xpath 来单击元素
- python-3.x - 使用 Pandas 填充缺失的数据
- php - 使用 dockerfile 在 docker 中安装 mongodb 驱动程序
- python-3.x - test_request_context 中的 Cating 烧瓶中止状态代码