Как зарегистрировать схему URL-адреса для открытия приложения с помощью Xcode 4?

Xcode4 запрашивает огромное количество аргументов, чтобы сделать это проще:

NSString *stringURL = @"twitterriffic://";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Xcode 4 Info.plist editor

Для чего все эти свойства? Почему изображение? Должен ли я повторять идентификатор приложения здесь? Какую роль выбрать, если я хочу, чтобы кто-нибудь мог называть этот URL, чтобы открыть мое приложение? И каковы эти дополнительные свойства типа url для?

Я не нашел учебника, связанного с Xcode4, как зарегистрировать такую ​​схему URL с Xcode 4.

Ответ 1

Edit your AppName-Info.plist file

  • Откройте "Поддерживающие файлы" (папку) слева и нажмите "YourAppName-Info.plist"
  • Выберите строку типа "Тип кода создателя пакета" и наведите указатель мыши на строку и щелкните по символу (+)
  • Это создает новую строку и тип "URL-типы"
  • Нажмите на аперс слева и увидите пункт 0, и вы переименуете значение в пункте 0 в "Схемы URL", как показано
  • Затем отредактируйте поле в Item 0 и введите прототип; Я набрал "goomzee", как показано

Теперь, если я установлю это приложение на своем симуляторе и откройте Safari и наберите "goomzee://" в адресной строке, оно запустит мое приложение.

Ответ 2

Да, это не так просто?

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

Но, по сути, ключом к этому является установка значения "Типы URL" в вашем файле .plist. Вот как это выглядит в XCode 5:

URL types

В этом примере я зарегистрировал префикс MKB, поэтому теперь я могу использовать этот новый тип URL-адресов в гиперссылках на веб-страницах и в электронных письмах (если я читаю электронную почту в приложении Почта iPad):

Mail app

Если пользователь нажимает на одну из этих ссылок, приложение iPad запускается, и я могу получить доступ к полной строке URL-адреса, чтобы извлечь другие параметры из URL-адреса (например, "DocumentNumber = 100")

Единственный недостаток - мне еще предстоит выяснить, как проверить, установлено ли у пользователя приложение для iPad, которое может распознавать определенный префикс.

Если этого не произойдет, и они нажмут на одну из этих ссылок MKB://на своем iPad, они получат ужасное сообщение об ошибке:

Nope

Ответ 3

Вы можете продолжить регистрацию своего настраиваемого URL, отредактировав файл app.plist приложения (как показано в одном из предыдущих questions). Предполагается, что новый редактор в Xcode 4 будет удобнее для добавления записей - все, что он делает, это сделать те же самые изменения info.plist, которые вы сделали бы вручную. Если вы хотите использовать новый редактор, вам нужно только заполнить поля "Идентификатор" и "Схемы URL". Вам не нужны изображения, значок или дополнительные свойства URL.

Другие свойства (значок и т.д.) не являются хорошо документированными, но, похоже, применимы только к Mac OS X и могут использоваться в диалоговом окне Finder Get Info для отображения типов URL, которые может открыть конкретное приложение. Например, посмотрите Руководство по запуску служб запуска.

Ответ 4

То, что вы измените в этом редакторе, также отражено в файле plist файла проекта. Он принимает форму ProjectName-Info.plist. Надеюсь, это поможет.