Беспроводное распространение приложения iPhone - как обезопасить файл.ipa?
У меня есть корпоративная учетная запись, и я распространяю частное приложение, поэтому у меня есть веб-страница, требующая логин / пароль, а затем ссылка на файл манифеста.plist, который также имеет ссылку на файл.ipa, Проблема в том, что оба файла находятся на одном сервере, и этот сервер требует входа в систему.
Вот почему всякий раз, когда я нажимаю на ссылку, хотя я уже вошел в систему, я получаю всплывающее окно "невозможно подключиться". Я хотя учетные данные были переданы, так как я уже вошел в систему, но, очевидно, это не так.
Как я могу обеспечить загрузку файла.ipa, не требуя пароля (или пароль может быть каким-либо образом предоставлен пользователем), без возможности создания собственного файла манифеста и предоставления ссылки на мой файл.ipa?.
Я пытался найти в Интернете решение для этого, но ничего не нашел.
Любая помощь будет оценена.
Спасибо.
2 ответа
Вы можете создать свою собственную систему входа в систему, используя php и mysql.
Поместите файл ipa в папку, прежде чем public_html
или же htdocs
или же www_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;
}
Это заставит загрузку. Если пользователь не вошел в вашу сессию, вы можете отправить сообщение об ошибке или подобное.
Вы смотрели на TestFlight https://testflightapp.com/ или HockeyApp http://www.hockeyapp.net/?
Только для iOS я бы порекомендовал TestFlight, но если вы распространяете и приложения для Android, то HockeyApp может быть лучше. (TestFlight на данный момент не поддерживает Android)