Android:图片库分享到应用程序

标签 android image gallery share

我有一个应用程序可以接受图片库中的图片(通过共享菜单)。我的应用启动,我这样做:

    Bundle bundle = getIntent().getExtras();
    Object obj = bundle.get("android.intent.extra.STREAM");

调试时,Eclipse 报告对象 obj 的类型为“Uri@StringUri”(???),并且在其中某处是字符串“content://media/external/images/media/992”。任何人都知道对象 obj 是什么类型,所以我可以对它进行类型转换?字符串是关于什么的? IE,如何获取图像数据?

最佳答案

它是 Uri 类型,一种通用资源标识符。

content://media/external/images/media/992 是图片的 URI。要将其转换为直接文件系统路径,请将 URI 传递给我在本网站其他地方找到的此方法:

// Convert the image URI to the direct file system path of the image file
 public String getRealPathFromURI(Uri contentUri) {

    String [] proj={MediaStore.Images.Media.DATA};
    Cursor cursor = managedQuery( contentUri,
            proj, // Which columns to return
            null,       // WHERE clause; which rows to return (all rows)
            null,       // WHERE clause selection arguments (none)
            null); // Order-by clause (ascending by name)
    int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
    cursor.moveToFirst();

    return cursor.getString(column_index);
 }

关于Android:图片库分享到应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4061187/

相关文章:

android - java.lang.NoClassDefFoundError : dagger/Provides 错误

android - 导入维基词典时出现构建错误

python - Pygame:通过网络发送图像 PodSixNet

android - 获取远程图片导致android中的NetworkOnMainThreadException

android - 保存从画廊中挑选的图像以备将来使用

android - Xamarin 表单异常 : windowmanagerbadtokenexception

PHP将图像转换为二进制文件测试

javascript - 我正在寻找类似下面链接的 Flash 或 JavaScript 幻灯片

javascript - 添加新图像时是否可以让 JQuery Gallery 自动更新?

android - 从 Eclipse 调试/加载 bluestacks