2011-07-16 7 views
3

こんにちは、アプリケーションのランタイム中にあまりにも多くのアクティビティのように開始することは可能ですか? 私は毎日新しい活動である日々にスライドすることができるスケジュールアプリケーションを開発しています。今私はあなたが最大限に始めなければならない活動の数の何らかの制限があるかどうか疑問に思っています。あなたの周りをちょっとスライドさせると、すぐに約20のアクティビティがアクティブになります。開始アクティビティが多すぎますか?

私は他のアプリケーションがメモリを必要とするときに活動が殺されることは知っていますが、テストやアプリケーションを閉じるときには約20のアクティビティでホームボタンを押して実行していますhtcの感覚は、メモリ。私はちょうどいくつかの活動を実行しているときにこれは起こらない。 (htc欲望)

これは、あまりにも多くの活動を開始することによって引き起こされる可能性がありますか?もしそうなら、あなたが最大で始めなければならない活動量の「限界」はありますか?

編集:アンドロイドアプリのツイッターがGoogleによって開発された場所を読んでいます。しかし、そのアプリケーションでは、実行するアクティビティの数に制限はありません。

答えて

4

アクティビティ番号にこのような制限はなくても、あまりにも多くのアクティビティを作成することは実際には悪い設計です。これは主に各アクティビティにVMの指定された最小メモリが割り当てられ、IPCコールを持っている場合はバインダバッファを消費するためです。

私たちは、活動の数を減らすために私たちのアプリを再設計することができます。あなたの場合、1つのアクティビティを使用して日々のスケジュールを表示することができます。再利用が難しい場合は、できるだけ早く前のアクティビティを閉じてメモリ使用量を減らすことができます。

2

私の知る限りではこのような制限はありません。通常、アプリケーションには5つの公開アクティビティがあります。

それは技術的には何のハード制限はありませんが小さい数

3

にそれらを保つために良いプログラミングの練習があり、一部のデバイスは、活動のより多くの問題を持っています。私がテストしたデバイスの中には、8つのアクティビティ前後で問題が発生したものがありました。

+0

私はユーザーが常に開いている15のアクティビティを持っています。前の活動を終わらせるために何かする必要がありますか?ありがとう! (+1) –

0

アプリケーション内には、必要な数のアクティビティを作成できます。これには制限はありませんが、デバイスが実行できないことがあります。通常、より少ない数のアクティビティで、より良い解決策をあなたのアプリケーションを作成することができます。

+0

私はユーザーが常に開いている15の活動があります。前の活動を終わらせるために何かする必要がありますか?ありがとう! (+1) –

関連する問題