如何在我的iPhone模拟器上安装.ipa文件

yin*_*lcs 149 iphone macos ios-simulator

我的Mac上运行了一个iphone模拟器.

我有一个.ipa文件,你能告诉我如何在模拟器上安装它?

Aug*_*ust 127

你不能.如果它是通过iTunes商店下载的,那么它是为不同的处理器构建的,不能在模拟器中运行.

  • 它将使用下面的技术在模拟器中显示图标,但是,我们的应用程序在运行时会立即崩溃. (14认同)
  • 任何声称在模拟器上运行iPhone应用程序的人都是妄想症.iPhone模拟器不是模拟器 - 它无法运行ARM代码. (13认同)
  • 我想补充一点,在模拟器中启动iPhone应用程序的唯一方法是自己从XCode编译它,模拟器是活动目标. (12认同)
  • 看起来像下面有人这样做了一些成功.hackish,但如果它工作,这是有用的知道. (3认同)
  • 您可以在模拟器中运行项目的应用程序文件。 (2认同)
  • 您现在对 M1 和 ARM 仿真器有何看法? (2认同)

小智 97

我找到了一个我想用iTunes的.ipa文件并将其复制到我的桌面上.

之后我将扩展名更改为.zip并将其解压缩.

接下来,我找到了Payload文件夹并将应用程序内部移动到我的桌面.

最后,我将该应用程序移动到我的iPhone模拟器应用程序文件夹中:

__PRE__

希望这可以帮助!(注意:有些应用程序比其他应用程序更容易崩溃.)

  • @DataGreed:它已移至HD> Applications> Xcode.app(右键单击 - 显示包内容)>目录>开发人员>平台> iPhoneSimulator.platform> SDKs> iPhoneSimulator6.0.sdk>应用程序 (28认同)
  • 应用程序显示在模拟器..但它在iOS6和iOS7崩溃 (13认同)
  • OSX上XCode 4.3或更新版本的路径位于以下位置(请注意,您的计算机上的5.1部分可能不同)/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5. 1.sdk /应用 (7认同)
  • App崩溃兄弟:( (3认同)
  • 我确认这种安装方法即使在2016年3月也能正常工作.(虽然已经崩溃,但已安装) (3认同)
  • 2017 年 Xcode 8.2 的路径(可能)是:“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/Applications”。将应用程序放入其中后,如何在模拟器中启动它?我在主屏幕上没有看到它作为应用程序。 (2认同)

sin*_*h99 60

在Xcode 6+和iOS8 +中,您可以执行以下简单步骤

  1. 在桌面上粘贴.app文件.
  2. 打开终端并粘贴以下命令:

    cd desktop

    xcrun simctl install booted xyz.app

  3. 打开iPhone模拟器,然后单击应用程序并使用

对于iOS 8以下的版本,请执行以下简单步骤.

注意:您需要确保您的应用程序是为所有体系结构构建的,模拟器x386位于构建设置中并Build Active Architecture Only设置为No.

  1. 路径:库 - >应用程序支持 - > iPhone模拟器 - > 7.1(或其他版本,如果您需要) - >应用程序
  2. 使用应用程序的名称创建一个新文件夹
  3. 进入文件夹并将.app文件放在此处.

  • 该命令有效,但应用程序崩溃,因为它不是为模拟器构建的.:( (22认同)
  • 这对于在模拟器上构建应用程序并希望在其他模拟器上运行应用程序的任何人都很有用.请注意,原始问题是关于.ipa文件,但不是.app (6认同)
  • 获取"没有设备启动". (4认同)
  • 如果您有.ipa,只需将其重命名为.zip并将其解压缩以获取.app (4认同)
  • @Vijay我必须在第2步之前手动启动iPhone模拟器,否则这样可以正常工作. (3认同)

rjm*_*nro 32

您无法在模拟器中运行ipa文件,因为ipa文件是针对手机的ARM架构而不是模拟器的x86架构编译的.

但是,您可以提取安装在本地模拟器中的应用程序,将其发送给其他人,然后将其复制到计算机上的模拟器中.

在终端中,键入:

open ~/Library/Application\ Support/iPhone\ Simulator/*/Applications
Run Code Online (Sandbox Code Playgroud)

这将打开您已安装的所有模拟器的所有应用程序文件夹.每个应用程序都将位于具有随机十六进制名称的文件夹中.您可以通过查看每个应用程序来确定哪个是您的应用程序.一旦找到了你想要的那个,右键单击它并选择"压缩...",它将生成一个zip文件,您可以轻松地将其复制到另一台计算机并解压缩到类似的位置.

  • 从iOS 10开始,您必须从以下位置复制两个十六进制命名的应用程序文件夹:`〜/ Library/Developer/CoreSimulator/Devices/*/data/Containers/Data/Application /``〜/ Library/Developer/CoreSimulator/Devices/*/data/Containers/Bundle/Application /`否则App不会出现在模拟器中. (4认同)
  • 在iOS 8上,它被移动到每个设备应用程序:〜/ Library/Developer/CoreSimulator/Devices/594C6B4D-AB19-479B-A047-240361C51D95/data/Applications /所以`open~/Library/Developer/CoreSimulator/Devices/*/数据/ Applications` (2认同)

Kam*_*pai 27

更新:对于Xcode 8.0+,您需要按照以下步骤操作:

  1. 从iTunes下载应用程序
  2. 选择下载的应用程序,右键单击在查找器中显示
  3. .ipa文件复制到桌面,将其重命名为.zipfile
  4. 提取该.zip文件,您将获得具有应用程序名称的目录
  5. 检查您将appPayload文件夹中找到该app文件的目录,复制此文件

  6. ~/Library/Developer/CoreSimulator/Devices

仅供参考:Library文件夹默认隐藏在mac中,您可以使用以下命令查看隐藏文件.

defaults write com.apple.finder AppleShowAllFiles YES;
killall Finder /System/Library/CoreServices/Finder.app
Run Code Online (Sandbox Code Playgroud)

现在,您将看到许多具有长十六进制名称的目录,这些都是模拟器.

要查找所需的模拟器,请使用"排列方式>修改日期"对这些目录进行排序.

选择该模拟器文件并转到下面的位置.

  1. <HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/
  2. 使用该文件夹创建新文件夹名称<download-app-name>并粘贴app该文件夹
  3. 打开终端并运行以下命令来安装此应用程序

    xcrun simctl install booted <APP_FILE_PATH>
    
    Run Code Online (Sandbox Code Playgroud)

示例<APP_FILE_PATH>如下所示:

~/Library/Developer/CoreSimulator/Devices/<HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/<APP_NAME>
Run Code Online (Sandbox Code Playgroud)

  • 这似乎有效,但您的示例应用程序路径需要在/开头之后,并且路径需要一直到.app文件,而不仅仅是包含它的目录. (3认同)
  • 您可以使用`xcrun simctl list`来查找模拟器和代码 (2认同)

Dav*_*eek 22

对于Xcode 9.4.1和最新的模拟器:

希望我的回答能够在这里看到,因为这需要我一段时间来弄清楚,但我得到了它的工作.

首先,您需要在模拟器上构建和运行App.然后打开活动监视器.双击应用程序的名称以查找其内容.

在此输入图像描述

在下一个屏幕中,打开" 打开文件和端口"选项卡,找到MyAppName.app/MyAppName的行.

在此输入图像描述

复制链接但请确保在MyAppName.app处停止.不要复制它后面的路径.

控制单击查找器图标,然后选择转到文件夹.

在此输入图像描述]

粘贴路径,然后单击"输入".您将看到My​​AppName.app文件.将其复制到桌面并压缩.将其移动到您想要的第二台计算机并解压缩该文件.构建一个随机项目以打开模拟器.

最后:将应用程序从桌面拖放到模拟器中.你会看到安装和应用程序打开,也不会崩溃.

在此输入图像描述

  • downvote没有评论的答案有效:D真棒 (7认同)
  • “首先,您需要在模拟器上构建并运行应用程序。” &lt;- 如何?这不是OP首先询问如何做的吗? (2认同)

rus*_*hop 17

首先,IPA通常只有ARM切片,因为App Store当前不接受上传中的模拟器切片.

其次,从Xcode 8.3开始,您可以将一个.app包拖放到Simulator窗口中,然后安装它.~/Library/Developer/Xcode/DerivedData/projectname-xyzzyabcdefg/Build/Products/Debug-iphonesimulator如果要保存或将其分发给其他人,您可以在构建产品目录中找到该应用程序.

要从命令行安装使用xcrun simctl install <device> <path>.

device可以是设备UUID,其名称,或者booted表示当前启动的设备.

  • 根据定义,它确实包含了所需的一切.当Xcode在模拟器中安装应用程序时,我们将路径传递给`.app`文件,这就是安装的内容.您的应用因其他原因而崩溃. (5认同)
  • 是的,您可以拖放 `.app` 文件,但这不会复制模拟器运行它所需的所有内容。我正在使用的应用程序立即崩溃。Xcode v. 8.3.3 (2认同)

Swa*_*ant 8

对于 Xcode 10,这里有一个简单的方法,对我来说调试 IPA(开发配置文件)

  1. 解压缩 IPA 以获取 Payload 文件夹。
  2. 在 Payload 文件夹中是应用程序可执行文件。
  3. 将应用程序拖放到打开的模拟器中。(将它拖到模拟器上时,您可能会看到一个绿色的添加按钮)

它应该在该模拟器上安装该应用程序。


小智 7

在 iPod touch(第 7 代)模拟器 13 (iOS 15.0) 上测试

Xcode 和 Xcode 命令行工具已安装

由于我们有一个 .ipa 文件,因此我们可以从中获取 .app 文件

  1. 将 .ipa 文件重命名为 .zip 并提取内容
  2. 解压zip文件后,我们可以找到包含App_Name.app文件的Payload文件夹

打开终端或 iTerm2 应用程序

  1. 导航到包含 .app 文件的文件夹
  2. 列出所有 iOS 连接的设备和 iPhone 模拟器 -> 还显示所有设备的 UDID
xcrun xctrace list devices
Run Code Online (Sandbox Code Playgroud)
  1. 启动模拟器
xcrun simctl boot <UDID>
Run Code Online (Sandbox Code Playgroud)
  1. 启动模拟器
open -a simulator
Run Code Online (Sandbox Code Playgroud)
  1. 安装.app文件
xcrun simctl install booted <App_Name>.app
Run Code Online (Sandbox Code Playgroud)


hum*_*rim 6

您可以在模拟器中运行项目的应用程序文件 - 而不是.ipa文件.

你可以从:

Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->那么你可以看到许多文件,比如0CD04F....通过打开它找出你的应用程序文件.

您可以将文件复制到您的系统(您需要运行的系统模拟器)位置 Libraries-->Applicationsupport-->iphone simulator-->4.3(its your simulator version)-->applications-->

然后打开模拟器4.3(它是您粘贴的模拟器版本).您可以在那里看到安装的应用程序.


来自其他人:

请告诉他们发现Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->你可以0CD04F....从他们的系统中看到许多文件,并从他们那里接收该文件.

获得文件后,请将文件复制并粘贴到您的系统`Libraries - > Applicationsupport - > iphone模拟器 - > 4.3(它的模拟器版本) - >应用程序 - >(将文件粘贴到此处) ).

然后,您可以看到应用程序已安装在系统模拟器中,您可以在单击文件后运行它.


小智 5

从此处复制:
-在Xcode中运行应用程序。-选择“查找器”,转到“开始”,然后单击选择“库”,然后单击“库/应用程序支持/ iPhone Simulator / 7.0.3-64 /应用程序”。-选择32位文件夹。

粘贴到此处:
-/Applications/Xcode-Beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhone Simulator。SDK /应用程序
-粘贴在此处并运行模拟器。


rfr*_*lli 5

使用 Xcode 6:

很可能在模拟器上构建和安装。

我通过在项目设置中复制调试构建配置(在下面的示例中将其称为 SimRelease)来完成此操作。我将架构更改为 i386 和 x86_64(不确定这有多么必要),但复制的构建配置之间更改的关键区别是将活动架构的构建设置为“否”。之后,几个简单的命令行工具将完成剩下的工作!

xcodebuild -scheme YOUR_SCHEME -configuration SimRelease -sdk iphonesimulator8.1
Run Code Online (Sandbox Code Playgroud)

根据您的 DerivedData 集的位置,您需要找到输出的 .app 文件夹。一旦找到它,您就可以将其安装在任何模拟器设备上。要查找设备 UUID,请打开 Xcode 并转到“窗口”->“设备”,您将看到设备实例的列表,并且可以获取 UUID。对于一个简单的脚本,您可以从以下位置获取所有这些脚本:~/Library/Developer/CoreSimulator/Devices/ 并安装在每个设备上。

从这里开始,在设备上安装的简单命令是:

xcrun simctl 安装 DEVICE_ID APP_FOLDER_LOCATION

下面是一个简单的 shell 脚本,用于获取该应用程序并将其安装在每台设备上:

app_dir=$1
current_dir=$(pwd)
cd ~/Library/Developer/CoreSimulator/Devices/
devices=$(ls -d */)
cd "$current_dir"
for device in $devices
do
    device_id=${device%/}
    xcrun simctl install "$device_id" "$app_dir"
done
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!我花了一段时间才找出最好的方法。