iPhone应用程序减去应用程序商店?

如果我在我的Mac上创build应用程序,有什么办法可以让它在iPhone上运行,而无需通过应用程序商店?

只要我仍然可以运行使用官方SDK创build的应用程序,iPhone是否越狱,这并不重要。 由于我不会进入的原因,我不能有这个程序通过应用程序商店。

官方开发者计划

对于标准的iPhone,您需要支付99美元/年才能成为开发者计划的成员。 然后,您可以使用adhoc系统将您的应用程序安装到最多100个设备上。 开发人员程序具有详细信息,但需要将每个设备的UUID添加到您的应用程序包中。 UUID可以使用App Store中的Ad Hoc Helper进行检索。 有关此方法的更多详细信息,请参阅Craig Hockenberry 在iPhone 2.0上的Betatesting文章

越狱iPhone

对于越狱的iPhone,您可以使用以下方法,我使用iPhone OS 3.0上的AccelerometerGraph示例应用程序进行了亲自testing。

创build自签名证书

首先,您需要创build一个自签名证书并修补您的iPhone SDK以允许使用此证书:

  1. 启动钥匙串Access.app。 在未select任何项目的情况下,从钥匙串菜单中select证书助理,然后创build证书。

    名称:iPhone开发者
    证书types:代码签名
    让我重写默认值:是的

  2. 点击继续

    有效期:3650天

  3. 点击继续

  4. 将电子邮件地址字段填空。

  5. 点击继续直到完成。

    你应该看到“这个根证书是不可信的”。 这是预料之中的。

  6. 设置iPhone SDK以允许使用自签名证书:

    sudo / usr / bin / sed -i .bak'/ XCiPhoneOSCodeSignContext / XCCodeSignContext /'/Developer/Platforms/iPhoneOS.platform/Info.plist

    如果您打开Xcode,请重新启动以使此更改生效。

通过WiFi手动部署

以下步骤需要opensshuikittools安装。 将jasoniphone.localreplace为目标设备的主机名。 安装SSH之后,请务必在mobile用户和root用户上设置自己的密码。

手动编译和安装应用程序作为系统应用程序(绕过Apple安装系统):

  1. 项目,设置活动SDK,设备和设置活动构buildconfiguration,发布。

  2. 正常编译你的项目(使用Build,不是Build&Go)。

  3. build/Release-iphoneos目录中,您将拥有一个应用程序包。 使用您的首选方法将其传输到设备上的/应用程序。

    scp -r AccelerometerGraph.app root@jasoniphone:/Applications/

  4. 让SpringBoard知道已经安装了新的应用程序:

    ssh mobile@jasoniphone.local uicache

    这只需要添加或删除应用程序就可以完成。 更新的应用程序只需要重新启动。

为了在开发过程中使自己的生活更轻松,可以设置SSH密钥身份validation,并在项目中添加这些额外的步骤作为自定义构build步骤。

请注意,如果您希望稍后移除应用程序,则不能通过标准的SpringBoard界面来完成,您需要使用SSH并更新SpringBoard:

 ssh root@jasoniphone.local rm -r /Applications/AccelerometerGraph.app && ssh mobile@jasoniphone.local uicache 

是的,一旦你join了iPhone开发者计划,并支付苹果99美元,你可以在多达100个iOS设备上configuration你的应用程序。

  • build立你的应用程序
  • 上传到一个破解网站
  • (如果你的应用程序是足够好的)破解版将在几分钟后发布,并准备好让大家下载;-)

在这篇文章的帮助下,我制作了一个脚本,通过Installous应用程序进行快速部署:

 # compress application. /bin/mkdir -p $CONFIGURATION_BUILD_DIR/Payload /bin/cp -R $CONFIGURATION_BUILD_DIR/MyApp.app $CONFIGURATION_BUILD_DIR/Payload /bin/cp iTunesCrap/logo_itunes.png $CONFIGURATION_BUILD_DIR/iTunesArtwork /bin/cp iTunesCrap/iTunesMetadata.plist $CONFIGURATION_BUILD_DIR/iTunesMetadata.plist cd $CONFIGURATION_BUILD_DIR # zip up the HelloWorld directory /usr/bin/zip -r MyApp.ipa Payload iTunesArtwork iTunesMetadata.plist 

上面引用的post中缺less的是iTunesMetadata。 没有这个,Installous将不能正确安装应用程序。 这里是一个iTunesMetadata的例子:

 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>appleId</key> <string></string> <key>artistId</key> <integer>0</integer> <key>artistName</key> <string>MYCOMPANY</string> <key>buy-only</key> <true/> <key>buyParams</key> <string></string> <key>copyright</key> <string></string> <key>drmVersionNumber</key> <integer>0</integer> <key>fileExtension</key> <string>.app</string> <key>genre</key> <string></string> <key>genreId</key> <integer>0</integer> <key>itemId</key> <integer>0</integer> <key>itemName</key> <string>MYAPP</string> <key>kind</key> <string>software</string> <key>playlistArtistName</key> <string>MYCOMPANY</string> <key>playlistName</key> <string>MYAPP</string> <key>price</key> <integer>0</integer> <key>priceDisplay</key> <string>nil</string> <key>rating</key> <dict> <key>content</key> <string></string> <key>label</key> <string>4+</string> <key>rank</key> <integer>100</integer> <key>system</key> <string>itunes-games</string> </dict> <key>releaseDate</key> <string>Sunday, December 12, 2010</string> <key>s</key> <integer>143441</integer> <key>softwareIcon57x57URL</key> <string></string> <key>softwareIconNeedsShine</key> <false/> <key>softwareSupportedDeviceIds</key> <array> <integer>1</integer> </array> <key>softwareVersionBundleId</key> <string>com.mycompany.myapp</string> <key>softwareVersionExternalIdentifier</key> <integer>0</integer> <key>softwareVersionExternalIdentifiers</key> <array> <integer>1466803</integer> <integer>1529132</integer> <integer>1602608</integer> <integer>1651681</integer> <integer>1750461</integer> <integer>1930253</integer> <integer>1961532</integer> <integer>1973932</integer> <integer>2026202</integer> <integer>2526384</integer> <integer>2641622</integer> <integer>2703653</integer> </array> <key>vendorId</key> <integer>0</integer> <key>versionRestrictions</key> <integer>0</integer> </dict> </plist> 

显然,将MyApp的所有实例replace为您的应用程序的名称,MyCompanyreplace为您公司的名称。

基本上,这将安装在安装了Installous的任何越狱设备上。 安装完成后,可以快速部署,因为它可以从任何地方安装,只需将其上传到公司网站,然后将文件直接下载到设备,然后将其复制/移动到~/Documents/Installous/Downloads

值得注意的是,如果你进入越狱路线,那么iPhone操作系统更新可能(有可能)会杀死你运行这些应用程序的能力。 我会去官方的路线,并支付$ 99获得授权。 除了不用担心应用程序被破坏,您还可以获得(如果您select)在商店上发布应用程序的机会。

随着即将到来的Xcode 7,现在可以在没有苹果开发者许可证的情况下在你的设备上安装应用程序,所以现在可以跳过应用程序商店,你不必越狱你的设备。

现在,每个人都可以在苹果设备上获得应用程序。

Xcode 7和Swift现在让大家更容易构build应用程序并直接在他们的Apple设备上运行应用程序。 只需使用您的Apple IDlogin,然后将您的想法转变为可以在iPad,iPhone或Apple Watch上触摸的应用程序。 下载Xcode 7testing版,今天尝试一下。 计划会员不是必需的。

引自: https : //developer.apple.com/xcode/

更新:

XCode 7现已发布:

免费的设备开发现在,每个人都可以在设备上运行和testing自己的应用程序 – 免费。 您可以在Mac,iPhone,iPad,iPod touch或Apple Watch上运行和debugging自己的作品,而不收取任何费用,也无需join任何计划。 所有你需要做的是input你的免费Apple ID到Xcode。 您甚至可以使用已经用于App Store或iTunes的Apple ID。 一旦你完善了你的应用程序,苹果开发者计划可以帮助你在App Store上获得它。

有关在设备上安装和运行的详细信息,请参阅在设备上启动您的应用程序 。

以@Jason Weathered所描述的方式将应用程序复制到iPhone之后,请确保应用程序的“chmod + x”,否则将无法运行。

*更改/注意,使Xcode 3.2.1iPhone SDK 3.1.2的工作

通过WiFi手动部署

2)修改Info.plist后,一定要重新启动Xcode

3)没有find“uicache”命令,使用killall -HUP SpringBoard为我工作得很好。

除此之外,我可以证实这工作正常。

使用PwnageTool 3.1.4的Mac用户在Jailbreaking(DL通过torrent)方面效果很好。

如果您修补/Developer/Platforms/iPhoneOS.platform/Info.plist ,然后尝试使用Apple的真实开发configuration文件debugging在设备上运行的应用程序,则可能无法正常工作。 症状是来自com.apple.debugserver奇怪的错误消息,您可以使用任何捆绑标识符而不会在Xcode中生成错误。 解决scheme是恢复Info.plist

您可以使用AppBox ,一个使用您的Dropbox帐户的Mac应用程序,如果您想从任何其他浏览器进行安装,就可以分发特定应用程序和企业应用程序。

https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessInstallation/releases


选项

存档和上传IPA

  • 只需select项目/工作区进行存档 – > 使IPA – > 上传IPA – > 发送邮件 – >和closuresMAC

只上传IPA

  • 只需selectIPA文件上传IPA – > 发送邮件 – >和closuresMAC

特征

  • 保持相同的链接
    • 此function将保持相同的短url,所有未来的ipa上传相同的捆绑标识符。
    • 如果启用此选项,则也可以使用相同的URL下载以前的版本。
  • 自动电子邮件应用分发链接
  • 分配后自动closuresMac
  • 最大上传大小 =>等于您的Dropbox帐户存储
  • 上传的应用程序到期 =>直到您从Dropbox中删除
  • 按应用安装 =>无限制
  • 仪表板*

    *将在未来版本中提供


AppBox与Diawi

截图

上传IPA

存档和上传IPA

上传IPA

在这里试试https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessInstallation/releases