Android Hacks ―プロが教えるテクニック & ツール
posted with amazlet at 11.02.28
株式会社ブリリアントサービス
オライリージャパン
売り上げランキング: 4655
オライリージャパン
売り上げランキング: 4655
AndroidでADLを用いてプロセス間通信をしたときに
以下のエラーが出てクラッシュすることに気が付いた。
Caused by: java.lang.IllegalArgumentException: Service not registered:
というか今まで、作ったアンドロイドアプリで
このバグがあることにずっと気づかなかったのは秘密(・ェ・`)
以下原因と解決方法
あくまで私の場合。
どうやらADLを使ってプロセス間通信のコネクションを張った後に
一度アプリケーションを落として再度アプリケーションを起動すると
サービスとのコネクションが切れている。
その状態でADLをunbindすると上記のエラーが出た。
だから、解決策は簡単でコネクションを張っているときだけ
unbindをすればよい。
しかし、調べてみたらコネクションを張っているか確認する方法はなさそうなので
booleanの変数を使って解決しました。
ADLを使っている人はお気をつけください(・∀・)
参考: http://developer.android.com/intl/ja/guide/topics/fundamentals/bound-services.html
タグ:android


