これは、過去に同様の疑問に遭遇した人々に対するAndroidの内部構造に関する質問です。どのように私は、機能を要求して、発信者がまだあるかどうかを知ることができます -bindService、unbindService、android and non-sunny-day-scenarios
私は他のプロセスで実行中のアプリケーションに特定の機能を提供し、バインドサービスを持っていると仮定すると:
質問は、本質的には非常に簡単ですか?
hereのようなリモートコールバックを実装しているリモートサービスがあると仮定すると、コールバックを受け取るクラスがまだあることを確認するにはどうすればよいですか?クリーニングはどのように行われますか?開いているファイルやソケットで起きるように、アプリケーションが去ったりクラッシュしたりすると自動的に閉じられますか?
、最後に:私のサービスからアンバインドせずに
リモートアプリケーションがクラッシュした場合、そのサービスを使用して最後のアプリケーションであっても、実行し続けるのだろうか?
すべてのヒントのおかげで、みんな、ありがとう。
ありがとうございます。だから私は究極の方法は、時々私のリスナーを「ハートビート」し、単に例外を引き起こす人々を掃除することだと思います。それはネットワーキングにかなり似ています。 アンドロイド自体がデッドバインディングを削除することも知っておきましょう。これは興味のないときに実行中のプロセスがあるという問題をほとんどなくします。 –
ハートビートIMOは不要です。そうするための答えの変更を見てください。 –