Dashboard buttons not working on my Android 10 tablet and iPhone 8

I acquired an Android tablet (Toscido M863-EAA) running Android 10 to use as a Home Assistant dashboard. I can install the app and open it to the default dashboard but if I press any button on the dashboard, nothing happens.

  • Oddly, if I access HA through the Chrome browser on this tablet, the same thing happens.
  • I have the same results for both app and Chrome on an iPhone 8 running iOS 16.5.1.
  • It runs fine on my iPhone 11, also running iOS 16.5.1 – both with the app and in Chrome.
  • It also runs fine through Chrome on my MacBook Air laptop running MacOS 10.15.7

What is going on??

What about other browsers?

Firefox:

  • iPhone 8: No
  • Android 10: No
  • Laptop: Yes
  • iPhone 11: yes

In other words, it does not matter whether I use Chrome, Firefox or the companion app – all work OK on the laptop and iPhone 11, and all fail in the same way on the iPhone 8 and Android 10. Seems to be OS related.

BTW they all worked when I installed them, they have subsequently broken, presumably as the result of an upgrade or change I made?

The fault, where it occurs, is that none of the buttons I defined on the home (default) page go to the specified view. Built-in popups such as person detail and weather details do work, so it is not the screen.

I wonder whether the older OSs are somehow mangling the URLs? I use the default /lovelace/0 (overview) for the home page while all the views are in a folder called /dashboard-dashboard/. Where it fails, there is no apparent change in URL (but it could be changing very quickly). Would it make any difference if I move all the views to the /lovelace/... directory?

By further experimentation I found several more unwritten (as far as I know) rules:

  1. If you put the main dashboard and the sub-views in different directories you will not see the subviews as tabs when you edit the main view
  2. The main dashboard has to be the leftmost tab, otherwise the leftmost will become the main
  3. The main dashboard and sub-views need to be in the same directory for navigation on the older operating systems to work (they seem to assume relative paths)
  4. The directory does not have to be /lovelace/... but if it is not then it is hard to stop ‘Overview’ being the default on devices that are not admin. You can only set the default on the device itself, and you cannot do that on a device with a user that does not have editing privileges.
  5. My workaround is to put a single large button on the Overview page that says ‘Press to go to the dashboard’, and use that to navigate to the real main dashboard. Of course this button has the same problem as I originally reported on old operating systems, but I found it works if you put the full path URL in the navigation field – i.e. use absolute rather than relative addressing. Apparently, the newer operating systems do relative addressing correctly, but the older ones do not.

If anybody who knows the code could tell us all what the real rules are, please do!