睡眠中にアプリが停止するのを防ぐにはどうすればよいですか?


11

私はDroid 2を持っています。携帯電話を使用していないときに実行したままにしておきたい、リソースを大量に消費する長いゲーム(スペクトルソウル)を持っています。Androidの「ホーム」ボタンを押してホーム画面に戻り、すぐにゲームを再起動すると、中断したところに戻ります。電源ボタンを押してスリープ状態にした後、すぐに電話の電源を入れ、ロックを解除して、ゲームを再起動した場合も同じです。

しばらく(数時間)そのままにしておくと、戻ってゲームを起動すると、まったく実行されていないかのように、ゲームが新しく開始されます。当面の間、電話は何も使用されていませんが、同期はオンになっています。

私の質問は2つあります。どのような場合に、どのような理由で強制終了されたアプリに関する詳細情報を取得するにはどうすればよいですか。バックグラウンドで何かをするためにそれを必要としない、私が戻ってきたときにそれがまだそこにあることを望んでいる。

私は、Androidがメモリをクリアする必要があるため、タスクキラーを必要としないという概念に精通していますが、このタスクを本当に終了しない限り、タスクを強制終了させないようにしたいと思います。


実際のコードにアクセスできないと思いますか?
ナンヌ

正解です。これらは、App Storeから購入したクローズドソースのアプリです。
Jason Viers

回答:


2

私はアンドロイドのデフォルトのデザインのオプションではないことを確信しています。ほとんどの人がプログラムをシャットダウンして電話の速度を上げ続けることを望んでいるので、私は個人的にそのようなもののためのアプリを見たことがありません。未使用のプログラムをシャットダウンしているのはAndroidシステムです。アプリの作成者は、バックグラウンドで実行したり、常にオンの計算やオーディオのように実行できるようにサービスを設計する必要があるため、システムはプログラムが何かをしていると考えます。バッテリーが消耗します。


最初と3番目の文は完全に正しいですが、他の文は正しくありません。
Michael

2

提案:Taskerを使用して、アプリの画面タイムアウトを無効にします。これにより、バックグラウンドに移動できなくなる可能性があります。


見て、試してみます、ありがとう!成功または失敗を書き留めます。
Jason Viers

Taskerで画面のタイムアウトを変更しても、アプリの強制終了を防ぐことはできません。提案をありがとう。
Jason Viers

1
待って、これで画面がオフにならないようにしませんか?したがって、バッテリーを浪費していますか?
Michael

2

あなたの質問の最初の部分に。

どのような場合に、どのような理由でどのアプリが強制終了されるかについての詳細情報を取得するにはどうすればよいですか?なぜですか?

Android SDKには、Androidメモリに関する簡単な要約がありますhttp://developer.android.com/guide/topics/fundamentals.html

デフォルトでは、すべてのアプリケーションが独自のLinuxプロセスで実行されます。Androidは、アプリケーションのコンポーネントを実行する必要があるときにプロセスを開始し、不要になったとき、またはシステムが他のアプリケーションのメモリを回復する必要があるときに、プロセスをシャットダウンします。

つまり、Androidは、使用していないと判断した場合(アプリで[終了]をクリックした場合)、またはリソースが不足した場合に、プログラムを強制終了するものとして要約できます。たとえば、RAMが512 MB、空き容量が10 MBあり、12を必要とするアプリを起動した場合、12を取得できる最小使用アプリを特定しようとします。

これはかなりうまくいく傾向があります(少なくとも私の経験では)。あなたはあなたのゲームから家に帰ることができ、いくつかのことをすることができるかもしれませんが、3番目にそれはゲームを立ち退かせます。特にリソースを大量に消費するゲームはどれほどのものであるかを覚えておいてください。そうすれば、そのアプリがすぐに終了する可能性が高くなります。

これが時間の経過とともに消える理由は、同期プロセスが開始してリソースを獲得しようとしている可能性があるためです。この時点でアプリのメモリページがヒットする頻度は非常に低いため、OSが必要だと感じるメモリの再利用は公平なゲームです。

2番目の質問です。

このアプリが引き続き実行できるように設定するにはどうすればよいですか?

私はタスクキラーを使用していませんが、良いものには例外があると確信しています(ATKがリーダーであるようですhttps://market.android.com/details?id=com.rechild.advancedtaskkiller&feature=search_result)リスト。必要なゲームをホワイトリストに登録し、他のプロセスをブラックリストに登録することは可能かもしれません。

私もこのゲームに慣れていないので、自動保存機能などの機能がわかりません。私はいくつかの助けになったと思います。


1

殺されたアプリとその理由を詳しく知るにはどうすればよいですか?

電話をadbに接続できます。次にlogcatをオンにします。出力をファイルに保存します。
ログファイルには大量の情報が含まれます。アプリ名を検索して、いつ殺されるかを知ることができます。

あなたはそれがアンドロイドシステムによって停止されるのを防ぐために何ができますか?
知りません; うまくいけば、ランディの答えがうまくいくでしょう。
しかしながら; 私は開発者に連絡して問題を伝えます、なぜなら彼/彼女はそれを修正する最も簡単な時間を持つべきだからです


私はlogcatソリューションについて述べようとしていました。あなたがあまりにもActivityManagerを探していることを追加したいだけです(それはandroids内部の「タスクキラー」です)。androidがアプリを殺すことを防ぐことはできません。Androidの考えでは、アプリプロセスが完全に終了した場合、アプリは以前の状態を復元できるはずです。そのため、アプリ開発者はゲームを最初から開始しないようにする必要があります。
フロー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.