[Android] Service使用時はManifestファイルにも記載が必要

Serviceを使うため、Serviceクラスを継承したクラスを用意して、
そのクラスへのIntentを作成して、startService()を実行するように
したのですが、

Serviceクラスを継承したクラスの onCreate() や onStart() が
呼び出されない。

これで、アプリのほうを実行してもエラーはでない。
だけど、サービスは実行されない。


ログを見ると、

Unable to start service Intent { cmp="パッケージ名"/".サービスクラス名"}: not found

と表示されている。


「not found」ということで、起動するサービスが見つからないということですな。
#Activityの場合、エラーが発生してアプリが落ちるのにサービスだと警告なんですね


原因は、「AndroidManifest.xml」ファイルにServiceを記載していなかったことです。

<service android:name="サービス名" />

を追記してあげたら、サービスが動くようになった。


Manifestへの記述は忘れがち、今回のようにエラーでなく警告だと
気付きにくいので、気をつけなくては。

trackback


この記事にトラックバックする(FC2ブログユーザー)

まとめtyaiました【[Android] Service使用時はManifestファイルにも記載が必要】

Serviceを使うため、Serviceクラスを継承したクラスを用意して、そのクラスへのIntentを作成して、startService()を実行するようにしたのですが、Serviceクラスを継承したクラスの onCreate() や onStar...

コメントの投稿

非公開コメント

プロフィール

hiiro

Author:hiiro

最新記事
カテゴリ
月別アーカイブ
最新コメント
最新トラックバック
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
Counter