Android入门(一)——结构
一、Android 架构
(此图从菜鸟扒来)
(1)应用程序层
短信、浏览器这些就是属于这一层。
(2)应用程序框架层
应用程序框架层主要提供了构建应用程序时用到的各种API。
(3)核心类库
包含系统库和Android运行时库, libc 库,用于仓库存储和应用数据共享的 SQLite 数据库,用于播放、录制音视频的库,用于网络安全的 SSL 库等。
(4)Linux 核心层
Linux内核层为设备的各种硬件提供了底层的驱动,如网络和大量的设备驱动,避免了兼容大量外围硬件接口所带来的不便。它也提供了基本的系统功能,比如进程管理,内存管理,设备管理(如摄像头,键盘,显示器)。
二 、Dalvik 虚拟机
Android 应用程序的主要开发语言是Java,因此就需要Dalvik虚拟机来运行Java程序。它的指令集基于寄存器架构,通过执行其特有的dex文件来实现对象生命周期管理、堆栈管理、线程管理、安全异常管理、垃圾回收等功能。
三、Java 编写布局
//new一个RelativeLayout对象、LayoutParams对象RelativeLayout relativeLayout = new RelativeLayout(this);RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT);//addRule参数对应RelativeLayout的XML布局属性,CENTER_IN_PARENT居中显示params.addRule(RelativeLayout.CENTER_IN_PARENT);//new一个TextView对象TextView textView = new TextView(this);textView.setText("helloworld app");textView.setTextColor(Color.RED);textView.setTextSize(18);//添加TextView对象和TextView的布局属性,addView()将两个对象添加到RelativeLayout中relativeLayout.addView(textView,params);//通过setContentView()将relativeLayout添加到Activity界面中setContentView(relativeLayout);
Android入门(一)——结构相关推荐
- Android入门(十二)SQLite事务、升级数据库
原文链接:http://www.orlion.ga/610/ 一.事务 SQLite支持事务,看一下Android如何使用事务:比如 Book表中的数据都已经很老了,现在准备全部废弃掉替换成新数据,可 ...
- 小猪的Android入门之路 day 1
小猪的Android入门之路 Day 1 Android相关背景与开发环境的搭建 ------转载请注明出处:coder-pig 本节引言: 随着社会经济的发展,移动互联网的越来越热,手机APP开发显 ...
- Android入门教程:ConstraintLayout约束布局
原文首发自掘金芦苇APP团队,转载到自己小号上再发一遍~ 翻译By Leelion6.关于 ConstraintLayout 的文章其实已经不少了,不过看到这篇文章写的很有趣,以及在翻译的过程中,感受 ...
- Android入门教程(八)
关注我,每天都有优质技术文章推送,工作,学习累了的时候放松一下自己. 本篇文章同步微信公众号 欢迎大家关注我的微信公众号:「醉翁猫咪」 今天讲讲安卓入门(八),讲讲Android的简介,如何搭建A ...
- Android入门之简易计算器(一)
Android Android入门之简易计算器(一) 文章目录 Android Android入门之简易计算器(一) @[TOC](文章目录) 前言 一.项目结构 二.界面显示 三.前端界面 1.界面 ...
- 小猪的Android入门之路 Day 8 part 3
小猪的Android入门之路 Day 8 part 3 Android网络编程浅析--Android网络数据的下载 --转载请注明出处:coder-pig 本节引言: 我们的应用很多时候都会涉及到网络 ...
- Android入门文档
该文章为网络材料整理,部分内容经过重新编写. 一. 名词介绍 JDK:Java Development Kit Java 语言的软件开发工具包 JRE:Java Runtime Environment ...
- 【Android开发】Android入门安装与使用教程——以Android Studio3.6.1为例
[Android开发]Android入门教程--以Android Studio3.6.1为例 1.为什么要学习Android 2.学习资源 3.安装Android Studio 3.1 下载安装包 3 ...
- Android入门教程(二)
Hello World 项目 首先当我们启动Android Studio的虚拟机时,可以看到第一个项目Hello World,那么虚拟机中的Hello World!是如何书写的呢? 看看虚拟机运行结果 ...
- android 入门 006(sqlite增删改查)
android 入门 006(sqlite增删改查) package cn.rfvip.feb_14_2_sqlite;import android.content.Context; import a ...
最新文章
- Spock是什么?它和JUnit,JMock有什么区别?
- Oracle 表空间 创建参数 说明
- 为何艾伦·图灵想让AI智能体故意犯错
- 19.Qt中Thread线程中创建QTcpSocket
- Redmi K30 Pro渲染图曝光:升降式前置双摄相机模组亮眼
- Understanding ES6 -- 深入理解ES6书籍
- php滑动轮播效果,js实现移动端手指滑动轮播图效果
- iOS UI-团购案例(通过xib文件自定义UITableViewCell)
- 总结(6)--- python基础知识点小结(细全)
- 即时通讯源码|IM即时通讯源码开源
- 小网站静态资源CDN加速实践记录
- Android TimePicker
- Spring依赖注入和简单demo
- jquery常用方法之siblings方法
- 基于VHDL的毛刺信号消除
- python基础 列表
- 第3章 感受(一)——3.12. Hello STL 向量篇
- 永久存储:腌制一缸美味的泡菜+习题复习
- 什么是物联网,与传感网之间,有什么区别
- 中国股民心理一——情绪决定输赢?性格影响财富?热衷追涨杀跌?