私は基本的にインテントを作成し、BroadcastReceiver の onReceive() からサービスに渡したいと考えています。
これまでは常に View.getContext() を使用していましたが、ここで行き詰まりました。使用できるように、コンテキストをどのように正確に取得できますpublic Intent (Context packageContext, Class<?> cls)
か?
私は基本的にインテントを作成し、BroadcastReceiver の onReceive() からサービスに渡したいと考えています。
これまでは常に View.getContext() を使用していましたが、ここで行き詰まりました。使用できるように、コンテキストをどのように正確に取得できますpublic Intent (Context packageContext, Class<?> cls)
か?
public abstract void onReceive(Context context, Intent intent)
onReceive
コンテキストを提供します。これ以上何が欲しい?
上記の回答は何の役にも立ちません。onReceive にいる限り、コンテキストを使用できます。コードが onReceive から返されると、コンテキストは存在しなくなります。
したがって、問題のステートメントは、インテント作成でこのコンテキストを使用してサービスを開始し、このコンテキスト オブジェクトで startService を呼び出したいと言っています。それはできません。
これを読んで、BroadcastReceiver コンテキストで実行できることと実行できないことを確認してください。
http://developer.android.com/reference/android/content/BroadcastReceiver.html