Tag: mediastore

如何在android中通过图像id查看图像

我在MediaStore中获得了图片ID。 如何在ID中查看图库中的图像? 我目前使用以下代码: ContentResolver cr = context.getContentResolver(); String columns[] = new String[]{ Media._ID, Media.DATA }; Cursor cursor = cr.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, columns, Media._ID+”=?”, new String[]{id+””}, null); if(cursor.moveToNext()) { String imagePath = cursor.getString(cursor.getColumnIndex(Media.DATA)); Uri imageUri = Uri.fromFile(new File(imagePath)); Intent intent = new Intent(); intent.setAction(android.content.Intent.ACTION_VIEW); intent.addCategory(android.content.Intent.CATEGORY_DEFAULT); intent.setDataAndType(imageUri, “image/*”); ((Activity)context).startActivity(intent); } 它有效,但它太麻烦了。 我认为应该有一种更简单的方法来做到这一点。 关键是从图像ID获取图像Uri。

Android:MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA

任何ony都可以给我指导如何找到我的Android设备从相机存储其图像的目录; 在下面的代码片段中,我打算在启动相机应用程序之前获取文件列表。 从相机应用程序返回时,获取同一目录中所有文件的列表并处理新添加的文件。 public void onBtnTakePhoto(final View view) { existingfiles = UploadImageService.getFiles(); final Intent intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA); startActivityForResult(intent, TAKE_PICTURE); } public void onActivityResult(final int requestCode, final int resultCode, final Intent data) { super.onActivityResult(requestCode, resultCode, data); switch (requestCode) { case TAKE_PICTURE: List newFies = UploadImageService.getFiles(); newFies.removeAll(existingfiles); for (String newFile : newFies) { File file = […]