如何在我的应用程序中获取从 Whats 应用程序的聊天中选择的图像路径?
Posted
技术标签:
【中文标题】如何在我的应用程序中获取从 Whats 应用程序的聊天中选择的图像路径?【英文标题】:How to Get Image Path in my App which is Selected from Whats app's Chat? 【发布时间】:2018-03-03 21:59:52 【问题描述】:我有带有图像视图的演示应用程序,在这个图像视图中我需要设置从 whats app 聊天中选择的图像, 目前我正在获取所选图像的路径,即 content://com.whatsapp.provider.media/item/245429
有什么办法解决这个问题吗? 提前谢谢你。
【问题讨论】:
【参考方案1】:没有图像路径,因为不要求此 Uri
指向文件,更不用说指向您可以直接访问文件系统的文件。
使用图片加载库(例如 Glide、Picasso)并提供您从 WhatsApp 获得的 Uri
。这些库知道如何使用ContentResolver
和openInputStream()
读取与该内容关联的字节,使用BitmapFactory.decodeStream()
将这些字节转换为Bitmap
,然后将Bitmap
放入您的ImageView
。
【讨论】:
感谢您的建议,我已经尝试过 Picasso ,但是没有并且抛出异常“找不到文件”,有没有办法从图库中获取本机图像路径,在 Whats App 实时聊天中选择了哪个文件,或从设备库中识别所选图像及其路径 @dharam: "但那不是并且抛出异常 "File Not Found"" -- 然后用 minimal reproducible example 提出一个单独的堆栈溢出问题,显示您的代码和错误的完整 Java 堆栈跟踪. “有什么方法可以从图库中获取本机图像路径”——没有。 请检查link 我也有同样的问题。 这是 Gmail 中的完美作品,即首先您在 whats 应用程序中从聊天中选择一张图片,然后与 gmail 分享,它可以很容易地显示在那里,但同样我的应用程序中的东西我正在从什么应用程序获取编码路径。 @dharam:您链接到的问题的答案与我建议的解决方案相同:使用openInputStream()
。如果您遇到问题,正如我所写的,请使用 minimal reproducible example 提出一个单独的 Stack Overflow 问题,其中显示您的代码和错误的完整 Java 堆栈跟踪。以上是关于如何在我的应用程序中获取从 Whats 应用程序的聊天中选择的图像路径?的主要内容,如果未能解决你的问题,请参考以下文章