【问题标题】:Unknown URI Error in insertImageinsertImage 中的未知 URI 错误
【发布时间】:2014-11-11 21:26:32
【问题描述】:

尝试将位图保存到图库中

Bitmap bitmap = Bitmap.createBitmap(surfaceView.getWidth(), surfaceView.getHeight(), Bitmap.Config.ARGB_8888);
surfaceView.draw(new Canvas(bitmap));
MediaStore.Images.Media.insertImage(getContentResolver(), bitmap, "foo" , "bar");

我在模拟器上运行了应用程序并得到了 UnsupportedOperationException。

07-25 22:27:48.719: E/MediaStore(1918): Failed to insert image
07-25 22:27:48.719: E/MediaStore(1918): java.lang.UnsupportedOperationException: Unknown URI: content://media/external/images/media
07-25 22:27:48.719: E/MediaStore(1918):     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:168)
07-25 22:27:48.719: E/MediaStore(1918):     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:136)
07-25 22:27:48.719: E/MediaStore(1918):     at android.content.ContentProviderProxy.insert(ContentProviderNative.java:415)
07-25 22:27:48.719: E/MediaStore(1918):     at android.content.ContentResolver.insert(ContentResolver.java:730)
07-25 22:27:48.719: E/MediaStore(1918):     at android.provider.MediaStore$Images$Media.insertImage(MediaStore.java:801)

不幸的是我现在没有任何安卓设备,这是因为模拟器吗?还是其他原因?

【问题讨论】:

    标签: android mediastore


    【解决方案1】:

    当 SD 卡上不存在 DCIM/Camera 目录时,我也遇到过类似的问题。创建目录(并拥有权限)为我解决了类似的问题。

    【讨论】:

      【解决方案2】:

      我发现这是一个模拟器问题。我没有正确设置模拟器。为了解决这个问题,我打开 android 虚拟设备管理器,编辑 AVD 并添加 SD 卡大小。完成后,我启动 AVD 并拍照。完成后,它就开始工作了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-18
        • 2013-06-24
        • 2015-02-05
        • 2018-09-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多