Not sure if this is new/relevant to the pull request, but why is this using Environment.getExternalStorageDirectory and not Context.getFiledDir()? This will be stored to the external storage directly and not to the application's storage. This means it will not be cleaned up if the app is uninstalled. This also means that it may not be mounted (SD card removed, etc) and could crash.