は、この単純な方法で使用して自分のアプリケーションを介してバイトギャラリーの意図を通して見えるです:アンドロイド:フォルダは、多くの画像を持っているだけで、単一の画像は、私は、画像を保存してい
public static boolean StoreBytesToFile(byte[] messagebytes, String FilePathName)
{
try
{
FileOutputStream fos = new FileOutputStream(FilePathName);
fos.write(messagebytes);
fos.flush();
fos.close();
}
catch(java.io.FileNotFoundException fnfe)
{
return false;
}
catch(java.io.IOException ioe)
{
return false;
}
return true;
}
をして、ユーザーが保存された画像を見たいとき、Iギャラリーの意図を使用して、それを開く:
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
Uri uri = Uri.parse("file://" + m_ImageFilename);
intent.setDataAndType(uri, "image/*");
startActivity(intent);
しかし、ギャラリーが同じフォルダに格納されている他の画像があるにもかかわらず、m_ImageFilename
によって指さのみ単一の画像ファイルを表示します。期待される動作は、このですが
:ギャラリー意図の
したがって、実際の行動はこれです重要な注意点としては
、私は言及する必要があり、その電話を再起動した後ギャラリーインテントは、フォルダ内のすべてのイメージを期待どおりに表示します。また、動作はJelly BeanからMarshmallowまでのすべてのバージョンで同じです。
イメージが保存されるたびに、ギャラリーインテントを通じてフォルダ内のすべてのイメージを表示するために電話を再起動する必要があります。
私はここで何が間違っているのかを教えてください。どのように修正できますか?
ありがとうございます。私はこの解決策を試しました。ファイルを作成してギャラリーに追加し、ギャラリービューの意図で開きます。しかし、私はそれが常に動作しないことがわかった。私の場合、2回目のファイルを表示していたときに動作しました。また、これは他の問題を引き起こしました(私が 'getContentResolver()。delete'と呼んでいたにもかかわらずギャラリーにまだ画像が残っているような)。私はSO上でこれらの機能について複数の議論があるが、完璧な解決策を見つけることができないことが分かった。 – Atul