我面对java.net.malformedurlexception:无协议:将URL转换为Android中的位图时
我正在尝试将URL转换为位图,然后将该位图设置为墙纸。所有这些过程都通过在Android中使用Worker类在后台完成。但是我没有协议错误。 然后我尝试通过将其转换为位图,
try {
URL url = new URL(image_url);
Bitmap image = BitmapFactory.decodeStream(url.openConnection().getInputStream());
myWallpaperManager.setBitmap(image,null,false,WallpaperManager.FLAG_SYSTEM);
} catch(IOException e) {
Log.e("tag102",e.getMessage());
}
但是这种方法给了我LogCat中的错误
2022-07-08 03:15:07.544 25513-25752/com.nightowl.stylo E/tag102: no protocol:
我正在从firebase获取任何一个随机墙纸链接, 任何错误。壁纸也会更改,
try {
URL url = new URL("https://images.pexels.com/photos/6336035/pexels-photo-6336035.jpeg?auto=compress&cs=tinysrgb&fit=crop&h=1200&w=800");
Bitmap image = BitmapFactory.decodeStream(url.openConnection().getInputStream());
myWallpaperManager.setBitmap(image,null,false,WallpaperManager.FLAG_SYSTEM);
} catch(IOException e) {
Log.e("tag102",e.getMessage());
}
但我希望随机字符串设置并从中获得位图。那我如何实现呢? 编码URL
try {
encodedURL = URLEncoder.encode(image_url, "UTF-8");
} catch (UnsupportedEncodingException e) {
Log.e("tag3",e.toString());
}
我还尝试通过我在此项目中使用三种URL
- https://images.pexels.com/photos/6336035/pexels-photo-6336035.jpeg?auto = compress&cs = tinysrgb; amp; amp; amp; amp; a>
- https://cdn.pixabay.com/photo/2020/11/27/22/07/naruto-5783102_960_720.png
- https://images.unsplash.com/photo-16414141414315243-196E7382C32D?IXLIB=rb-1.2.1.1.2.1&ixid= mnwxmja3fdb8mhxwag90by1wywdlfhx8fgvufdb8fhx8& auto =格式=格式& fit = crop& w = 1178&q = 80
任何帮助将不胜感激。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论