0

Found similar issues to this but none of the solutions have fixed this, currently, an issue on Android when using the GoToAsync navigation I am able to navigate to a page, but when trying to use the back button this error appears (Works on iOS with no issue)

[0:] Shell: Failed to Navigate Back: System.ArgumentException: Ambiguous routes matched for: //D_FAULT_FlyoutItem49/IMPL_OpenDaysPage/OpenDaysPage/OpendaySessionsView matches found: //D_FAULT_FlyoutItem49/IMPL_OpenDaysPage/OpenDaysPage/OpendaySessionsView,//D_FAULT_FlyoutItem49/IMPL_OpenDaysPage/OpenDaysPage/OpendaySessionsView
Parameter name: uri
  at Xamarin.Forms.ShellUriHandler.GetNavigationRequest (Xamarin.Forms.Shell shell, System.Uri uri, System.Boolean enableRelativeShellRoutes, System.Boolean throwNavigationErrorAsException, Xamarin.Forms.ShellNavigationParameters shellNavigationParameters) [0x000aa] in D:\a\1\s\Xamarin.Forms.Core\Shell\ShellUriHandler.cs:207 
  at Xamarin.Forms.ShellNavigationManager.GoToAsync (Xamarin.Forms.ShellNavigationParameters shellNavigationParameters) [0x000b8] in D:\a\1\s\Xamarin.Forms.Core\Shell\ShellNavigationManager.cs:44 
  at Xamarin.Forms.ShellSection+NavigationImpl.OnPopAsync (System.Boolean animated) [0x000e9] in D:\a\1\s\Xamarin.Forms.Core\Shell\ShellSection.cs:1061 
  at Xamarin.Forms.Platform.Android.ShellToolbarTracker.OnNavigateBack () [0x0002a] in D:\a\1\s\Xamarin.Forms.Platform.Android\Renderers\ShellToolbarTracker.cs:210 

Page Navigation to generic map page (Back button doesn't work on this page)

        private async void ShowExibitorInfoCommandHandler(object obj)
        {
            //EntryPopup.ShowMessageBox("Visit Central Exhibition", "Don't forget to call into the Central Exhibition and speak to Academics and Students");
            // open the map here
            var loc = Startup.ServiceProvider.GetService<LocationRepository>();

            // update the Software results items if we have results or show 'No Results'
            var locRes = GetBuildingInfo(77);

            if (locRes != null)
            {
                GenericMapWithWalkTime.LocationData = locRes;               

                await Shell.Current.GoToAsync(nameof(GenericMapWithWalkTime));

            }

            PopupService.GetOkPopupLayout("Visit Central Exhibition", "Don't forget to call into the Central Exhibition and speak to Academics and Students").Show();
        }

Register Routes (Hierarchy goes OpenDays -> OpenDaysSessionView -> GenericMapWithWalkTime)

            Routing.RegisterRoute(nameof(OpenDaysPage), typeof(OpenDaysPage));
            Routing.RegisterRoute(nameof(OpendaySessionsView), typeof(OpendaySessionsView));
            Routing.RegisterRoute(nameof(GenericMapWithWalkTime), typeof(GenericMapWithWalkTime));

Similar issue to this post GotoAsync build in back button does not go back to previous page, when working with 3 or more pages

  • 1
    _Ambiguous routes matched_ means that there are multiple, in your case routes with the same name. Can you post the Screenshot of what does compiler shows you as options, when you put a cursor over the error? – aca Jul 08 '22 at 13:23
  • I can't see where the error is it is only showing up in the output, I will look into finding it, would be in the appshell file? – Ethan Copeland Jul 11 '22 at 09:59
  • Could you please post a basic demo so that we can try to reproduce this problem on our side? – Jessie Zhang -MSFT Jul 12 '22 at 10:12

0 Answers0