Discuz! Board

标题: 一个应用程序是如何运行,和操作系统如何接口的? [打印本页]

作者: zangcf    时间: 2016-8-13 11:44
标题: 一个应用程序是如何运行,和操作系统如何接口的?
本帖最后由 zangcf 于 2016-8-13 11:53 编辑

首先要明白的就是,一个应用程序对于一个虚拟机(不管是ART还是dalvik),第二一个应用程序就是运行在虚拟机上面的java应用代码。
首先,android的framework会提供一些基础的java api和android的api
第二,android的framework提供资源,android资源就理解成布局,图标,字符串等,采用更合理的方法进行组织。
第三,系统提供了jni调用,其实这是java的feature,本来是给系统一些性能上的优化,但是这就成了系统不兼容的一个重要方面。
第四,除了jni之外,还提供了系统服务和native服务部分调用,这个也是不兼容的根源所在(jni启用binder支持支持很小很小的作用,所以把这里单列出来的)。
第五,除了标准的framework的java库之外,还可以添加自己定义的库





作者: zangcf    时间: 2016-8-13 12:39
标题: android的应用软件开发模式
1,使用Android Studio或者Eclipse集成开发系统开发
     独立
     引用系统隐藏和其他内置jar库不方便
2,在AOSP里面的/packages/apps下开发
     方便,可以随意引用系统隐藏库和jar包
3,在system/framework/base/packages下面开发
     太完全了






欢迎光临 Discuz! Board (http://47.89.242.157:9000/bbs/discuz/) Powered by Discuz! X3.2