Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1|回复: 1
打印 上一主题 下一主题

一个应用程序是如何运行,和操作系统如何接口的?

[复制链接]

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
跳转到指定楼层
楼主
发表于 2016-8-13 11:44:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 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库之外,还可以添加自己定义的库




回复

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
沙发
 楼主| 发表于 2016-8-13 12:39:06 | 只看该作者

android的应用软件开发模式

1,使用Android Studio或者Eclipse集成开发系统开发
     独立
     引用系统隐藏和其他内置jar库不方便
2,在AOSP里面的/packages/apps下开发
     方便,可以随意引用系统隐藏库和jar包
3,在system/framework/base/packages下面开发
     太完全了

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Comsenz Inc.

GMT+8, 2025-12-14 19:04 , Processed in 0.009423 second(s), 8 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表