我有一个服务,在那里我管理音乐播放。我也有活动发送意图与用户的音乐。当我打开activity时,我想要获得当前的游戏状态。
我有特定的玩家,其中只有两个事件:开始游戏和结束游戏。因此,如果我使用广播,我将只得到下一个事件。在获取时,我将事件保存在变量lastAction中。我可以创建新的命令ACTION_SEND_CURRENT_STATE。但它看起来并不好。
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
when (intent?.action) {
null -> {
player?.cancel()
}
ACTION_PLAY -> {
player?.cancel()
player = createPlayer(intent)
player?.start()
}
ACTION_STOP -> {
player?.cancel()
}
}
return START_STICKY
}
override fun onPlayingBegin(p0: player?) {
lastAction = BRODCAST_PLAYING_BEGIN
sendBroadcast(Intent(BRODCAST_PLAYING_BEGIN)
.putExtra(EXTRA_SONG, currentSong)
)
}如何从服务中正确获取当前状态?我指的是最后一次行动。
https://stackoverflow.com/questions/41441140
复制相似问题