我正在开发一个音乐播放器应用程序,并特别注意到Cyanogemod ROMS上有一个锁屏音乐可视化器(可能还有其他类似于我还没见过的ROMS)。即使应用已关闭,我的应用也会使用后台服务来保持音乐播放。目前我的应用程序有一个锁定屏幕通知,使用RemoteViews
来显示基本控件和当前播放的歌曲,这里没有任何突破。许多媒体播放器应用程序具有类似控件的类似锁定屏幕通知,并且Cyanogenmod可视化器出现并对音乐作出反应,而对于我的应用程序,如果播放音乐且设备位于锁定屏幕上,则可视化工具无法工作。
我尝试使用通知设置各种标志,这可能会调用自定义ROM / OS通过通知查找的内容然后“听”'到音频输出并显示可视化器,但到目前为止,这还没有帮助。
我必须遗漏一些显而易见的事情,如果有人在此之前遇到过这个并且让它工作可以指出我正确的方向。
下面是可视化工具工作时的示例,仅供参考。
更新
我已经反编译了CyanogenMod系统UI.apk - 目前正在寻找一些线索(想到大海捞针!)。我找到了扩展View类并使用某种FFT算法的Visualizer类,但没有直接的线索使它初始化/可见。我认为它可能与使用MediaSession有关(我的应用目前还没有使用它)所以改变了服务以包含MediaSession,但仍然没有运气。