Android Service與Activity之間傳值

Service:

  //在你需要傳值的地方發送一個 
  /intent.putExtra("mesSum", data):這是需要傳的參數
  //intent.action = "com.wimi.wsapp.framework.MessageService":這是Service所在位置
val intent = Intent() intent.putExtra("mesSum", data) intent.action = "com.wimi.wsapp.framework.MessageService" sendBroadcast(intent) Activity:

    //註冊廣播接收器
    var receiver = MyReceiver()
    val filter = IntentFilter()
    filter.addAction("com.wimi.wsapp.framework.MessageService")
    activity.registerReceiver(receiver,filter)
inner class MyReceiver : BroadcastReceiver() {
    override fun onReceive(context: Context, intent: Intent) {
        val bundle = intent.extras
        val count = bundle!!.getInt("mesSum")
        if(count>0){
            isViewActiveRunNow{
                pointRed.visibility=View.VISIBLE
            }
        }else{
            isViewActiveRunNow {
                pointRed.visibility = View.GONE
            }
        }
    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章