mapbox / mapbox/mapbox-navigation-android-examples
Android Automotive App example doesn't work.
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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