My Photo
無料ブログはココログ

« May 2010 | Main | November 2010 »

Androidで書き込み可能なディレクトリを探す方法

http://www.techdoctranslator.com/android/guide/data-storage#filesInternal

Androidはアプリ固有のディレクトリにしか保存できない

・1
/data/data/<自分のパッケージ名>/files
配下しか保存できない。
Android標準?の場所?で、 Context#getFilesDir()#getAbsolutePath() でとるのと
デバイス依存ないのかも

・2
ディレクトリは作れない

File file = new File("file:///data/data//files/newdir);
boolean areyouok = file.mkdir();

としてもfalse=つくれまへん
となってしまう。
※当り前か。。。

・3
SDカードに保存する場合はディレクトリ作れる(※らしい)
未検証。。。だってユーザにSDカード買え。貧乏人はカエレとか言えない

・4
apkファイル内のresフォルダはサブフォルダ配置できる。(read only)

↑なので、例えば一度アプリをインストールしてから内部リソースを通信で
差し替える場合は
apkファイルの/resフォルダから初回起動時にfilesディレクトリに保存(ただし階層構造できない)
ということで、i-appliのスクラッチパッドやS!アプリのレコードストアまでとはいかないまでも専用のファイル管理システムを作らなければいけないかも。。。

ちなみに以下のコードで書き込み保存場所はわかる!!

デバイスによっては保存できる場所があるかも。。。またはAndroidの将来バージョンアップによって?

File file = new File("/data/nantoka");
for (int i = 0; i < file.list().length; i++) {
System.out.println("can write this dir?:" + "file.listFiles()[i].canWrite()");
}

« May 2010 | Main | November 2010 »

Categories

  • Android Dev
  • グルメ・クッキング
  • ゲーム
  • プログラマ
  • 携帯・デジカメ
  • 日記・コラム・つぶやき
December 2021
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31