我在 Xcode-6 Beta 中找不到 IOS 8 新模拟器数据的目录。
它不在 ~/Library/Application Support/IPhone Simulator/中。
我在 Xcode-6 Beta 中找不到 IOS 8 新模拟器数据的目录。
它不在 ~/Library/Application Support/IPhone Simulator/中。
像这样的:
/Users/{YOUR NAME}/Library/Developer/CoreSimulator/Devices/{DEVICE ID}/data/Containers/Data/Application/{APPLICATION ID}/
设备 ID 可能有点难找(基本上,每个模拟器都有一个看起来很随机的文件夹名称)。要进入正确的文件夹,我使用了以下终端命令:
find ~ -name myFile.txt
其中myFile.txt
是我应用程序中的一个文件。然后终端打印出完整位置——如果您有一个文件(或者可以创建一个文件)可以搜索,则可能比逐个检查每个文件更有用。
在 XCode 6 中,很难找到它。但我以简单的方式做到了:
只需在已打开的 XCode 中在调试区域中输入以下内容:
或记录:
NSLog(@"%@", [NSBundle mainBundle]);
要在 iOS 8 模拟器中找到一个应用程序的 Documents 文件夹,您可以首先在该文件夹中写入一个文件:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fileName = [documentsDirectory stringByAppendingPathComponent:@"Words.txt"];
NSString *content = @"Apple";
[content writeToFile:fileName atomically:NO encoding:NSStringEncodingConversionAllowLossy error:nil];
在 didFinishLaunchingWithOptions
方法中,你可以这样做。
然后你可以打开终端并找到该文件夹:
$ find ~/Library -name Words.txt
好的,我试图手动查找内容,但是感到非常沮丧。上面的笔记显示了不起作用的方法。
令我感到非常欣慰的是SimPHolders,它确实有效。请搜索并下载SimPHolders,然后运行它。享受吧!
在模拟器打开的情况下,去硬件->设备->管理设备。
一个窗口显示出现,列出了可用的每个模拟器和与之相对应的唯一标识。
因此,在Finder中导航到~Library/Developer/CoreSimulator后,你可以通过查找唯一标识来确定哪个目录包含你想要的模拟器。
进入目录后,你仍然需要进一步深入...在我的情况下,我发现我必须进入data/Containers/Data/Application,然后找到里面有今天日期的文件夹。
终于!我到达了我熟悉的Documents和Library文件夹。
再次感谢Apple,让我们iOS开发者保持就业!
XCode6中的模拟器目录已经移动到:
Library ▸ Developer ▸ CoreSimulator
~/ ▸ Library ▸ Developer ▸ CoreSimulator ▸ Devices ▸ 5D71993D-78C2-49F4-9B30-99D0307D3A2F ▸ data ▸ Containers ▸ Data ▸ Application ▸ AE50273B-993C-45DA-97E8-3F88E4B64BDE ▸ Documents ▸ xyz.sqlite
您可以在应用程序委托的“didFinishLaunchingWithOptions”方法中添加NSLogs,以便它们打印出您的路径。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
#if TARGET_IPHONE_SIMULATOR
NSLog(@"APP BUNDLE :: %@", [NSBundle mainBundle]);
NSLog(@"APP DOCUMENTS :: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);
#endif
...