簡単な手順でいくつかのことを行うゲームを構築しています...
- ハンドラーオブジェクトで、ポスト遅延ランナブル(ランナブルの新しいインスタンス)を設定しました
- ランナブルでは、レイアウト ID リストからランダムなレイアウトを膨らませるメソッドを呼び出します。私のレイアウトには ImageView があります。
- 膨張した ImageView レイアウトを、desert ビューの親に追加します。
- 追加したばかりの ImageView レイアウトにフェードイン アニメーション オブジェクトを作成して開始します。
- フェードイン アニメーションの終了後、余白を変更して ImageView レイアウトを移動する新しいアニメーション オブジェクトを作成します。このために私は使用します
applyTransformation
- アニメーションの移動の最後に、ViewGroup からビューを削除し、最初から開始します....これは、新しい実行可能なオブジェクトをハンドラーに追加することを意味します....
これは私にバッテリーの消耗が大きすぎました.....
ランナブルとアニメーションの持続時間には、指定した範囲内のランダムな値を使用するため、最も効率的なシナリオでは、画面上で移動するビューが 20 個を超えないようにします。
ゲームを 5 分間プレイすると、バッテリーが 5% 以上消耗します。
私の主な質問は次のとおりです:私の行動のどれが私のバッテリーを消耗させますか?
それがインフレなのか、アニメーションなのか、ランナブルなのかわかりません...
私の 2 番目の質問は次のとおりです。問題を解決する方法は?
それがアニメーションの場合...アニメーションオブジェクトを1つだけ持つ方が良いです(一種..私は2種類のアニメーションを持っています)アニメーションオブジェクトを再初期化するだけですか?
OpenGL を使ったほうがいいのはわかっていますが、この基本的な機能だけを学ぶのは難しいと思います。わかりませんが、この基本的な機能はそこで行うのは難しいと思います。そうでない場合は、OpenGLで行います
それ以外の場合は、バッテリーの消耗の問題がどこにあるのか教えてください...
バッテリーの使用量がネイティブのAndroidアプリの上にあるため、バッテリーを消耗していると確信しています.30%のようです