用File.createNewFile()在Picture/AlbumName下已经创建了个文件(从DDMS的FileExplorer上),字节是0;把这个文件putExtra(MediaStore.Output,File)里,拍照,保存后,这个文件的长度还是0...难道还要在onActivityResult()里处理么?我看范例里不需要,自动保存的....

解决方案 »

  1.   

    这个是我用过的,不需要在onActivityResult()里处理// 从相机中获得照片
    Intent intentCamera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    File f = new File(getExternalCacheDir(),"Camera.jpg");
    intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));
    startActivityForResult(intentCamera, REQ_FROM_CAMERA);
      

  2.   

    http://blog.csdn.net/onlyonecoder/article/details/8463799
      

  3.   

    okay,终于明白了为什么会这样了。因为我在启动拍照的activity之前,用intentChooser包装了一下intent。去掉那个intentChooser就好了。另外发现,如果intent里放了uri的文件的话,就不能通过data.getExtras("data")获得系统提供的缩略图了。