May not be relevant or already known but. EDIT: oh wait it's not relevant, post is about trying to detect if using phone or tablet based on any values we could use.
I tend to use "set canvas size" to platforinfo.innerwidth and such. This sorta emulates the old "crop" mode.
I use it this way as I want full control over UI position and sizing, like resizing a 1080p window to fullscreen on a 1440p monitor, it keeps everything the same size, nothing scales, so feels more like a software app when you resize the window rather than automatic scaling, and allows me to set positions or use anchor behaviour very easily.
The only biggest downside for now is 9patch objects, you can scale everything manually, even tiledbg, except for 9patch objects.
I wish to support normal displays, ultra wide displays, vertical displays, and felt this was most ideal. Perhaps I could use a mix of one of the scaling options and set canvas size to take advantage of the automatic scaling.