Updated from 0.12.0 to 0.13.0 version and changed only minimal code:
` @Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.Theme_AppCompat_NoActionBar);
setContentView(R.layout.activity_navigation);
Mapbox.getInstance(this, getString(R.string.mapbox_api_key));
mNavigationView = findViewById(R.id.navigationView);
mNavigationView.onCreate(savedInstanceState);
mNavigationView.initialize(this);
}`
Logcat:
05-23 16:58:56.975 28618-28618/com.app.dev E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.app.dev, PID: 28618
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.dev/com.app.navigator.DirectionsNavigator}: android.view.InflateException: Binary XML file line #8: Binary XML file line #8: Error inflating class com.mapbox.services.android.navigation.ui.v5.NavigationView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3255)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3351)
at android.app.ActivityThread.access$1100(ActivityThread.java:222)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1796)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7230)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by: android.view.InflateException: Binary XML file line #8: Binary XML file line #8: Error inflating class com.mapbox.services.android.navigation.ui.v5.NavigationView
at android.view.LayoutInflater.inflate(LayoutInflater.java:551)
at android.view.LayoutInflater.inflate(LayoutInflater.java:429)
at android.view.LayoutInflater.inflate(LayoutInflater.java:380)
at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139)
at com.app.navigator.DirectionsNavigator.onCreate(DirectionsNavigator.java:32)
at android.app.Activity.performCreate(Activity.java:6877)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3208)
*Android API: 23
*Mapbox Navigation SDK version: 0.13.0
Hey @franshua, it looks like from your code snippet you are setting your access token after inflating the NavigationView. Because the NavigationView uses a MapView and initializes it behind the scenes, this needs to be set before setContentView
I reproduced the same scenario and saw this at the end of my stacktrace:
Using MapView requires setting a valid access token. Use Mapbox.getInstance(Context context, String accessToken) to provide one.
Please see https://www.mapbox.com/help/create-api-access-token/ to learn how to create one.
More information in this guide https://www.mapbox.com/help/first-steps-android-sdk/#access-tokens.
at com.mapbox.mapboxsdk.Mapbox.validateMapbox(Mapbox.java:77)
at com.mapbox.mapboxsdk.Mapbox.getAccessToken(Mapbox.java:67)
at com.mapbox.services.android.navigation.ui.v5.NavigationViewModel.<init>(NavigationViewModel.java:76)
Thanks for checking out the SDK!
I have same problem and not solved by your point