[英]How Can I Extract an IPA from an iPhone for an App Downloaded from the App Store so that I can see the assets in the IPA?
[英]How can I run a .IPA file downloaded from the app store on a different (developer) device?
我从客户那里获得了一个.ipa文件(没有源代码访问权限)。 该应用程序在应用商店中已不存在。 我的客户现在要我再次编写此应用。 为了弄清楚这个应用程序的Organzer > Devices
,我尝试通过转到Organzer > Devices
,然后选择我的设备,在开发人员设备上安装.ipa文件。 通过“ Add to portal
我将文件Add to portal
设备中。
但是,在我的设备上启动该应用程序时,它会打开以打开,但在达到全屏尺寸之前会消失。 没有消息发布。
问题: 我正在尝试确定这是应用程序的错误(没有错误日志)还是无法做到这一点? 如果可能,我应该如何使该应用程序正常工作?
编辑:控制台说:
SpringBoard[15] <Warning>: Unable to obtain a task name port right for pid 2582: (os/kern) failure
Nov 25 13:25:16 unknown com.apple.launchd[1] <Notice>: (UIKitApplication:com.dcomplex.NVRViewerMilestone[0xdb31]) Exited: Killed: 9
Nov 25 13:25:16 unknown com.apple.launchd[1] <Warning>: (UIKitApplication:com.dcomplex.NVRViewerMilestone[0xdb31]) Throttling respawn: Will start in 2147483647 seconds
Nov 25 13:25:16 unknown SpringBoard[15] <Warning>: Application 'hawk-i' exited abnormally with signal 9: Killed: 9
Nov 25 13:25:17 unknown kernel[0] <Debug>: AppleFairplayTextCrypterSession::fairplayOpen() failed, error -42004
更新:
使用Denis
Answer中提到的脚本后,我可以用我的替换现有签名。 不幸的是,我无法启动应用程序,并获得了如上所述的确切控制台消息,除了最后一行因错误号不同而有所不同:
unknown kernel[0] <Debug>: AppleFairplayTextCrypterSession::fairplayOpen() failed, error -42022
更新2:
Denis
是如此善良,并尝试使用Google的iResign工具来解决我的问题 ,不幸的是再次失败了。 就我而言,我开始认为没有解决方案可以运行该应用程序,但对于其他人来说,可以接受(丹尼斯)接受的答案。
和平。
您可以尝试从.ipa中提取.app,并使用以下bash shell文件将其辞职:
#! /bin/bash
export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform\
/Developer/usr/bin/codesign_allocate
codesign -f -s "iPhone Developer: John Doe (XXXXXXXXXX)" $1.app
这需要您安装开发人员证书和配置文件,并且可以使用通配符ID。
用法将是这样的
$>myresign.sh <your-app-filename>
或者, 这个好工具可以直接用于.ipa文件。 如果您具有开发版本,则适用于这种情况,而不适用于发送到iTunes Connect的版本。
如果您从未向客户提供设备的UDID,则您将没有权限(或适当的配置文件)在设备上实际启动该应用程序。
您需要从客户那里获取源代码,并将其构建并安装到您的设备上。 如果客户没有原始开发人员的源代码并且您的客户无法获得源代码,那么你们俩都是SOL
甚至可以在设备上安装.ipa,这有点令人惊讶。 这意味着您在该应用程序的配置文件中。
因此,当您启动应用程序时,该应用程序似乎崩溃了。 您可能会在设备日志中找到一些提示,这些提示可以在Organizer -> Your Device -> Device Logs
。
该应用程序可能与您的设备不兼容,并且无法启动。 您可能会找到仍然可以运行该应用程序的设备,但是通常最好让源代码来运行该应用程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.