すばらしい30分間試してみると、誰もが自分のアプリの操作性が良いと思うでしょう。しかし、アプリが1日ほどデバイスの背景に座っていると、NullPointerExceptions
が表示され、Garbage Collector
があなたのものを盗んだため、期待通りに機能しません。 バックグラウンドで長時間実行されているアプリをシミュレートする方法はありますか?Android:長い実行時間をシミュレート
答えて
特定の時間を待つ必要はありません。あなたは記憶を食べる何かをしなければなりません。これはあなたがタスクのために作成する特別なアプリかもしれませんが、本当にする必要はありません。
私の経験では、ほとんどのゲームはうまくいくようです。多くのグラフィックスを持つゲームは、テクスチャなどのメモリを大量に使い果たしているので、最も効果的です。高度なグラフィックや重い処理がないにもかかわらず、Angry BirdsやCandy Crushも機能します(おそらく彼らが電池を噛んでいるのと同じ理由)。通常、1レベル程度の演奏後、アクティビティに戻って何が失われたかを見ることができます。
データを永続化/初期化するスマートな方法を使用するため、問題はそれほどではありませんが、予期せぬことに遭遇することがあります。それを追跡する。
設定 - >開発者オプション - >バックグラウンドプロセスの制限 - >最大で1つのプロセス。
楽しいことが終わったら、それを元に戻すことを忘れないでください。乾杯。
休眠中のものはありません。休眠状態であれば、まだRAMに入っていて、一時停止状態であることを意味しています。まだRAMに残っていれば、30分後にテストする意味がありません。すべてが同じになります。 GCは、もはや参照されていないオブジェクトにのみ影響します。したがって、GCだけでは何の影響もありません。ただし、アプリケーションのライフサイクルに影響を及ぼすものは、上記の方法を使用してテストできるアクティビティまたはフラグメントの再作成です。 –
アクティビティがフォアグラウンドにある間も、GCは参照されていないオブジェクトを収集しますが、私はそれをまったく疑っていませんでした。しかし*どちらの状態でも、参照されたオブジェクトはまったく収集されません。アクティビティで使用しているオブジェクトがそのアクティビティの中でホストされている場合、参照はチェックアウトされます。あなたがこの事実を反対であると知っているなら、参考文献を提供してください。しかし、私はあなたが何を記述しているのか全く遭遇していません。 –
Dev SDKから: "アクティビティが停止すると、アクティビティオブジェクトはメモリに常駐し、アクティビティが再開すると呼び出されます。コールバックメソッドの間に作成されたコンポーネントを再初期化する必要はありません。あなたが普通のことから何かをやっていない限り(もちろん、すべてが問題ないことを確認する必要がある場合は)、GCによって何も収集されません。なぜなら、これらのオブジェクトは* garbage *ではないからです。それでも。あなたがチェックする必要があるのは、アクティビティが破壊された場合だけです。もう一度、上記の方法でこれを行うことができます –
- 1. 長時間実行中のバックグラウンドタスク、Android
- 2. 長い実行時間
- 3. 長時間実行スレッド+ライフサイクル
- 4. Androidスタジオで長時間実行しているGradle Build
- 5. SQL Serverの実行時間が長い
- 6. Mysql実行時間の長いクエリ
- 7. Xamarin.forms - アプリケーションの実行時間が長い
- 8. 長い実行時間のlinux
- 9. Rscript - 実行時間が長い
- 10. SQLの実行時間が長い
- 11. フラスコと長時間実行タスク
- 12. javaのBouncyCastleProvider長時間実行
- 13. ASP.NET + WCFの長時間実行スレッドプロセス
- 14. 長時間実行アクションasp.net core mvc
- 15. バックグラウンドで長時間実行するタスク
- 16. 長時間実行WCF 504 GATEWAY_TIMEOUTエラー
- 17. 長時間実行中のジョブSpring
- 18. スリープ長時間実行されるプロセス
- 19. NSURLConnection sendAsynchronousRequest:httpsで長時間実行
- 20. ワークフロー4長時間実行中のブックマーク
- 21. Asp.Netコア長時間実行タスク
- 22. シートと長時間実行するタスク
- 23. 軽量長時間実行メソッドは、Java
- 24. 長時間実行のバックグラウンドタスクでのインターネットアクセス
- 25. 実行時間/長さ情報
- 26. 長時間実行されるタスクを実行するフレームワーク
- 27. 長時間実行する操作を実行するには?
- 28. CUDAによる行列乗算、長い実行時間
- 29. .Net長時間実行予定のコードの実行
- 30. 長時間実行中の画面スクラップスクリプトの実行
あなたは 'NullPointerException'を取得していますか? – andy256