私の知る限り、WebView 内の swf と gif は、HTC Desire デバイスで動作しますが、Android では正式にサポートされていません。
私は、すべて WebView に基づいたアプリを構築しています。私がしたことは、「アプリ」をHTMLとしてコーディングし、それを「生」フォルダーに入れ、アプリが起動すると、すべてのhtmlと画像をSDのフォルダーに入れます(まだそこにない場合)。
ここで、いくつかのアニメーションを表示する必要があります。Actionscript で作ったので、動くようでよかったです (アニメーションはそれぞれ 25KB でした) が、しばらくして公開したところ、アニメーションが見られないという報告がありました。
次に、それらをGIFにパッチしました(メモリをそれぞれ400KB〜1MBに増やしました)。この時点で、raw フォルダーから GIF を取り出し、アプリの初回実行時に Web の 1 つのサーバーからダウンロードすることにしました。これにより、apk が大きくなりすぎないようにしました。しかし、人々はそれを見ることができないという苦情を再び受け取ります(その後、GIFもサポートされていないことがわかりました)
Google-ing と stackoverflow-ing 唯一の解決策は、これらの GIF を別々の画像に分割し、JavaScript で 1 つずつ表示してアニメーションを作成することであることがわかりました。この方法は、小さなアニメーション (こんにちはと言っている顔など) には問題ないと思いますが、アニメーション全体では.... アニメーションごとに約 3MB の重みがあります (swf が 25KB の場合...)。また、ユーザーのデータ クォータから 30MB (将来的には新しいアニメーションではさらに増える可能性があります) を使用するのは良くないと思います。
そう:
- 他の解決策はありますか?
- SWF をサポートしていない電話はたくさんありますか? そしてGIF?それらが多すぎない場合は、電話のメモリが少ない場合はアニメーションが機能しないというアプリの説明を付けることを検討します(アニメーションは私のアプリではあまり重要ではありません)
どうもありがとうございました、
ビクター
編集: 追加情報: アニメーションはこのようなものです。