2014-02-02 4 views
1

Я хочу установить приложение из другого приложения. Я знаю, что можно с помощью следующего кода:OpenUrl и itms-services с учетными данными

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@",@"itms-services://?action=download-manifest&url=",self.plistURL]]; 
[[UIApplication sharedApplication] openURL:url]; 

Моя проблема заключается в том, что что .plist находится в зоне на сервере, где пользователь должен ввести учетные данные для доступа к нему. Поэтому, когда я выполняю этот код, пользователь запрашивает учетные данные в Safari. Но я не хочу этого. Я хочу, чтобы приложение вводило учетные данные.

Я уже пытался открыть пользовательскую схему URL-адрес с операцией AFNetworking но мне кажется, что не могут работать собственный URL схемы, потому что я получаю ошибку:

"Unsupported url"

Так что мой вопрос: есть ли способ использовать itms-сервисы с учетными данными пользователя или есть обходное решение?

Я также подумал, что, возможно, загрузка plist и выполнение его из внутреннего URL-адреса может решить проблему, но я хотел убедиться, что нет более простого способа.

Спасибо, что прочитал мой вопрос!

ответ

1

После некоторого времени эксперимента я не думаю, что можно использовать itms-services с учетными данными. Я закончил тем, передавая полномочия непосредственно в URL с:

https://Username:[email protected] 

В PLIST я также добавил учетные данные ИПА URL. Я не думаю, что это чистое решение для добавления учетных данных в ясный текст, но это единственное решение, которое я вижу на данный момент.

Держите меня в курсе, если у кого-то есть лучшее решение.

+0

Имейте в виду, iOS8 не может поддерживать это. Я могу подтвердить, что ваше решение работает в iOS 4-7. –

+1

Я тестировал его с помощью iOS 8.1.2, это решение сработало :) –

+0

Это не работает на iOS 8.1.3. Во-первых, Safari выдает фишинговое предупреждение ... Затем вы получаете приглашение «Невозможно загрузить приложение» из iOS во время установки. Похоже, что он работает * достаточно *, чтобы добраться до .plist, однако URL-адрес ресурса, содержащий UN/PW, кажется, приводит к ошибке. –

Смежные вопросы