Android では外部領域(内部ストレージ/外部ストレージ)へアクセスするためには、アクセスを行うアプリ毎に WRITE_EXTERNAL_STORAGE または READ_EXTERNAL_STORAGE をパーミッションに設定する必要があります。 パーミッションを設定せずに外部領域にアクセスすると SecurityException が発生します。 Android 4.4 (KitKat / API 19) からはこの外部領域における、自身のアプリケーション領域 Context#getExternalFilesDir(String type) へはパーミッションなしでもアクセスできるようになりました。 ただし、このアクセス許可は自身のアプリケーション領域のみを対象としており、全てのアプリケーションが共有する領域 Environment#getExternalStoragePublic