2011-12-22 65 views
0

我用下面的代码删除最近录制的视频录制的视频,使用ACTION_VIDEO_CAPTURE试图删除手机

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if(resultCode == RESULT_OK) { 
     if(requestCode == REQUEST_VIDEO_CAPTURED) { 


      Uri uri = data.getData(); 
      String path; 
      String[] proj = {MediaStore.Video.Media.DATA }; 
      Cursor cursor = managedQuery(uri, proj, null, null, null); 
      int column_index = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA); 
      cursor.moveToFirst(); 
      path = cursor.getString(column_index); 



      File file = new File(path); 
      if(file.exists()) 
      { 
       boolean del = file.delete(); 
       Log.v(TAG, del+""); 
      } 

从光标的路径是正确的,文件exsist,但该文件没有被删除正如它应该。我错过了什么?

我甚至有android.permission.WRITE_EXTERNAL_STORAGE

+0

你的问题应该只包含'问题'部分。如果您有答案,请将其作为答案张贴;或接受回答你的问题的答案。 – 2012-07-13 19:01:19

回答

1
  • 确保权限在正确的位置设置您的清单
  • 也许文件正在使用,加上检查异常,所以你可以得到更多详情

除此之外,代码看起来不错。

+0

java.io.File.delete()不会转换任何异常,但只返回true或false。在我的情况下,它返回false,没有别的。 – 2011-12-22 15:49:14

+0

问题出在我的许可。我必须使用而不是 2011-12-22 15:58:57