iPhone App无线分发 - 如何保护.ipa文件?

时间:2012-01-06 17:04:51

标签: iphone ios protection

我有一个企业帐户,我正在分发一个私有应用程序,所以我有一个需要登录/密码的网页,然后有一个指向.plist清单文件的链接,该文件也有.ipa的链接文件,问题是两个文件都在同一台服务器上,而该服务器需要登录。

这就是为什么每当我点击链接时,即使我已经登录,我也会得到"无法连接"弹出。我虽然凭证已经通过,因为我已经登录,但显然他们不是。

如何在不需要密码的情况下保护.ipa文件的下载(或者密码可以由用户以某种方式提供),而无法创建自己的清单文件并将链接提供给我的.ipa文件?

我尝试在网上寻找解决方案,但一无所获。

非常感谢任何帮助。

谢谢。

2 个答案:

答案 0 :(得分:4)

您可以使用php和mysql创建自己的登录系统。

将ipa文件放入public_htmlhtdocswww_root之前的文件夹或您用作网站根目录的任何文件夹中。这样人们就无法链接到它。

然后使用这样的代码:

$file = '/absolute/path/to/application.ipa';

if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    exit;
}

这将强制下载。如果用户未登录您的会话,则可以提供错误消息或类似信息。

答案 1 :(得分:1)

您是否看过TestFlight https://testflightapp.com/或HockeyApp http://www.hockeyapp.net/

仅限iOS,我建议使用TestFlight,但如果您分发Android应用程序,HockeyApp可能会更好。 (TestFlight目前不支持Android)