我制作了一个音乐播放器,它有两种操作方式:
因为我只想要运行应用程序的一个实例,所以我添加到了mainfest:
android:launchMode="singleTask"我所做的就是执行这个onCreate
uri = getIntent.getData();
if (uri != null) {
newsong = uri.toString()...
play(newsong);
} else {
moveTaskToBack(true);
playoldsong();
}它的效果很好,除了在(1)开始的时候,并且过了一段时间,我在传送器中选择了一首歌,主要的活动被带到了最前面(这就是我想要的),但是它继续播放它在歌曲选择之前播放的内容。播放器忽略了这首新歌,我希望它切换到它。
这实际上是有道理的,因为我称之为新歌的唯一地方是在onCreate。
也许launchMode不是正确的吗?也许我应该@Overwrite OnNewTask(意图)方法?哪个是“更便宜”的解决方案?
发布于 2021-09-15 20:56:19
您必须重写onNewIntent()来启动用户在文件管理器中单击的歌曲。
https://stackoverflow.com/questions/69199551
复制相似问题