*** Решено благодаря ответу Бена****.
Мне нужно изменить «НАВИГАЦИЯ» на «POI» в манифесте.
Оригинальный вопрос:
Я работаю над «обновлением» майского приложения для Android, чтобы включить сервис «Android auto» для карт. Я тестировал в DHU и на реальном устройстве (автомобиле), и все работает нормально, но когда я хочу запустить «карты Google» или другое «приложение карт», этот код должен открыть его, но он не работает. Ошибки нет, но "приложение карт" не запускается.
Это код, который я использую в «элементе onclick», на основе документов https://developer.android.com/training/cars/apps#user-interaction
var myCoordinates = latitude + "," + longitude
val intent = Intent(CarContext.ACTION_NAVIGATE, Uri.parse("geo:" + myCoordinates))
carContext.startCarApp(intent)
)
Это мой "манифест" (андроид автозапчасти)
// android auto
<meta-data
android:name = "com.google.android.gms.car.application"
android:resource = "@xml/automotive_app_desc"/>
<meta-data
android:name = "androidx.car.app.minCarApiLevel"
android:value = "1"/>
<service
android:name = ".programameudisservice"
android:exported = "true">
<intent-filter>
<action android:name = "androidx.car.app.CarAppService" />
<category android:name = "androidx.car.app.category.NAVIGATION"/>
**** решение *****
</intent-filter>
</service>
// android auto
Любой специальный элемент, который является обязательным в «манифесте», чтобы правильно его открыть?
заранее спасибо
В том то и проблема, никакой ошибки не показывает, просто не открывается. Если я поставлю «неверный» uri, он покажет ошибку и сломает его, но с предыдущим он просто не открывается. Спасибо за ответ 😉
Наиболее в последнее время используемое навигационное приложение — это то, которое используется для обработки намерения CarContext.ACTION_NAVIGATE. Я сам не пробовал, но подозреваю, что если ваше приложение классифицируется как навигационное, оно получает намерение.
Спасибо за ответ. Мое приложение объявлено как «НАВИГАЦИЯ» в манифесте (точный код, который вы связали), намерение кажется «вызываемым», потому что «функция» onNewIntent (намерение: намерение) печатает журнал, если я его объявляю, но сопоставляет приложение (Google карты) не открывается.....
Похоже, тогда все работает так, как задумано. Ожидается, что навигационное приложение само будет обрабатывать навигационные намерения, а не передавать их другому приложению. Если ваше приложение не включает в себя функции навигации (например, пошаговые инструкции, карту, которую вы нарисовали сами и т. д.), вместо этого вам следует отнести его к категории приложения с достопримечательностями.
Ты спас мне жизнь!!! большое спасибо... через POI. <category android:name = "androidx.car.app.category.POI"/>. Вместо навигации работает отлично. Еще раз спасибо
Приложение отлично работает с POI, но было отклонено Google Play, потому что категория приложения не разрешена ... это не имеет для меня смысла.
Наконец-то использование категории ПАРКОВКА было принято в Google Play.
Можете ли вы также указать, с какими ошибками вы столкнулись в своем коде?