====== サービスからActivityへ連携する ====== [[https://oc-technote.com/android/service%E3%81%8B%E3%82%89activity%E3%81%AB%E5%80%A4%E3%82%92%E6%8A%95%E3%81%92%E3%81%9F%E3%82%8A%E7%94%BB%E9%9D%A2%E3%82%92%E6%9B%B4%E6%96%B0%E3%81%97%E3%81%9F%E3%82%8A%E3%81%99%E3%82%8B%E6%96%B9/|ServiceからActivityに値を投げたり画面を更新したりする方法]] [[https://sites.google.com/site/androiddevnote/20-zhong-ji/service-to-activity|ServiceからActivityへ情報を渡す]] broadcastを使ったデータ連携方法 受け側のActivity override fun onCreate(savedInstanceState: Bundle?) { ... // receiverを登録する val receiver =object: BroadcastReceiver(){ override fun onReceive(context: Context, intent: Intent) { val extras = intent.extras val msg = extras!!.getString("message") ~すきな処理~ } } ... } 送り側のサービス ... // onLocationChangedイベントでActivityへ通知 inner class GPSLocationListener: LocationListener { override fun onLocationChanged(p0: Location?) { val format = SimpleDateFormat("kk:mm:ss") val msg="${format.format(Date())} lat:${p0?.latitude} lon:${p0?.longitude}" Log.d("locCheck",msg) sendMessage(msg); }     ... } // Broadcastメイン fun sendMessage(msg: String) { val broadcast = Intent() broadcast.putExtra("message", msg) broadcast.action = "DO_ACTION" baseContext.sendBroadcast(broadcast) }