android.graphics.Movie
からGIFファイルを再生するために使用しようとしています/sdcard/download
。
APKのフォルダーにファイルを配置すると、次のコマンドを使用してファイルdrawable
を読み込むことができます。
InputStream istr = context.getResources().openRawResource(R.drawable.animfile);
Movie movie = Movie.decodeStream(istr);
それはうまくいきます。movie.duration()
の値を導出するために使用する正しい期間が表示されmovie.setTime()
ます。
ドローアブルの代わりに、SDカードからロードしようとすると問題が発生します
String path = Environment.getExternalStorageDirectory() + "/download/animfile.gif";
Movie movie = Movie.decodeFile(path);
nullではないものをロードしているようです。movie
しかし、問題はそれmovie.duration()
が戻ること0
です。
なぜこれが起こるのか、そして私が何をすべきかについて何か考えはありますか?