我正在尝试为iPhone和iPad制作音乐播放器。 我在iPhone和iPad上完美运行,因为那些实际上有一个音乐库。但是我想使用fastlane和其他一些测试工具,所以我需要能够看到/添加一个音乐库到我的模拟器。
我已导航到我的模拟器文件夹。
/Users/maikohermans/Library/Developer/CoreSimulator/Devices/8A14CCDB../Data
但是我不知道在哪里看,如果我甚至应该看这里添加音乐。
我希望有人可以帮我解决这个问题。我搜索了这个,但似乎没有人问这个问题很长一段时间。所以这意味着要么每个人都放弃了它,要么就有可能,我似乎无法弄清楚如何做到这一点。
答案 0 :(得分:15)
虽然普通人认为这无法完成,但我想知道如何做到这一点,这要归功于@BaSha提到的链接。
我在上面写了一点How To,所以每个遇到同样问题或者认为不可能的人都能够让它运转起来。
要给出它的要点,你需要做一些事情。
要获取要测试的设备的ID,可以运行
xcrun simctl list
这将为您提供所有可用模拟器的列表,选择您要使用的模拟器并复制ID,您将需要它。
现在导航到您刚刚选择的模拟器的目录。
[yourHD] - >用户 - > [yourusername] - >图书馆 - >开发者 - > CoreSimulator - >设备 - > [您在上一步中获得的ID] - >数据 - >媒体 - > Itunes_Control - >的iTunes
现在您必须打开iFunBox
(将手机与音乐库连接到电脑)。在iFunBox中,选择Raw File System
。在这里,您将找到一个名为Itunes_Connect
的目录,您需要将一些文件和目录复制到之前打开的模拟器目录中。即:
Music
iTunes/Artwork
iTunes/MediaLibrary.sqlitedb
iTunes/MediaLibrary.sqlitedb-shm
iTunes/MediaLibrary.sqlitedb-wal
如果你曾购买音乐,你还应该抓住以下目录Raw File System/Purchases
答案 1 :(得分:3)
所以我需要能够看到/添加音乐库到我的模拟器
你不能这样做。 MPMediaLibrary API无法在模拟器上运行。
您可以通过编写代码和MPMediaLibrary API之间的存根方法来测试模拟器上的接口,但实际访问用户的音乐库只能在设备上使用。
答案 2 :(得分:0)
这仅适用于实际设备。您的模拟器上没有任何类型的音乐库。您可以使用音乐文件开发另一个应用程序并将其用作测试参考,但这看起来太复杂而且不太有用。
答案 3 :(得分:0)
实际上,您可以将设备库添加到模拟器。您将需要:
在终端xcrun simctl list
上运行此命令,将返回一个列表,该列表将告诉您每个设备的每个ID。记下所需设备的ID。
接下来,我们将实际导航到该设备的目录:
[yourHD] -> Users -> [yourusername] -> Library -> Developer -> CoreSimulator -> Devices -> [the ID you obtained in the previous step] -> data -> Media -> Itunes_Control -> Itunes
将此目录保持打开状态,因为下一步将需要使用它。
下一步,我们将打开iFunBox
应用程序,为此,您需要将手机连接到计算机,因为iFunBox允许您查看iPhone的目录。
打开iFunBox
后,您需要选择Raw File System
。在这里,您将找到目录Itunes_Connect
从该目录开始,您需要将以下目录和文件复制到上一步中打开的模拟器目录中
Music
iTunes/Artwork
iTunes/MediaLibrary.sqlitedb
iTunes/MediaLibrary.sqlitedb-shm
iTunes/MediaLibrary.sqlitedb-wal
如果您曾经购买过音乐,还应该获取以下目录Raw File System/Purchases
就是这样,您现在应该可以打开您的应用程序,并看到音乐文件出现。您甚至应该可以播放它们!
希望可以帮助您和其他有相同问题的人。