And Android also runs Java. It being a full Java rather than the weird inconsistent nonsense that was J2ME is heavily due to significant compute improvements - in that sense, Android was merely ahead of the curve, and made some good architectural choices to make it perform well.
So yeah, I think the powerful personal phone revolution was inevitable. They might not look like iphones, but they would absolutely look better than Windows CE before they hit a billion users.
Plus, really. Look at Palm OS. Look at iPhones. There's not a huge UX conceptual leap there - it's much more in the premium hardware, and later in the unified app store, proving that the market for mid-high-price good devices existed (more expensive WinCE devices already had a small but consistent market. Pro/consumer-grade was inevitable). And I think there's room to argue that we'd be better off without the app store monopolies that resulted, so that could go either way (though I fully grant the massively superior user experience at the time).
Even all these years later it's still basically impossible to make a Java application that runs on mobile and desktop (it's technically possible with Gluon but I've never seen it in the wild).
At best the shift allowed you to reuse libraries .. which is not a small win, but seems like a fraction of whats possible
I'm not deep in the Java mines so maybe I've missed some big picture issues around convergence - and why it wasn't even attempted. Would be curious to hear from the gurus :)
So "full" Java brought both a significant wave of standardization, and gained access to an utterly HUGE set of libraries, tools, and developers that were mostly unavailable before.
So language-wise it's a somewhat small improvement as you are probably expecting. Android could have been another J2ME, and everything probably would've worked the same. But it greatly lowered the barriers to entry, which is basically a requirement for a large and active app ecosystem.
I think it's understandable given how under-powered the devices were - but the end was sort of inevitable
Android at the time was similarly awful. I remember talking to an android engineer at Google a few years later. I was asking him why android’s UI still sucked compared to iPhones. He said android was the only mobile operating system still standing which was invented before the iPhone. They had to essentially piece by piece reinvent the whole core OS to make it relevant after the iPhone came out. That was taking longer than they would like - because of course it was. But to their credit, they got there.
Google at the time was working in the same hardware ecosystem as Apple and they didn’t invent the iPhone. And that’s not criticism - the design of the iPhone is only obvious in hindsight. If Apple didn’t do it, who knows what our phones would look like today. Probably much worse.
The touch screen keyboard, swipe to unlock, rich fonts, full multitasking & app switching. This was all revolutionary at the time. Steve jobs was an arse. But he (and his team) pulled off a revolution with the iPhone. He deserves credit for that.
What it did have was a much bigger and better touchscreen that didn't need a stylus. (Even that wasn't really a technical innovation per se - rather it was the willingness to charge over twice as much as previous phones that made it possible).
That, and many people were glad to have plastic screens - iPhones shattering because you looked at them too enthusiastically was a source of many lols and many expensive repairs / re-purchases. The early iPhones still scratched nearly as easily (keys or sand were more than sufficient), but they were nowhere near as durable overall. Decent screen durability, screen protectors, and protective cases took years to arrive - the gorilla glass of the time was far, far more fragile than it is now.