Является ли iOS CarPlay API общедоступным? Как интегрировать CarPlay?

Является ли CarPlay API общедоступным?

Где мы можем найти руководство по программированию или ссылку на эти классы, если это так?

Или он будет легко интегрироваться с другими API, такими как Audio from AVFoundation?

Примечания

  • Этот вопрос является широким и может быть отмечен как таковой, но, пожалуйста, не делайте так, чтобы информация на эту тему практически не содержалась, и многие люди могли найти это полезным на этом этапе
  • Я живу в Швейцарии и хочу поехать в Женеву, чтобы попробовать демо приложение, которое я написал бы на Ferrari lol.

Ответ 1

Обновление, октябрь 2019 г.:
Пару лет спустя Apple открыла свои рекомендации для дизайнеров и документы для разработчиков на CarPlay. Как уже упоминалось в некоторых других комментариях, получить доступ к инструментам разработчика можно и на вашем Mac.

Технически, в зависимости от типа приложения, который вы хотите совместить с CarPlay, для него требуются разные API и фреймворки. Например:

Каркас CarPlay предназначен только для навигационных приложений. Если вы хотите добавить поддержку CarPlay в ваше аудио приложение, используйте MPPlayableContentManager. Для приложений обмена сообщениями используйте намерения SiriKits, связанные с обменом сообщениями, для поддержки чтения и отправки сообщений в CarPlay через Siri. Для приложений вызова VoIP используйте CallKit с намерениями SiriKits VoIP, связанными с вызовами, чтобы совершать и отвечать на аудиовызовы в системе CarPlay.

Однако юридически, тем не менее, для Программы MFi требуется приложение и одобрение Apple, чтобы вы получили соответствующие разрешения, профиль подписи и т.д., Чтобы развернуть его на реальном устройстве. не говоря уже о выпуске его на рынок. ИЛИ... вы можете попробовать подать заявку на доступ вручную и объяснить ваш случай.

Наконец, есть также некоторая документация о том, как включить инструменты и симулятор для работы с CarPlay. Например, небольшая выдержка:

CarPlay поддерживается по умолчанию при запуске Simulator. Однако вы должны настроить симулятор с дополнительными опциями при разработке приложения для навигации CarPlay. Чтобы включить дополнительные параметры, введите следующую команду в Терминале перед запуском Симулятора: defaults write com.apple.iphonesimulator CarPlayExtraOptions -bool YES.

Но помимо документации, я могу серьезно порекомендовать прочитать, что люди из Flitsmeister писали в блоге о о том, как включить инструменты на вашем локальном компьютере. Кроме того, их путь к окончательному получению одобрения был, по-видимому, утомительным и далеко не гладким (я не связан с Flitsmeister), хотя их сценарий использования основан на наличии большого количества пользователей (± 1,5 млн.). Упомяну это, чтобы подчеркнуть: CarPlay, по-видимому, все еще не для повседневного разработчика, просто пока.


Этот вопрос датируется началом 2014 года. Позвольте мне обновить его до середины 2016 года:

TL;DR - No, it is not publicly available.

Чтобы получить инструменты, документацию, технические характеристики и даже саму лицензию для разработки (среди прочих) Carplay, вам необходимо зарегистрироваться в программе Apple MFi.

Программа Apple MFi ("Сделано для iPhone/iPod/iPad") - это программа лицензирования для разработчиков аппаратного и программного обеспечения. Это специальная лицензия, предназначенная для производителей, в основном единиц "массового производства", которая имеет дополнительные преимущества по сравнению с обычными учетными записями разработчиков для компаний. Эти преимущества включают в себя аппаратные компоненты, инструменты, документы, техническую поддержку и, конечно, лицензию, которую вам разрешено разрабатывать специально для этих устройств и технологий, таких как Carplay.

Часто задаваемые вопросы о регистрации в MFi - это неплохое чтение, в котором все понятно. Но прежде, чем вы возродите свои надежды, обратите внимание, что он доступен только для производителей. Как часто задаваемые вопросы говорится:

В: Могу ли я подать заявку на Лицензию на производство MFi, если моей компании не принадлежит производственное предприятие?

Ответ: Нет. Лицензия на производство MFi предназначена исключительно для компаний, владеющих одним или несколькими производственными объектами.

Есть несколько исключений. Например, если вы подрядчик или инженерно-конструкторская фирма, которая разрабатывает аксессуары MFi для клиента (который является производителем).

Но в принципе, это не для среднего разработчика, и вход довольно строг. Это означает, что Apple Carplay недоступна для разработчиков, скажем, 95% из нас.

Ответ 2

Структура MusicCarDisplayUI.framework является частной инфраструктурой с iOS 7.1. Взглянув на заголовки времени выполнения, можно догадаться, почему; он еще не готов для широкого использования. Является ли Apple публичным в будущем, это одно предположение.

Тем временем, откройте запрос функции или напрямую свяжитесь с Apple здесь.


Обновление. Если вы хотите иметь приложение с поддержкой CarPlay, обратитесь в Apple, используя эту форму.

Ответ 3

Просто работал над проектом carplay.

  1. Вы можете найти документы API на веб-сайте Apple для разработчиков. Как MPPlayableContentManager и MPContentItem.
  2. Однако только после регистрации на сайте Apple для carplay, Apple отправит вам "Руководство по программированию Carplay", в котором будет рассказано, как активировать автосимулятор, какие классы использовать, как это делать и т.д.

Ответ 4

Посмотрите на MediaPlayer Framework. Там есть несколько классов, предназначенных только для CarPlay. Например, MPPlayableContentManager, MPContentItem и т.д. Очевидно, что вы не сможете развернуть его через AppStore без одобрения Apple.

Ответ 5

Частично начиная с iOS 12.0: https://developer.apple.com/documentation/carplay

Каркас CarPlay предназначен только для навигационных приложений. Если вы хотите добавить поддержку CarPlay в ваше аудио приложение, используйте MPPlayableContentManager. Для приложений обмена сообщениями используйте намерения SiriKits, связанные с обменом сообщениями, для поддержки чтения и отправки сообщений в CarPlay через Siri. Для приложений вызова VoIP используйте CallKit с намерениями SiriKits VoIP Calling, чтобы совершать и отвечать на аудиовызовы в системе CarPlay.