I shall try to find out how to make the app different sizes for different phones and test via an emulator as my next task is to adapt the app display to the available size as currently all my apps are for 320x480.
I had a lot of trouble wrapping my mind around the different screen sizes, pixel resolutions, and density (1 vs 1.5).
The program I'm working on has to run in landscape mode, so at least I didn't have to try to get everything to fit in portrait mode. I created layouts for 800x480x240, 800x480x160, and 480x320x160, then I put this code at the start of Activity_Create:
Dim dens As Float
dens = Density
Dim lv As LayoutValues
lv = GetDeviceLayoutValues
If lv.Width > 599 Then
LayoutWidth = 800
If dens = 1.5 Then
Activity.LoadLayout("800x480x240")
Else
Activity.LoadLayout("800x480x160")
End If
Else
LayoutWidth = 480
Activity.LoadLayout("480x320x160")
End If
I made a few other adjustments as well, but the above was the main thing. Note that if a device has a resolution higher than 800x480, the 800x480x240 layout will be used and Android will adjust it to fit the device (supposedly).
I wouldn't swear that the above approach is the best, but it seems to work and it was the best *I* could come up with.
While I'm at it, here are some common devices and their resolutions and sizes:
Galaxy Tab: 7", 1024x600
generic 10": 1024x600
Xoom: 10.1", 1280x800
Motorola Defy: 3.7", 854x480
Galaxy SGS: 4", 800x480
Archos A70: 7", 800x480.