I am sure they can come up with benchmarks to prove every point
My own benchmarks (which I run not too infrequently, because that's what I do
) show Java losing consistently on many simple operations. We just had a similar conversation on another forum (not sailing related, more IT oriented) and ran a few benchmarks on simple array/vector access. Java was slower by anywhere from 2x-4x. It gets worse with more complex operations. JIT certainly helps a bit, but it does not change the equation significantly.
More to the point, what is so special about Navigation applications that they cannot be made to perform adequately for the Android platform when games, video, and goggle maps are quite adequate?
A lot actually. I am not too familiar with game development but I do know a few things about video and and also have a general understanding of technology behind Google maps.
Two points here.
1) Video is relatively easy to handle because formats have been created such that decoding is very simple. Mathematical complexity is moved to encoder, and decoder essentially ends up with a lookup table (I trivialize a bit but that's the gist of it). So, decoding video is a relatively light operation that can be done by modest hardware.
Google maps are even easier - there is virtually no local calculation, it simply displays the remote data in a browser. All the hard lifting is done on the servers, and for the purposes of your device Google map is "just a picture".
2) Both Google maps (or web browser) and video players on you mobile phone are decidedly NOT built in Java. They are very much native code, on Android or iPhone. Java is what the external developers have to work with for the Android platform, because that's what Google gives them. Google itself writes native code applications, and that is true for Android or ChromeOS.
If they had to write a web browser or a video player in Java for the mobile device - I don't think you would enjoy using them too much. I could be wrong again, but I'll wait until proven so.