博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 的一点总结
阅读量:4540 次
发布时间:2019-06-08

本文共 1534 字,大约阅读时间需要 5 分钟。

       Android的框架从底向上可以分为linux Kernel(linux内核层)系统运行库层应用框架层应用层。其中系统运行库层包括C/C++编写的库函数和一个Android 运行时即Dalvik虚拟机,在Dalvik虚拟机上只能执行.dex的可执行文件,其中Dalvik虚拟机是基于寄存器的,而且一个应用,一个虚拟机实例,一个进程。应用框架层包含了Google发布的核心应用时所使用的API框架,开发人员可以使用这些框架来开发自己的应用。而应用层则是指开发人员自己编写的程序。

      Android的程序可以有SDK程序和NDK程序吧!或者可以分为前台程序、后台服务和widget组件,具体我也不知道怎么分。所谓的NDK程序就是利用ndk-build在Android程序中引用由C/C++代码编写的库函数。

      Android的四大组件指的是Activity、Service、Broadcast Receiver、Content Provider。Broadcast Receiver可以接收一种或若干种Intent作为触发事件,当发生这样事件的时候,系统会负责唤醒或传递消息到该Broadcast Receiver,任其处置。比如,监听来电、邮件、短信之类的,都隶属于这种模式。其模式可以归结为:启动应用 -> 监听事件 -> 发生时进行处理。Content Provider屏蔽了内部数据的存储细节,向外提供了上述统一的接口模型,这样的抽象层次,大大简化了上层应用的书写,也对数据的整合提供了更方便的途径。
      AIDL (Android Interface Definition Language) ,一种接口定义的语言,服务的RPC接口,可以用AIDL来描述。为了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于RPC的解决方案一样,Android使用一种接口定义语言(Interface Definition Language,IDL)来公开服务的接口。我们知道4个Android应用程序组件中的3个(Activity、Broadcast和Content Provider)都可以进行跨进程访问,另外一个Android应用程序组件Service同样可以。因此,可以将这种可以跨进程访问的服务称为AIDL(Android Interface Definition Language)服务。

Android SDK提供的菜单有如下几种:
     1. 选项菜单:最常规的菜单,android中把它叫做option menu
     2. 子菜单:android中点击子菜单将弹出悬浮窗口显示子菜单项。子菜单不支持嵌套,即子菜单中不能再包括其他子菜单。
     3. 上下文菜单:android中长按视图控件后出现的菜单,windows点击右键弹出的菜单即上下文菜单
     4. 图标菜单:这个比较简单,就是带icon的菜单项,需要注意的是子菜单项、上下文菜单项、扩展菜单项均无法显示图标。
     5. 选择菜单(alternative menu):用的比较少,以后单独介绍,本文先跳过(其实是我还没弄明白啦o(≧v≦)o~~)
     6. 扩展菜单:选项菜单最多只能显示6个菜单项,超过6个时,第6个菜单项会被系统替换为一个叫“更多”的子菜单,原来显示不下的菜单项都作为“更多”菜单的子菜单项。

PS:发现总是考完试的时候才真正认识到自己学的有多么水……

转载于:https://www.cnblogs.com/CloudFish/archive/2012/04/15/2450949.html

你可能感兴趣的文章
模拟器 Unable to execute simctl install Error 117
查看>>
[转贴]一个将表格变成 INSERT 的SQL 语句的存储过程(sql server)
查看>>
opencv之dft及mat类型转换
查看>>
canvas 保存bitmap到本地
查看>>
SAP 动态设置 GUI STATUS 灰色不可用 或者隐藏(转)
查看>>
王晋康 - 终极爆炸 ▪ 王晋康科幻小说精选集3(2014年4月24日)
查看>>
Elasticsearch-PHP 搜索操作
查看>>
自己动手搭建 Redis 环境,并建立一个 .NET HelloWorld 程序测试(转)
查看>>
Leetcode:Unique Paths
查看>>
uC/OS-II 函数之任务相关函数
查看>>
hdu 4704 Sum (十进制快速幂)
查看>>
【taro】-------------- Taro学习笔录(初识taro)-------------【劉】
查看>>
BZOJ 1076 & 撞鸭递推
查看>>
Java——线程,并发包(Lock、线程池)
查看>>
僵尸网络是如何控制你的电脑的?
查看>>
SubLime BracketHighlighter 配置
查看>>
发一个Android开发的外包项目。欢迎外包团队来骚扰
查看>>
MFC抓取网页代码简单版。
查看>>
条件运算符
查看>>
产生随机数
查看>>