【问题标题】:iPhone Simulator locationiPhone模拟器位置
【发布时间】:2010-12-06 18:29:38
【问题描述】:

iPhone 模拟器安装在我机器的什么位置?

我一直在尝试查找我在模拟器中运行的测试应用程序的存储位置。

【问题讨论】:

    标签: iphone objective-c ios xcode ios-simulator


    【解决方案1】:

    模拟器:~/Library/Application Support/iPhone Simulator/

    您可以在 Mac OS X 中从该目录浏览模拟器文件。

    【讨论】:

    • 那不是模拟器的位置,而是数据文件,这似乎是OP的意图。
    • 路径中可以使用~代替/Users/INSERT_YOUR_USER_HERE,所以变成:~/Library/Application Support/iPhone Simulator/
    • 我冒昧地用~ 调整了路径,就像 progrmr 建议的那样。
    • 答案已过时,对我来说(xcode 4.3.3)它在 Xcode 的包内容中(然后在 Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app 中)作为stackoverflow.com/questions/1567798/… 提到
    • 复制粘贴到终端:cd ~/Library/Application\ Support/iPhone\ Simulator/
    【解决方案2】:

    Xcode 4.4 更新:虽然 iPhone 模拟器仍在原处,但 Apple 在以下位置提供了 iPhone 模拟器的快捷方式:

    /Applications/Xcode.app/Contents/Applications
    

    自 Xcode 4.3.1 以来的变化

    请注意,新版本的 Xcode 现已在 Mac App Store 上提供。因此,以前安装程序附带的所有内容现在都打包到Xcode.app 中。

    因此 iOS 模拟器二进制文件位于此处:

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/
    

    模拟器中安装的应用程序以及其他配置文件仍然存在:

    ~/Library/Application Support/iPhone Simulator/
    

    这是Xcode 4.3.1当前发行说明的摘录

    Xcode 4.3.1 中的新功能

    Xcode 现在作为应用程序分发,而不是作为安装程序。此更改使 Xcode 可以直接从 Mac App Store 更新。

    【讨论】:

      【解决方案3】:

      从 Xcode 6 和 iOS 8 开始,您可以在这里找到它:

      ~/Library/Developer/CoreSimulator/Devices/{cryptic number}/data/Containers/Data/Application/{cryptic number}/
      

      或者你可以从下面的代码执行中得到它:

       NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);
      

      【讨论】:

      • 澄清一下,它将在您的用户库文件夹中,因此路径将是 ~/Library/Developer/
      • 您确定这是针对 iOS 模拟器还是模拟器中运行的应用程序存储的数据?
      【解决方案4】:

      Xcode 6 -> /Users/{YOUR NAME}/Library/Developer/CoreSimulator/Devices/{DEVICE ID}/data/Containers/Data/Application/{APPLICATION ID}/

      或者在 Xcode 控制台打印出来

      #if TARGET_IPHONE_SIMULATOR
          NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);
      #endif
      

      【讨论】:

        【解决方案5】:

        实际的模拟器应用程序本身位于 /Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator

        【讨论】:

          【解决方案6】:

          要在模拟器中查找您的应用程序的最新安装,您可以使用以下命令:

          find "/Users/$USER/Library/Application Support/iPhone Simulator" -type d -name 'YourAppName.app' -print0 | xargs -0 ls -td | head -1
          

          不要忘记将 YourAppName 替换为您的应用名称!

          【讨论】:

            【解决方案7】:

            在 Xcode 6 中,iOS Simulator.app 位于此位置:

            /Applications/Xcode.app/Contents/Developer/Applications/iOS Simulator.app
            

            【讨论】:

              【解决方案8】:

              随着 Xcode 6 中 CoreSimulator 的引入,现在每个模拟设备都有自己的数据。以前的版本让所有设备为每个版本的 iOS 共享相同的数据。

              设备位于 ~/Library/Developer/CoreSimulator/Devices。 日志位于 ~/Library/Logs/CoreSimulator

              请注意,~/Library/Developer/CoreSimulator/Devices//data/Library/Logs 是指向~/Library/Logs/CoreSimulator/ 的符号链接。

              CoreSimualtor 将在首次使用时(以及在安装较旧的模拟器运行时之后)创建一组初始设备。您可以在 Xcode.app 中或使用“xcrun simctl create”或“xcrun simctl delete”从命令行添加或删除新设备

              【讨论】:

                【解决方案9】:

                从 Xcode for Lion 的 4.3.2 开始,iOS 模拟器位于应用程序包的内容中...如果您右键单击 xcode.app 并单击“显示包内容”,然后导航到 Contents/Developer/ Platforms/iPhoneSimulator.platform/Developer/Applications 在那里你会找到 iOS Simulator 应用程序......只需将它拖到你的 Dock 上就可以了......或者你可以创建一个别名并将其拖到你的桌面(或任何你想要的地方) 以便于访问模拟器...为什么Apple决定将其埋在包装中,我不知道。

                【讨论】:

                  【解决方案10】:

                  在 X-Code 4.2 中
                  iPhone模拟器的照片存放在

                  /Users/user_name/Library/Application Support/iPhone Simulator/5.0/Media/DCIM/100APPLE
                  

                  【讨论】:

                    【解决方案11】:

                    在 El Capitan 和 Xcode 7.27.3 上,我在这里找到了模拟器: /Applications/Xcode.app/Contents/Developer/Applications/

                    • 模拟器
                    • 模拟器(手表)

                    【讨论】:

                      【解决方案12】:

                      从 xCode 8.0 开始,模拟器 .app 位于

                      /Applications/Xcode.app/Contents/Developer/Applications

                      【讨论】:

                        【解决方案13】:

                        对于 xcode 7,您可以在此处找到它

                        /Users/{USERNAME}/Library/Developer/CoreSimulator/Devices/{CRIPTIC NUMBER}/data/Containers/Data/Application/{CRIPTIC NUMBER}/Documents/

                        或者在你的 xcode 项目中执行下面的代码

                        目标 C

                        NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);

                        斯威夫特

                        print(applicationDocumentsDirectory.path)

                        【讨论】:

                          【解决方案14】:

                          最佳答案对于模拟器应用程序的位置是正确的。但是有一个次要位置存储示例应用程序(和您的应用程序构建)以供模拟器访问。这是:

                          ~/Library/Developer/CoreSimulator/Devices

                          每个子目录都是一个设备 ID。您可以通过查看 data/Containers/Bundle/Application/{app_id}

                          中的每个目录来找到您的应用所在的位置

                          【讨论】:

                            【解决方案15】:

                            我找到了以编程方式找到它的最简单方法。运行应用并将 NSLog() 放入 [NSBundle MainBundle],它将显示应用在模拟器中运行的整个路径。

                            【讨论】:

                              【解决方案16】:

                              一个超级简单和性感的方法是使用Apple Script:

                              property findtype : quoted form of "kMDItemContentType = \"com.apple.application-bundle\""
                              
                              set simulatorFolder to POSIX path of (path to application support folder from user domain) & "iPhone Simulator/"
                              set appFiles to paragraphs of (do shell script "mdfind -onlyin " & quoted form of simulatorFolder & " " & findtype)
                              if appFiles is not {} then
                                  set mostRecentApp to item 1 of appFiles
                                  tell application "Finder" to reveal ((POSIX file mostRecentApp) as alias)
                                  tell application "Finder" to activate
                              end if
                              

                              将其粘贴到 Apple 脚本编辑器中并将其导出为 Mac 应用程序。然后,只要您需要在沙盒中打开 Finder 窗口,您就可以运行该应用程序。代码由 MacScripter 的 StefanK 提供。

                              【讨论】:

                                【解决方案17】:

                                我花了一段时间,但我刚刚在/Applications/Xcode.app/Contents/Developer/Applications/iOS\ Simulator.app找到了我的

                                【讨论】:

                                  猜你喜欢
                                  • 1970-01-01
                                  • 2011-01-04
                                  • 2010-09-17
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 2011-12-22
                                  相关资源
                                  最近更新 更多