我正在尝试创建可以控制音乐播放的小部件。基本上与播放音乐时出现在锁屏上的小部件相同。(当我在某处读到时,它已连接到远程控制客户端- 这是真的吗?)我的问题:我能够使用以下代码创建媒体按钮
Intent i = new Intent(Intent.ACTION_MEDIA_BUTTON);
synchronized (this) {
i.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_NEXT));
sendOrderedBroadcast(i, null);
i.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_NEXT));
sendOrderedBroadcast(i, null);
首先,我认为这也是锁屏小部件中使用的解决方案。但后来我注意到这个解决方案只适用于某些音乐播放器,但肯定不适用于默认锁屏小部件可以控制的所有内容(fe DoubleTwist 响应锁屏小部件,但不响应我的媒体按钮)。所以我花了几天时间在 Android 资源、Logcat 输出和各种论坛中进行挖掘,但我无法找到我的按钮调用的意图和锁屏小部件上的按钮调用的意图之间的任何区别。
锁屏小部件到底在做什么来控制不听我的媒体按钮意图的应用程序?
或者,至少有人可以帮我找到这个小部件的源代码吗?我尝试了默认的音乐应用程序、音频服务、远程控制客户端、小部件,但我在任何地方都找不到。