【发布时间】:2011-12-22 09:10:56
【问题描述】:
我遇到了以下问题。
我的应用程序将图像库呈现给用户以选择文件,然后打开一个输入流以读取该文件并通过某种媒体发送它。这是完成工作的代码:
ContentResolver resolver = getContentResolver();
fileStream = resolver.openInputStream(fileUri);
当所选图像驻留在设备存储中(例如从相机拍摄的照片等)并且我得到一个 content:// 方案 URI 时,一切都很好。问题是当我从我的 Picasa 相册中选择一张图片时,该相册显然会按需从 Picasa 服务器加载图片。在这种情况下,我得到一个 https:// 方案 URI,并且 openInputStream 调用失败,并出现 FileNotFoundException“无内容提供者”。
我的问题是在这种情况下获取输入流的最佳方式是什么?我正在考虑打开一个 URL 连接,但我想知道这是否是最佳选择?我不确定 Android 中的内容提供程序是否可以为此提供更好的解决方案。
【问题讨论】:
-
Picasa 图片如何显示在图库中?
-
我猜它可以通过我的 Google 帐户访问我的 Picasa 相册
标签: android uri android-contentprovider