Look no further than Xbox Store and how well you can run unsigned code on it.
Sure, you can buy a physical game copy, but there are two issues with that:
1. Diskless versions of consoles are becoming more commonplace, thus removing that option.
2. If you buy retail, it is still a cut to Microsoft, just a smaller one. Because you pay the same price for physical as you do for digital, except instead of the entire cut going to MSFT, a part of it goes to the retail establishment selling it.
And before someone says "well, this is a gaming console, not a phone/computing device", I will say that it has apps (youtube/streaming services/etc.), it has a web browser, and plenty other functionality not related to games.
So I am struggling to draw a hard line here as to why it is ok on Xbox, but not ok on smartphones (as long as there are commonplace alternatives available that would prevent it from being a monopoly, and Android is one such commonplace alternative).
EDIT: I stand corrected, apparently you can run unsigned code officially on new Xbox consoles, and I should have picked a better example. Thanks to people in the comments correcting me on this, as I genuinely had no idea you could run unsigned code on Xbox. Despite this, I believe my general argument still stands though, because the same situation with transaction cuts is happening with Sony's and Nintendo's consoles, except you cannot run unsigned code on those.