12
A
回答
44
// Find the last picture
String[] projection = new String[]{
MediaStore.Images.ImageColumns._ID,
MediaStore.Images.ImageColumns.DATA,
MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
MediaStore.Images.ImageColumns.DATE_TAKEN,
MediaStore.Images.ImageColumns.MIME_TYPE
};
final Cursor cursor = getContext().getContentResolver()
.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null,
null, MediaStore.Images.ImageColumns.DATE_TAKEN + " DESC");
// Put it in the image view
if (cursor.moveToFirst()) {
final ImageView imageView = (ImageView) findViewById(R.id.pictureView);
String imageLocation = cursor.getString(1);
File imageFile = new File(imageLocation);
if (imageFile.exists()) { // TODO: is there a better way to do this?
Bitmap bm = BitmapFactory.decodeFile(imageLocation);
imageView.setImageBitmap(bm);
}
}
我還在工作的MMS發送部分。
2
通過https://stackoverflow.com/a/20065920/763459
啓發所以在這個問題的答案主要關注的是並非所有的設備都使用「DCIM」的相機文件夾下。然後我發現如果文件位於應用程序指定的文件夾內,它將被編入索引ContentResolver
,但其他應用程序無權訪問它,這意味着canRead=false
。所以我在這裏提出了另一種解決方案:
while (cursor.moveToNext()) {
String imagePath = cursor.getString(cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA));
File imageFile = new File(imagePath);
if (imageFile.canRead() && imageFile.exists()) {
// we have found the latest picture in the public folder, do whatever you want
break;
}
}
相關問題
- 1. 從用戶照片庫獲取最後一張照片返回兩張照片
- 2. 拍攝單張照片
- 3. AVFoundation每秒拍攝一張照片SWIFT
- 4. 如何用Kurento拍攝單張照片?
- 5. Android應用程序拍攝一張照片後崩潰?
- 6. 的Android相機拍攝多張照片
- 7. 顯示在ImageView中拍攝的最後一張照片不起作用
- 8. 拍攝照片後獲得gps位置
- 9. Flex手機拍攝多張照片
- 10. 在opencv中拍攝多張照片
- 11. 從Android設備拍攝多張照片
- 12. UIImagePickerController:如何拍攝1張照片?
- 13. 離子:相機在每張照片後要求確認/拍攝多張照片
- 14. 拍攝照片後無法選擇使用照片或重拍
- 15. 獲取拍攝照片無效
- 16. 拍攝一張照片,然後將其顯示到ImageView
- 17. 拍攝一張照片後,Android相機凍結
- 18. Android獲取最新拍攝照片的路徑
- 19. NativeScript Angular 2最近拍攝的照片
- 20. 使用CvVideoCamera拍攝照片
- 21. 使用QTCaptureView拍攝照片
- 22. 用X秒拍一張onTouch的照片
- 23. android無法獲取拍攝照片的大小..一個錯誤?
- 24. 照片拍攝後恢復camera.preview()
- 25. 照片拍攝完成後,OnActivityResult不叫
- 26. 在後臺服務拍攝照片
- 27. 如何從照片庫中獲取最後一張照片的路徑?
- 28. iPhone 3G(非3GS)在一秒鐘內拍攝多少張照片?
- 29. 訪談:一天拍攝多少張照片
- 30. iPhone可以一次快速拍攝2張照片多快?
我知道這是不太你問什麼,但也許它更是什麼意思?您可以啓動相機活動並獲取用戶拍攝的照片。請參閱這裏http://stackoverflow.com/questions/2314958/using-the-camera-activity-in-android – Craigy