このプロジェクトについて
android-gif-drawableは、アニメーションGIFを表示するためのViewおよびDrawableクラスを提供するオープンソースのAndroidライブラリである。JNI経由でバンドルされたGIFLibを使用してフレームをレンダリングするため、WebViewやMovieクラスを使用するよりも効率的である。
このライブラリには、GifImageView、GifImageButton、GifTextViewというすぐに使用可能なViewクラスが用意されており、XMLレイアウトで直接使用するか、プログラムで設定できる。これらのビューに割り当てられたdrawableがGIFファイルの場合、自動的にGifDrawableとして認識されアニメーション化する。GIFでない場合、ビューは標準のImageViewまたはImageButtonと同様に動作する。
GifDrawableは、アセットファイル、リソース、URI、バイト配列、FileDescriptor、ファイルパス、File、AssetFileDescriptor、InputStream、ByteBufferなど、複数のソースから構築できる。ライブラリは入力ストリームの所有権を取得し、自動的にクローズする。
アニメーション制御は、stop()、start()、isRunning()、reset()、setSpeed(float)、seekTo(int)、getDuration()、getCurrentPosition()などのメソッドで提供される。GifDrawableはAnimatableインターフェースとMediaPlayerControlインターフェースの両方を実装しており、標準のMediaControllerとの統合により再生制御や進捗表示が可能である。
また、ループ回数、フレーム数、コメントテキスト、フレームバイト数、割り当てバイト数、入力ソースバイト数など、GIFメタデータも公開する。MultiCallback機構により、単一のGifDrawableインスタンスを複数のViewで同時にアニメーションできる。
要件はAndroid 4.2以降(APIレベル17以降)で、GifTextureViewにはハードウェアアクセラレーションによるレンダリング、GifTexImage2DにはOpenGL ES 2.0以降が必要である。ソースからのビルドにはAndroid NDKが必要。ライブラリはMaven Centralで入手でき、Gradle、Maven、Eclipseの構成をサポートする。MITライセンスの下で提供されている。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.