gpt4 book ai didi

java - 在Android中控制音乐播放器的音乐

转载 作者:行者123 更新时间:2023-12-02 02:47:31 27 4
gpt4 key购买 nike

我想在我的应用程序中编写一个音乐 Controller ,这样我就可以从另一个内置音乐应用程序播放/暂停、跳到播放列表中的下一首歌曲或上一首歌曲。我见过一种使用广播向所有音乐播放器发送消息的解决方案,例如开始播放音乐。问题是,音乐开始在我安装的三个不同的音乐播放器上播放。有谁知道使用什么来代替 sendBroadcast,以便该消息将仅发送到我想要的应用程序?

我在网上找到了以下解决方案。它使用 sendBroadcast 方法。该消息被广播到我不想要的每个音乐播放器。我希望它只发送到一个特定的应用程序。

long eventTime = SystemClock.uptimeMillis();

/*NEXT*/
Intent downIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
KeyEvent downEvent = new KeyEvent(eventTime, eventTime,
KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PREVIOUS, 0);
downIntent.putExtra(Intent.EXTRA_KEY_EVENT, downEvent);
sendBroadcast(downIntent, null);

Intent upIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
KeyEvent upEvent = new KeyEvent(eventTime, eventTime,
KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PREVIOUS, 0);
upIntent.putExtra(Intent.EXTRA_KEY_EVENT, upEvent);
sendBroadcast(upIntent, null);

最佳答案

您不能将其仅发送到一台音乐播放器。广播是一种系统事件,可触发其他应用程序可以订阅的操作。我非常确定编写一个不订阅这些广播的音乐播放器是很有可能的,除非Android在播放音乐时强制你这样做(我不确定它是否会订阅这些广播,但我认为不会)。因此,您甚至不会将其发送给每个人,而是将其发送到系统,然后订阅它的任何人都可以对其采取行动。

这个应用程序的具体用途是什么?

与其他应用程序交互的另一种方式是隐式 Intent 。这样您就可以从其他应用程序调用 View 并获取结果。这仅适用于该应用程序开发人员允许的应用程序/ View 。并且也不做你想做的事。

关于java - 在Android中控制音乐播放器的音乐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57134392/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com