- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:[android]ショートカットからのIntent)
[android]ショートカットからのIntent
このQ&Aのポイント
- [android]ショートカットからBroadcastReceiverにIntentを送ることはできますか?
- ショートカットの作成処理はできましたが、BroadcastReceiverにIntentを送る方法がわかりません。
- 探してみたサンプルではActivityを起動する方法しか見つからず、BroadcastReceiverへの送信方法がわかりません。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#161640
回答No.1
うーん、BroadcastReceiverに送るのはいいとして、引数のContenxtは何を指定するつもりです? BroadcastReceiverは、基本的にContextとIntentで起動したサービスの間のやりとりを受け持つもので、サービスからContextに配信されたメッセージを受信するための仕組みです。従って、受け取る側のContextが起動していなければいけません。通常は、これはActivityを使います。つまり、Activityが起動していて、Intentによってサービスが実行され、それで初めて両者の橋渡しをするBroadcastReceiverの意味があるわけです。Activityを起動しないとなると、何を受け取るContextとするつもりでしょうか。そこがはっきりしないといけませんね。
お礼
自己解決できました。 透明なActivityで一旦受けて、BroadReceiverに送るようにしました。 送信後にActivityを閉じるようにしました。 見た目はなにも表示されずに処理が行われているように見えるので これでOKです。
補足
回答ありがとうございます。 Contextは理解不足でした。大変参考になりました。 Contextは、、、なにを指定すればいいんでしょうか。 (^^; この辺を読んでみたのですが、よく分かりませんでした。 http://developer.android.com/intl/ja/reference/android/content/Context.html やりたいのは、アプリ「設定1」「設定2」・・・と設定を行い、 ショートカットを作成して直接呼び出せるようにします。 「設定1」ショートカットをクリックすると、Serviceに「設定1」のIDを渡して バックグラウンドで実行する、という機能を実現したいです。 Activityだと画面が表示されてしまうと思うのですが、 できれば、なにも表示しないで処理後にNotification等で通知だけ行うように したいと思っています。 よろしくお願いします。