Разработка
Как создать приложение для подключенного автомобиля — участвуем в Porsche Next Oi Competition
Porsche Next Oi Competition — конкурс для разработчиков, который продлится до 24 апреля. На его примере мы покажем, как просто можно создать приложение, позволяющее завести двигатель автомобиля через интернет.
Автомобили нового поколения очень удобны: при помощи телефона вы можете не только открывать двери и заводить двигатель, но и, например, получать уведомления о том, что вы слишком устали, чтобы водить.
Что такое подключенные автомобили? Согласно Википедии:
Подключенный автомобиль — это автомобиль, оборудованный доступом в интернет и беспроводной локальной сетью. Это дает автомобилю возможность делиться доступом в интернет с другими устройствами внутри и снаружи транспортного средства.
Вряд ли кто-то сомневается в том, что будущее автомобилей будет подключенным и электрическим — это показывают примеры престижных брендов вроде Tesla и Porsche, которые предлагают отличные подключенные электрические автомобили Tesla Model S и Porsche Mission E.
Я немного знаю об автомобилях, но спасение жизней, создание более экологичной среды и повышение безопасности движения — это то, что мы можем получить от подключенных автомобилей.
Начало разработки приложений для автомобилей
Мы будем использовать SDK Porsche, так как в нем больше всего функций из всех, что я знаю. SDK Porsche отличается хорошим качеством, так как компания планирует стандартизировать API между всеми подключенными автомобилями.

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

Давайте создадим проект. Нам будет нужно:
- Проект (мы соединим приложение с проектом)
- Приложение (в проекте их может быть несколько)
- Транспортное средство (мы соединим его с приложением)
Логика наших действий будет такой:
Транспортное средство → Приложение → Проект

После создания проекта мы видим панель управления:

Теперь создадим транспортное средство:

![]()
Интерфейс выглядит очень интуитивным. Теперь нам осталось только создать приложение.

Мы можем использовать API, чтобы создать приложение для Android, iOS или для веба. Мы остановимся на старом добром вебе.
![]()
Не забудьте связать приложение и автомобиль.
Теперь запустим эмулятор.
![]()
Взаимодействие с API эмулятора
Возьмем этот репозиторий в качестве шаблона и откроем его в любимом редакторе. Убедитесь, что у вас установлен Node +8.4.
| git clone git@github.com:highmobility/hm-node-scaffold.git && hm-node-scaffold && yarn install |

Откроем src/app.js и увидим полезный комментарий.

Мы сделали все это, нам нужно только предоставить полномочия. Они находятся в develop → project → client certificate
![]()
Теперь нам нужен токен доступа. Да, пока разработка находится в альфа-фазе и требует много ручной работы. В будущем вам, возможно, надо будет только запустить команду вроде yarn run unpack connectedcar-kit.
![]()
Заведем наш двигатель, запустив yarn run start.
![]()
Вот и всё! Если вам интересно узнать больше об этом, вы можете почитать документацию.
