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です。
なぜこれが起こるのか、そして私が何をすべきかについて何か考えはありますか?