2013-07-25 35 views
6

Đang cố gắng tiết kiệm bitmap vào bộ sưu tậpUnknown Lỗi URI trong insertImage

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"); 

Tôi chạy các ứng dụng trên giả lập và có một 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) 

Rất tiếc, tôi không có bất kỳ thiết bị Android nào ngay bây giờ, đây có phải là do trình giả lập không? Hay một lý do khác?

Trả lời

0

Nó hoạt động trên Galaxy Nexus. Vì vậy, nó có thể là vấn đề Emulator.

2

Tôi đã gặp sự cố tương tự khi thư mục DCIM/Camera không tồn tại trên sdcard. Tạo thư mục (và có sự cho phép) đã giải quyết một vấn đề tương tự cho tôi.

+0

giấy phép gì ...? – zezba9000

1

Tôi thấy rằng đó là một vấn đề trình mô phỏng. Tôi đã không thiết lập trình giả lập một cách chính xác. Để khắc phục điều này, tôi đã mở trình quản lý thiết bị Android ảo, chỉnh sửa AVD và thêm kích thước Thẻ SD. Một khi tôi đã làm điều đó tôi bắt đầu AVD và chụp ảnh. Sau khi tôi đã làm điều đó, nó bắt đầu hoạt động.

Các vấn đề liên quan