I have two similar MIDlets that return different values for Canvas.getHeight() on the Nokia 7650. In one of the MIDlets, getHeight() returns 144; in the other, it returns 164. In the MIDlet that gets 164, the content at the bottom of the Canvas is not visible, implying that 164 is not the correct value. Both MIDlets get 144 as the height when using the Nokia Series 60 MIDP emulator.
What makes the phone return different values for getHeight()? In both my MIDlets, I'm calling getHeight() in the Canvas-derived class's constructor, so it seems unlikely that the presence or absence of Commands (always added after the constructor returns) would make the difference.