2011年02月28日

Caused by: java.lang.IllegalArgumentException: Service not registered:

人気ブログランキングへ

Android Hacks ―プロが教えるテクニック & ツール
株式会社ブリリアントサービス
オライリージャパン
売り上げランキング: 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
posted by マスタカ at 07:06 | Comment(0) | TrackBack(0) | PC・携帯 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。