从iOS 5开始,每个音乐播放器都可以在[MPNowPlayingInfoCenter defaultCenter] .nowPlayingInfo上设置当前播放的音乐信息,如标题,艺术家,专辑标题和插图,以显示在锁定屏幕上.
在iOS 7上,播放位置滑块,持续时间和已用时间信息被添加到锁定屏幕和控制中心.但是,我找不到任何文档来设置这些类型的信息并使滑块能够改变播放位置.
有什么方法可以解决这个问题吗?
我想使用C++访问iPhone或iOS设备上的应用程序的Documents文件夹.有许多程序可以访问iOS设备的文件系统,例如iPhone Explorer,所以我知道这是可能的.
这些程序需要iTunes,因此我认为我必须与iTunes通信才能访问iPhone设备中的某些文件夹.
我正在使用Visual C++和Embarcadero C++ Builder.但是,我找不到任何使用C++访问iOS设备文件系统的资源.有谁知道如何做到这一点?
我目前正在尝试实现一个MediaBrowserService为 Android Auto 构建媒体应用程序的方法。我按照Android Auto官方文档(https://developer.android.com/training/cars/media#onLoadChildren)来实现该onLoadChildren功能。
以下是我尝试在 Android Auto 屏幕上显示内容的代码片段:
override fun onLoadChildren(parentId: String, result: Result<MutableList<MediaBrowserCompat.MediaItem>>) {
...
if (parentId == NODE_LIBRARY_ALBUMS) {
val items = mutableListOf<MediaBrowserCompat.MediaItem>()
val albumList = LibraryManager.getAlbumList()
for (it in albumList) {
val descriptionBuilder = MediaDescriptionCompat.Builder()
.setTitle(it.albumName)
items.add(MediaBrowserCompat.MediaItem(descriptionBuilder.build(), MediaBrowserCompat.MediaItem.FLAG_BROWSABLE))
}
result.sendResult(items)
}
...
}
Run Code Online (Sandbox Code Playgroud)
当项目数量足够小时,这种方法效果很好。但是,当项目数量较大时(例如大约5000个项目),会出现以下错误:
E/JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 1339384)
Run Code Online (Sandbox Code Playgroud)
我发现其他几个支持 Android Auto 的媒体应用程序(例如三星音乐)可以显示大量项目。有什么方法可以在函数上返回大量项目onLoadChildren,或者有其他方法可以解决这个问题吗?
谢谢!