title: ENOENT (No such file or directory) When There Is A File There
body: <p>I am trying to share A PNG with ShareActionProvider in Android. When I open the PNG to the Uri, it says there is no file found.
  <code>open failed: ENOENT (No such file or directory)</code> even though I have gone into the file system and have seen it myself. I have tried it on my phone and the AVD with the save error. I have looked around but have found no answers. Any help would be much appreciated.</p>
  
  <p>Here is where I try to open the file:</p>
  
  <pre><code> File file = new File(getFilesDir()+"wifiqr/", "QRCode.png");
                  file.setReadable(true, false);
                  Uri uri = Uri.fromFile(file);
                  Intent intent = new Intent(Intent.ACTION_SEND);
                  intent.setType("image/*");
                  intent.putExtra(Intent.EXTRA_STREAM,uri);
                  provider.setShareIntent(intent);
  </code></pre>
  
  <p>If it helps here is where I save it:</p>
  
  <pre><code> String fileName = getFilesDir()+"/wifiqr/" + "QRCode.png";
                  etSSID.setText(fileName);
                  OutputStream stream = null;
                  try {
                      stream = new FileOutputStream(fileName);
                      bmp.compress(Bitmap.CompressFormat.PNG, 80, stream);
                      stream.close();
                  } catch (FileNotFoundException e) {
                      e.printStackTrace();
                  } catch (IOException e) {
                      e.printStackTrace();
                  }
  </code></pre>
  
  <p>Finally the error log:</p>
  
  <pre><code>11-15 02:34:43.243      594-892/com.android.mms E/Mms/media: IOException caught while opening or reading stream
          java.io.FileNotFoundException: /data/data/com.frostbytedev.wifiqr/fileswifiqr/QRCode.png: open failed: ENOENT (No such file or directory)
          at libcore.io.IoBridge.open(IoBridge.java:416)
          at java.io.FileInputStream.&lt;init&gt;(FileInputStream.java:78)
          at java.io.FileInputStream.&lt;init&gt;(FileInputStream.java:105)
          at android.content.ContentResolver.openInputStream(ContentResolver.java:447)
          at com.android.mms.model.MediaModel.initMediaSize(MediaModel.java:235)
          at com.android.mms.model.MediaModel.&lt;init&gt;(MediaModel.java:74)
          at com.android.mms.model.RegionMediaModel.&lt;init&gt;(RegionMediaModel.java:36)
          at com.android.mms.model.RegionMediaModel.&lt;init&gt;(RegionMediaModel.java:31)
          at com.android.mms.model.ImageModel.&lt;init&gt;(ImageModel.java:73)
          at com.android.mms.ui.SlideshowEditor.changeImage(SlideshowEditor.java:163)
          at com.android.mms.data.WorkingMessage.internalChangeMedia(WorkingMessage.java:640)
          at com.android.mms.data.WorkingMessage.changeMedia(WorkingMessage.java:588)
          at com.android.mms.data.WorkingMessage.setAttachment(WorkingMessage.java:453)
          at com.android.mms.ui.ComposeMessageActivity.addImage(ComposeMessageActivity.java:3150)
          at com.android.mms.ui.ComposeMessageActivity.addAttachment(ComposeMessageActivity.java:3291)
          at com.android.mms.ui.ComposeMessageActivity.access$5900(ComposeMessageActivity.java:167)
          at com.android.mms.ui.ComposeMessageActivity$35.run(ComposeMessageActivity.java:3236)
          at com.android.mms.ui.AsyncDialog$ModalDialogAsyncTask.doInBackground(AsyncDialog.java:129)
          at com.android.mms.ui.AsyncDialog$ModalDialogAsyncTask.doInBackground(AsyncDialog.java:84)
          at android.os.AsyncTask$2.call(AsyncTask.java:287)
          at java.util.concurrent.FutureTask.run(FutureTask.java:234)
          at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
          at java.lang.Thread.run(Thread.java:856)
          Caused by: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
          at libcore.io.Posix.open(Native Method)
          at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
          at libcore.io.IoBridge.open(IoBridge.java:400)
          ... 24 more
  </code></pre>