Answers:
以下指导步骤可实现此目的:http : //iphonedevwiki.net/index.php/Xcode
每个步骤都提供了我的发现和行动。
1.使用“钥匙串访问”在“登录”(默认)钥匙串上创建一个名称为“ iPhone Developer”的自签名代码签名证书。
2.打开/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Info.plist
(4.2或以下:)/Developer/Platforms/iPhoneOS.platform/Info.plist
。您可能需要root权限。
.plist
文件。3.更换所有出现XCiPhoneOSCodeSignContext
的XCCodeSignContext
。其中有三个(XCode版本3.2.4+)。
4.保存文件并重新启动Xcode。
5.确保在Mac上具有ldid。将副本放在的某处/usr/local/bin
。
/usr/local/bin
。6.在ldid程序旁边创建一个Python脚本ldid3.py。使它可执行。填写:
#!/usr/bin/env python
from sys import argv
from subprocess import check_call
from os.path import basename, dirname, splitext, join
from tempfile import NamedTemporaryFile
app = argv[-1]
ldid_path = join(dirname(__file__), 'ldid')
obj_path = join(app, splitext(basename(app))[0])
if '-gta' not in argv:
check_call([ldid_path, '-S', obj_path])
else:
with NamedTemporaryFile('w+b', 0) as f:
f.write("""
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>get-task-allow</key>
<true/>
</dict>
</plist>
""")
check_call([ldid_path, '-S' + f.name, obj_path])
ldid3.py
并存储在/usr/local/bin
目录中。chmod 777 /usr/local/bin/ldid3.py
。7.打开iPhoneCodeSign.xcspec
。该文件可以在[For Xcode 4.6:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Specifications/iPhoneCodeSign.xcspec
]中找到:
8.将文件中的条目从更改codesign
为ldid3.py
。
sudo plutil -convert xml1 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Specifications/iPhoneCodeSign.xcspec
<key>CommandLine</key><string>/usr/bin/codesign</string>
为<key>CommandLine</key><string>/usr/local/bin/ldid3.py</string>
。9.保存文件,然后重新启动Xcode。
10. /var/mobile/tdmtanf
在设备上创建一个文件,以在安装时启用Apple的“ TDMTANF旁路”(警告:这样做也将您带入沙盒GameCenter)。
tdmtanf
SSH导入iPod,并将其上传到/var/mobile/
,然后重新启动iPod。我打开现有的Xcode项目,然后单击“运行”。它可以在iOS模拟器中正常运行。
我确保将代码签名设置为使用步骤1中设置的证书。
我构建应用程序(“项目”>“构建”)。随后显示一条成功消息。
我TicTacToe.app
从我的应用程序文件夹中抓取/Libary/Developer/Xcode/DerivedData/TicTacToe-cjgzmoxtflyegtfypsbxbuiuwxns/Build/Products/Debug-iphoneos/
并将其转移到Windows计算机上,以安装到iPod上。
为了将应用程序安装到iPod上,我拖到TicTacToe.app
“ iPhone配置实用程序”的“应用程序”部分,但是收到此错误消息,提示我的应用程序“不是有效的移动应用程序”。
我还尝试使用iFunbox和在Cydia中找到的AppCake应用程序手动安装该应用程序。都失败了。
作为一个兴趣点,因为随着我在Google周围的关注,我注意到许多人提到了这一点的重要性:我确实安装了AppSync。(对不起,截图太大了。如果我要记下它,请告诉我!)
因此,尽管多次严格按照说明进行操作,但iPhone配置实用程序仍未将我的应用识别为有效应用。我无法使用诸如iFunbox之类的程序或诸如AppCake之类的Cydia应用来手动安装该应用。
我怀疑该应用确实确实无效,但是在认真遵循说明之后,我不确定原因。
谁能告诉我为什么我的应用程序无效,除了付钱外我还能做些什么来解决呢?