这几天接连爆出win10 mobile能直接运行安卓APK应用的消息,吓得我对人生都开始怀疑了。所以我决定冷静地思考一番:安卓的系统构架中有很重要的一层,就是在Linux层和C/C++驱动层之上的Dalvik VM/ART+Java core层,这一层是用来运行android java的,也就是android java运行在这一层虚拟机上(至于ART是不是虚拟机我还没搞清楚),然后虚拟机运行在Linux上。之所以说Android java而不说java,那是因为Android java并不是Oracle java,只是一个谷歌抛出的语法和Java 一致的语言,并且Android java并不是运行在JVM上的,而是运行在Dalvik VM或者ART上的,所以实际上这两个"java"并没有什么关系,但是Android java确实有一些类库和Oracle java 一模一样,比如socket之类,这也就是Oracle告谷歌抄袭侵权的原因之一。那么关键就在这个虚拟机了,安卓卡的原因不是因为java效率慢,而是因为谷歌的虚拟机慢。。。如果微软要将APK转制成appx,那就必须处理虚拟机或者运行环境的效率问题了~个人认为微软会重新写一个虚拟机,或者用什么黑科技直接翻译成本地代码,跳过虚拟机!实际上微软也不是第一次做java虚拟机了,从前有个MSJVM和J++,那就是.net和C#的前身。微软这家公司,做生意有点神经不正常,但是技术确实是很牛逼的,至于win 10 mobile是否能流畅运行安卓应用,我们拭目以待,反正我就再相信一次微软技术吧! 对了!如果上述描述有误,请多指教!