カメラで写真を撮ってメモリに保存し、指定したユーザーにメールで送る機能を備えたアプリを開発しています。内部メモリにアプリケーションデータを作成しても問題ありません
SDカードにフォルダを作成し、そこに画像を保存しました。しかし、Nexus Sのような新しいデバイスの中には、SDカードで構成されていないものもあります。それで、内部メモリにアクセスするのは大丈夫ですか?
どうすればいいですか?
カメラで写真を撮ってメモリに保存し、指定したユーザーにメールで送る機能を備えたアプリを開発しています。内部メモリにアプリケーションデータを作成しても問題ありません
SDカードにフォルダを作成し、そこに画像を保存しました。しかし、Nexus Sのような新しいデバイスの中には、SDカードで構成されていないものもあります。それで、内部メモリにアクセスするのは大丈夫ですか?
どうすればいいですか?
外部メモリのないデバイスでgetExternalFilesDir(DIRECTORY_PIOCTURES)を呼び出そうとしましたか?それは有効なファイルを返しますか?私は、たとえそれが技術的に「外部」ではないとしても、Nexus Sのようなデバイスは、これらの呼び出しのためのパーティションを提供していると予想します。外部ストレージが利用可能な場合は、
マニフェスト
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="preferExternal"
... >
に次のコードを設定することができ
アンドロイドが表示されます。そうでない場合は、内部に格納されます。
ファイルの保管については、このdocoをお読みください。特定の用途でhttp://developer.android.com/guide/appendix/install-location.html
私はダイアー=新しいファイル(Environment.getExternalStorageDirectory()、 \t \t "サンプル")ファイル---コードを用いたMべきであり、は
私の質問は間違っています。私はsdカードが存在しない場合、内部メモリにフォルダを作成したい。私の全アプリをSDにインストールしないでください –
@Rahul Varma oops ..説明のためにありがとう。 sdが存在しない場合、内部メモリにフォルダを作成する以外に選択肢はありません。 – GSree
@Rahul Varma ...追加するだけです。http://static.googleusercontent.com/external_content/untrusted_dlcp/source.android.com/en//compatibility/android-2.3-cdd.pdfの7.6節を参照してください。あなたのストレージ使用を制限する必要がある場所を教えてくれるでしょう。 – GSree
外部記憶装置にインストールされるべきではありません; \t \t \t \t Dire.mkdir();新しいフォルダを作成します。そこにはgetExternalFilesDir()というメソッドがありません。 –
これは、コンテキストのメンバーです: http://developer.android.com/reference/android/content/Context.html#getExternalFilesDir%28java.lang.String%29 – Nick