【问题标题】:Get ID from Photo when saving保存时从照片中获取 ID
【发布时间】:2013-05-21 17:07:24
【问题描述】:

在我的应用程序中,我拍摄了一张照片并将其保存在手机上。

这就是我的做法:

private void takePic() {
    ContentValues values = new ContentValues();
    String TITLE = null;
    values.put(MediaColumns.TITLE, TITLE);
    String DESCRIPTION  = null;
    values.put(ImageColumns.DESCRIPTION, DESCRIPTION);
    values.put(MediaColumns.MIME_TYPE, "image/jpeg");
    imageUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
    intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);

    startActivityForResult(intent, IMAGE_CAPTURE);
}

我现在的问题是,我稍后想要获取这张图片的缩略图以在我的 ListView 中显示缩略图。有没有办法获取我拍摄的照片的 id 并将其保存到我的Intent 或类似的东西?

【问题讨论】:

  • 这里没有人知道答案吗?
  • 当图像成功存储在 Content Provider 中时,您可以通过在 onActivityResult 中查询 MediaStore.Images.Media.DATA 来获取媒体 ID
  • 谢谢。你有任何代码示例,它是如何工作的?从来没有用过..

标签: android android-intent camera


【解决方案1】:

您可以通过查询 MediaStore.Images.Media.DATA 来尝试使用您在 MediaStore 内容提供程序中拥有的 Media Uri

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(resultCode==RESULT_OK ){
          if(requestCode == IMAGE_CAPTURE){
                  // get Media Uri from data

                  Uri media_uri = data.getData();
                  String[] column = {MediaStore.Images.Media._ID};

                  Cursor cursor = getContentResolver().query(media_uri, column, 
                                                               null, null, null);
                  cursor.moveToFirst();
                  if(cursor.getCount()>0){
                    int Media_ID = cursor.getInt(cursor  
                             .getColumnIndex(MediaStore.MediaColumns._ID)); 
                    //... store media ID here..
                  }
                 cursor.close();
           }
        }
    }

【讨论】:

    猜你喜欢
    • 2012-07-03
    • 1970-01-01
    • 2020-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-18
    • 2010-09-16
    • 1970-01-01
    相关资源
    最近更新 更多