Android sdcardディレクトリの取得

現在発売されている、G1や、Dev Phoneでは、SDカードディレクトリは、/sdcardにマウントされますが、これらのマウントポイントは将来変更されたり、機種によっては違う値の可能性もあります。

このため、Android SDKでは、外部ストレージディレクトリの取得メソッドが用意されています。

Environment.getExternalStorageDirectory()

SDカードにファイルを書き込む場合は、この、getExternalStorageDirectoryメソッドで返された値に、自分のアプリケーションで使用するためのディレクトリ名を付加して、その下に書き込みを行うのが通常の処理となります。

ちなみに、Dev Phoneでは、SDカードがマウントされていても、いなくても/sdcardの値を返します。

マウントされているかの判断は、Environment.getExternalStorageState()を使用します。

Environment.getExternalStorageState

外部ストレージがマウントされていると、Environment.MEDIA_MOUNTEDを返します。

マウントされていない場合は、Environment.MEDIA_REMOVEDを返します。

書くまでもないが、以下のようなコードとなります。

public static boolean isSdCardWriteable(){String status = Environment.getExternalStorageState();if (status.equals(Environment.MEDIA_MOUNTED)) {return true;}return false;}

ブログ内の関連する記事


コメント

このブログの人気の投稿

ドローンプログラミング体験教室を伊豆大島の小学校でしてきました

iBatisで動的SQL

情報処理安全確保支援士登録証のカード型が届きました。