2011-01-07 10 views
0

カメラで写真を撮ってメモリに保存し、指定したユーザーにメールで送る機能を備えたアプリを開発しています。内部メモリにアプリケーションデータを作成しても問題ありません

SDカードにフォルダを作成し、そこに画像を保存しました。しかし、Nexus Sのような新しいデバイスの中には、SDカードで構成されていないものもあります。それで、内部メモリにアクセスするのは大丈夫ですか?

どうすればいいですか?

答えて

0

外部メモリのないデバイスでgetExternalFilesDir(DIRECTORY_PIOCTURES)を呼び出そうとしましたか?それは有効なファイルを返しますか?私は、たとえそれが技術的に「外部」ではないとしても、Nexus Sのようなデバイスは、これらの呼び出しのためのパーティションを提供していると予想します。外部ストレージが利用可能な場合は、

マニフェスト

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
android:installLocation="preferExternal" 
... > 
に次のコードを設定することができ

+0

外部記憶装置にインストールされるべきではありません; \t \t \t \t Dire.mkdir();新しいフォルダを作成します。そこにはgetExternalFilesDir()というメソッドがありません。 –

+0

これは、コンテキストのメンバーです: http://developer.android.com/reference/android/content/Context.html#getExternalFilesDir%28java.lang.String%29 – Nick

0

アンドロイドが表示されます。そうでない場合は、内部に格納されます。

ファイルの保管については、このdocoをお読みください。特定の用途でhttp://developer.android.com/guide/appendix/install-location.html

私はダイアー=新しいファイル(Environment.getExternalStorageDirectory()、 \t \t "サンプル")ファイル---コードを用いたMべきであり、

+0

私の質問は間違っています。私はsdカードが存在しない場合、内部メモリにフォルダを作成したい。私の全アプリをSDにインストールしないでください –

+0

@Rahul Varma oops ..説明のためにありがとう。 sdが存在しない場合、内部メモリにフォルダを作成する以外に選択肢はありません。 – GSree

+0

@Rahul Varma ...追加するだけです。http://static.googleusercontent.com/external_content/untrusted_dlcp/source.android.com/en//compatibility/android-2.3-cdd.pdfの7.6節を参照してください。あなたのストレージ使用を制限する必要がある場所を教えてくれるでしょう。 – GSree

関連する問題