The problem with cross-development tools is that the people using them tend to focus on the app working on all the supported platforms, making it effectively using the lowest common denominator. If Apple releases a new API not available in the cross-platform tool, cross-developers are far more likely to ignore it than developers targeting Apple's platform specifically.
I would agree with you that Apple's been doing the same lock-in with Mac OS for a long time, but I'm not so sure they've been on the losing end of anything. I remember that when Jobs came back to Apple, they had free WWDC videos online, and attendance was very much in decline. Since he came back, they removed the Java bridge stuff, Carbon and at the same time they're charging good money for a WWDC that tends to sell out really quickly. Lock-in on the Apple way seems to me to be a fairly successful strategy.
I would agree with you that Apple's been doing the same lock-in with Mac OS for a long time, but I'm not so sure they've been on the losing end of anything. I remember that when Jobs came back to Apple, they had free WWDC videos online, and attendance was very much in decline. Since he came back, they removed the Java bridge stuff, Carbon and at the same time they're charging good money for a WWDC that tends to sell out really quickly. Lock-in on the Apple way seems to me to be a fairly successful strategy.