ここの Android ドキュメントには、次のように記載されています。
「すべての Android 互換デバイスは、ファイルの保存に使用できる共有の「外部ストレージ」をサポートしています。これは、リムーバブル ストレージ メディア (SD カードなど) または内部 (非リムーバブル) ストレージのいずれかです。外部ストレージに保存されたファイルストレージは誰でも読み取り可能であり、USB 大容量ストレージがコンピューター上のファイルを転送できるようにすると、ユーザーが変更できます。」
これは、内蔵メモリも外部と見なされることを意味しますが、同じドキュメントにも次のように記載されています。
「外部ストレージ上のファイルを読み書きするには、アプリが READ_EXTERNAL_STORAGE または WRITE_EXTERNAL_STORAGE システム権限を取得する必要があります」
manifest.xml ファイルで許可を求めることなく、内部ストレージのコンテンツを読み取ることができます。そのために次のコードを使用しています。
File currentFolder = new File("/");
File[] subFiles = currentFolder.listFiles();
scanner= new Scanner(subfiles[0]);
String line = scanner.nextLine();
Log.i("blah", line);
この二つの主張は矛盾していませんか? 内蔵ストレージは内部ですか、それとも外部ですか?