5

我们的销售团队经常需要演示当前正在开发的应用程序。我们使用了多种方法将它们安装在他们的笔记本电脑上,但一切都非常手动。

我们最初使用的方法是让我们下载源代码并为每个推销员编译每个项目。非常耗时且烦人。

然后我们变得更聪明一点,并意识到我们可以复制 iOS 模拟器的 Applications 文件夹,然后将其复制到每个推销员笔记本电脑上的 iOS 模拟器的 Applications 文件夹中。好多了,但仍然是将它们全部复制到每台笔记本电脑的手动部分。

所以我开始寻找一些 Mac 的文件夹同步选项,并发现了这种技术http://www.youtube.com/watch?v=iWoXPWlu_Dk

非常棒,似乎完全符合我的需要。我有一个中央共享文件夹,我可以将新的 iOS 应用程序放入其中,然后销售人员的笔记本电脑会自动与该应用程序文件夹同步,新的应用程序就会出现,而无需将笔记本电脑放在这里。

不幸的是,当它是符号链接或别名时,iOS 模拟器似乎无法识别 Applications 文件夹。是否有一些 Mac 魔法可以使这项工作发挥作用?(我通常是一个 Windows 人,最近才在 iOS 世界工作,所以这里可能缺少一些基本的东西)。

我希望应用程序文件夹 /Application Support/iPhone Simulator/5.1/Applications 是一个共享文件夹,它会自动为它们同步,抓取我们为演示准备的任何新应用程序(并将它们更新为旧应用程序)。似乎是让他们早期构建的一种不错的平稳方式。

我们已经为实际设备使用了像 TestFlight 这样的服务,这是一个很好的选择,但是当他们手边没有设备或者只是在他们的笔记本电脑上浏览演示时,我们希望有一个很好的简单过程来保存他们为他们的模拟器安装更新了新版本。

4

2 回答 2

2

由于我只有一台 Mac,因此尚未对此进行测试,但请尝试一下:

  1. 安装 Dropbox
  2. 在那里创建一个共享文件夹并从 /Users/USERNAME/Library/Application Support/iPhone Simulator/5.1/Applications 复制您的应用程序
  3. 创建一个 shell 脚本将它们复制回模拟器的位置,并将其添加到共享文件夹中。它应该看起来像这样:

    #!/bin/sh
    
    cp -R ~/Dropbox/Appfolder/appname ~/Library/Application Support/iPhone Simulator/5.1/Applications/
    
  4. 让您的用户同步他们的保管箱以获取文件,然后运行 ​​shell 脚本来复制文件。

于 2012-08-14T01:52:59.917 回答
2

首先是一些背景知识,你真的不需要这个,但我喜欢教学:)。

在 Unix 和现在的 MacOS 上,有两种基本的链接。“正常”链接和符号链接。别名,在 windows、unix 和 mac 上是一种符号链接:链接包含对原始文件的引用。正常或硬链接创建指向数据的第二个目录条目,如果您删除原始文件,操作系统知道还有另一个指向它的条目,因此它仅在所有硬链接时才实际删除文件(或目录)链接已被删除。硬链接的缺点是它们必须在同一个文件系统上,这样文件系统才能统计有多少硬链接。

好的,我刚刚安装了Dropbox,它似乎在用户的主目录中创建了一个真正的文件夹,所以除非你是一个复杂的磁盘分区方案,或者文件库1,其中用户的主目录实际上是一个加密磁盘图像,您可以使用硬链接。这也意味着您不需要复制或同步,因为 Dropbox 已经在这样做了。

没有更正但实际上没有指出的一件事是,在您的帖子中,您似乎正在复制到/Application Support,而不是~/Library/Application Support/Library/Application Support。由于您的基本方案在没有 Dropbox 的情况下工作,我认为这是一个错字。

在我给你命令之前,你可能想用 Finder 删除旧的 iPhone Simulator Applications 目录,而不是使用该rm命令,因为该rm命令可能具有非常大的破坏性。

好的,最后,执行链接的命令;只要文件名包含空格,引号就很重要。此示例适用于 ~/Library

rm  -rf "~/Library/Application Support/iPhone Simulator/5.1/Applications"

ln "~/Dropbox/Simulator Applications" "~/Library/Application Support/iPhone Simulator/5.1/Applications"

这应该有效,您现在可以停止阅读,剩下的只是更多的教育:)

波浪号 ( ~) 是用户主目录的快捷方式。使用没有这个的命令来/Library代替。

如果你想确定你有确切的路径,你可以将文件和文件夹从查找器窗口拖到终端,路径被粘贴而不是文件。

如果你在搞乱根文件系统中的东西,你可能需要超级用户权限。如果您使用管理员帐户登录,则可以运行具有超级用户访问权限的单个命令,如下所示。

sudo ln  "/Library/Application Support/iPhone Simulator" fred

shell 会询问您的密码,然后以超级用户身份为您运行命令。 sudo记住授权几分钟,然后您必须再次进行身份验证。

于 2012-08-14T09:48:01.130 回答