mapbox / mapbox/mapbox-navigation-android-examples

Android Automotive App example doesn't work.

Open
#186 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
65
Forks
56
Avg merge
1d 4h
Merged PRs (30d)
2

Description

Steps Taken:
- Cloned the repo.
- Added secret token to `gradle.properties`.
- Added access token to all `mapbox_access_token.xml` files.
- Build the project successfully.
- Run the module `android-automotive-app` on the emulator
Emulator details:
- Polestar 2 API 29

The app requested location permission and granted it, after that just a blank black screen, and after a few seconds getting the below error.

```logcat
---------------------------- PROCESS STARTED (17951) for package com.mapbox.navigation.examples.androidauto ----------------------------
2023-05-04 16:29:28.683 17951-17951 SensorManager com...vigation.examples.androidauto E sensor or listener is null
2023-05-04 16:29:28.693 17951-17951 SensorManager com...vigation.examples.androidauto E sensor or listener is null
2023-05-04 16:29:28.693 17951-17951 SensorManager com...vigation.examples.androidauto E sensor or listener is null
2023-05-04 16:30:30.020 17951-17951 CarApp.Act com...vigation.examples.androidauto E Connection lost
android.os.DeadObjectException
at android.os.BinderProxy.transactNative(Native Method)
at android.os.BinderProxy.transact(BinderProxy.java:511)
at androidx.car.app.activity.renderer.surface.ISurfaceControl$Stub$Proxy.onTouchEvent(ISurfaceControl.java:181)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView.lambda$handleTouchEvent$3(TemplateSurfaceView.java:319)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView$$ExternalSyntheticLambda4.invoke(Unknown Source:4)
at androidx.car.app.activity.ServiceDispatcher.lambda$dispatch$0(ServiceDispatcher.java:82)
at androidx.car.app.activity.ServiceDispatcher$$ExternalSyntheticLambda0.invoke(Unknown Source:2)
at androidx.car.app.activity.ServiceDispatcher.fetch(ServiceDispatcher.java:116)
at androidx.car.app.activity.ServiceDispatcher.dispatch(ServiceDispatcher.java:81)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView.handleTouchEvent(TemplateSurfaceView.java:318)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView.lambda$setSurfacePackage$2$androidx-car-app-activity-renderer-surface-TemplateSurfaceView(TemplateSurfaceView.java:277)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView$$ExternalSyntheticLambda2.onTouch(Unknown Source:2)
at android.view.View.dispatchTouchEvent(View.java:13949)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:465)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1849)
at android.app.Activity.dispatchTouchEvent(Activity.java:4012)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:423)
at android.view.View.dispatchPointerEvent(View.java:14212)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5652)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5455)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4958)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5011)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4977)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5117)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4985)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5174)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4958)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5011)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4977)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4985)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4958)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7675)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7644)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7605)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7800)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:188)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:174)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
2023-05-04 16:30:30.020 17951-17951 CarApp.Act com...vigation.examples.androidauto E at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
2023-05-04 16:30:30.029 17951-17951 CarApp.Act com...vigation.examples.androidauto E Remote exception (host render service)
android.os.DeadObjectException
at android.os.BinderProxy.transactNative(Native Method)
at android.os.BinderProxy.transact(BinderProxy.java:511)
at androidx.car.app.activity.renderer.surface.ISurfaceListener$Stub$Proxy.onSurfaceDestroyed(ISurfaceListener.java:219)
at androidx.car.app.activity.renderer.surface.SurfaceHolderListener.lambda$notifySurfaceDestroyed$2$androidx-car-app-activity-renderer-surface-SurfaceHolderListener(SurfaceHolderListener.java:103)
at androidx.car.app.activity.renderer.surface.SurfaceHolderListener$$ExternalSyntheticLambda1.invoke(Unknown Source:4)
at androidx.car.app.activity.ServiceDispatcher.lambda$dispatchNoFail$1(ServiceDispatcher.java:90)
at androidx.car.app.activity.ServiceDispatcher$$ExternalSyntheticLambda1.invoke(Unknown Source:2)
at androidx.car.app.activity.ServiceDispatcher.fetchNoFail(ServiceDispatcher.java:153)
at androidx.car.app.activity.ServiceDispatcher.dispatchNoFail(ServiceDispatcher.java:89)
at androidx.car.app.activity.renderer.surface.SurfaceHolderListener.notifySurfaceDestroyed(SurfaceHolderListener.java:102)
at androidx.car.app.activity.renderer.surface.SurfaceHolderListener.surfaceDestroyed(SurfaceHolderListener.java:78)
at android.view.SurfaceView.updateSurface(SurfaceView.java:861)
at android.view.SurfaceView.setVisibility(SurfaceView.java:281)
at androidx.car.app.activity.CarAppActivity.lambda$onStateChanged$2$androidx-car-app-activity-CarAppActivity(CarAppActivity.java:380)
at androidx.car.app.activity.CarAppActivity$$ExternalSyntheticLambda2.run(Unknown Source:4)
at androidx.car.app.utils.ThreadUtils.runOnMain(ThreadUtils.java:39)
at androidx.car.app.activity.CarAppActivity.onStateChanged(CarAppActivity.java:366)
at androidx.car.app.activity.CarAppActivity.$r8$lambda$A5qY-8nygDCuNYXTAVODPJaTyhk(Unknown Source:0)
at androidx.car.app.activity.CarAppActivity$$ExternalSyntheticLambda1.onChanged(Unknown Source:4)
at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:151)
at androidx.lifecycle.LiveData.setValue(LiveData.java:309)
at androidx.lifecycle.MutableLiveData.setValue(MutableLiveData.java:50)
at androidx.car.app.activity.CarAppViewModel.lambda$onError$0$androidx-car-app-activity-CarAppViewModel(CarAppViewModel.java:175)
at androidx.car.app.activity.CarAppViewModel$$ExternalSyntheticLambda1.run(Unknown Source:4)
at androidx.car.app.utils.ThreadUtils.runOnMain(ThreadUtils.java:39)
at androidx.car.app.activity.CarAppViewModel.onError(CarAppViewModel.java:167)
at androidx.car.app.activity.ServiceDispatcher.fetch(ServiceDispatcher.java:119)
at androidx.car.app.activity.ServiceDispatcher.dispatch(ServiceDispatcher.java:81)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView.handleTouchEvent(TemplateSurfaceView.java:318)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView.lambda$setSurfacePackage$2$androidx-car-app-activity-renderer-surface-TemplateSurfaceView(TemplateSurfaceView.java:277)
at androidx.car.app.activity.renderer.surface.TemplateSurfaceView$$ExternalSyntheticLambda2.onTouch(Unknown Source:2)
at android.view.View.dispatchTouchEvent(View.java:13949)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2698)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:465)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1849)
2023-05-04 16:30:30.029 17951-17951 CarApp.Act com...vigation.examples.androidauto E at android.app.Activity.dispatchTouchEvent(Activity.java:4012)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:423)
at android.view.View.dispatchPointerEvent(View.java:14212)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5652)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5455)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4958)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5011)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4977)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5117)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4985)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5174)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4958)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5011)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4977)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4985)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4958)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7675)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7644)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7605)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7800)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:188)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:174)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

```

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by running the android-automotive-app module on a Polestar 2 API 29 emulator with the reported token setup, then inspect the logcat output around the blank screen and connection loss. Done means the Android Automotive example renders and remains usable after location permission is granted without the reported failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.