Why I'm getting Prepare failed.:status=0x1?
<p>I've seen such questions on this site but can't find exact solution for this. I'm creating list view of path of songs stored on my SD card. But when I provide the full path to media player, It gives <code>Prepare failed: status=0x1</code>. </p>

<p>I've included <code>READ_EXTERNAL_STORAGE</code> permission to menifest. following is my code.</p>

<pre><code>        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView&lt;?&gt; adapterView, View view, int i, long l) {

            Object o = adapterView.getItemAtPosition(i);
            String uri = (String)o;
            //uri = uri.substring();
          //  uri = Environment.getExternalStorageDirectory().getPath();

         try{
             MediaPlayer mp = new MediaPlayer();
             mp.setDataSource(uri);
             mp.setLooping(true);
             mp.prepare();
             mp.start();
         }
         catch (Exception e){

             Toast.makeText(MainActivity.this,uri+"    "+e.toString(),Toast.LENGTH_SHORT).show();
         }



        }
    });
</code></pre>

<p>I've set onItemClickListener in listView. And on click, I'm fetching song path to a string and providing to media player. </p>

<p>Sample path which I'm getting on click is: </p>

<pre><code>/storage/sdcard0/Download/MY_SONG_NAME.mp3
</code></pre>