android一些基础知识
android应用基于JAVA, 支持SQL,由于底层是LINUX,所以支持C/C++
目前有两种编程:基于ADT的JAVA编程,基于NDK的C编程
Android编程环境需要哪些:
官方推荐用JDK+ECLIPSE+ADT+ADK(WINDOWS开发环境下)
什么是ADK,ADT:
ADK=android SDK(以后都用ADK简称)
ADT就是ECLIPSE下的开发插件
什么是NDK:
NDK是一系列工具的集合,简而言之就是用C\C++开发Android
android划分为四类核心组件类分别: Activity,Service,Broadcast Receiver ,ContentProvider,相同组件和不同组件之间的导航通过intent来完成.
Activity:
一个Activity通常是一个单独的屏幕,每个Activity都实现为一个独立的类,并且继承于Activity这个基类,
调用statActivity()方法,可以从屏幕导航到另一个屏幕, 打开Activity的条件被封装在intent中。旧的屏幕会保存在历史堆栈中。也可以从历史堆栈中删除。
Service
一个Service是一种长生命周期的,没有用户界面的程序,Activity会使用Context.startService()来启动一个Service, 从而保持在后台运行。
使用Context.bindService()方法连接到一个Service上。
BroadcastReciver
是为实现系统主播而提供的一种组件,如:提示用户手机的电量。
ContentProvider
前面说的每个程序都是共享的,这意味着数据是不能共享的,通过使用ContextProvider来实现不同组件之间数据的共享。
View
是Android中图形用户的界面的基类,提供了可视化界面的展示,图形界面展示分为三层,底层Activity,Activity上面是Window,window上面是views,view又可以分为View和ViewGroup,
view是基本控件,viewGroup是指布局控件,
Intent
是不同组件之间相互导航的纽带。封闭了不同组件之间导航查找的条件
Emulator模拟器, Android Asset Packaging Tool(AAPT)android资源打包工具, Dalvik Debug Monitor Service (ddms) dalvik调试监视服务,Android Debug Bridge(adb)Android调试桥, DX工具(.class转换成.dex文件);
命令:
android create avd -n <name> -t <targetid> [-<option><value>]
android list target
android
emulator.exe 仿真模拟器
启动模拟器:emulator -avd<avd_name>
查询当前模拟器实例数量 adb devices
adb push 从系统复制文件到设备, adb pull 从设备复制到系统 如:adb push d:\text.txt /sdcard/
shell命令: 系统的各种命令, system/bin/目录下, adb shell 进入shell
AAPT资源打包工具, aapt P -A assets -S res -M AndroidManifest.xml -F \bin\resources.ap_
DX,java语言的类文件编译成一种.dex文件, dx --dex --dump-to=d:\myadnroidpro\bin\classes.dex --core-library d:\myandroidpro\bin
mksdcard:是设备中有数据存储设备的,就能够将硬盘空间镜像为数据存储设备, mksdcard 64M d:\mysdcard.img
assets 中保存的一般是原生的文件, res 中的资源可以通过R资源类直接访问的,
引用资源文件一般的格式是: @包名:资源类/资源名称
res/admin XML动画文件
res/drawable/ 一些位图文件
res/layout/ XML布局文件
res/values/ 各种 xml资源文件 arrays.xml XML数组文件; colors.xml XML颜色文件 dimens.xml XML尺寸文件 styles.xml XML格式文件
res/xml/ 任意的XML文件
res/raw/ 直接复制到设备中的原生文件
res/menu/ xml 菜单文件
颜色值定义
通过RGB三原色和一个alpha值来定义的,开始是一个井#, #RGB #ARGB #RRGGBB #AARRGGBB
颜色资源XML文件的定义
文件格式:<resources> 根元素; <color></color>
获得颜色方法: Resources.getColor();
引用资源格式: java代码中:R.color.color_name XML文件中:@package:color/color_name
使用颜色资源:
使用字符串资源
引用格式:@string/字符串资源名称
字符串在XML文件的定义
字符串在XML中的格式<string name=""></string>
获得字符串的方法:Resources.getString()
引用字符串的格式:R.string.string_name xml:@package:string/string_value
使用尺寸资源dimen
px,in,mm,cm,pt,dp,sp
在XML中的定义 <dimen name=""></dimen>
获得尺寸资源: getResources().getDimension()
R.dimen.dimen_name xml:@package:dimen/dimen_name
使用原始XML资源
使用drawables资源
使用布局(layout)资源
使用菜单(menu) 资源
android一些基础知识的更多相关文章
- android图形基础知识
Android核心分析(23)-----Andoird GDI之基本原理及其总体框架 2010-06-13 22:49 18223人阅读 评论(18) 收藏 举报 AndroidGDI基本框架 在An ...
- Android 应用基础知识和应用组件
应用基础知识 安装到设备后,每个 Android 应用都运行在自己的安全沙箱内: Android 操作系统是一种多用户 Linux 系统,其中的每个应用都是一个不同的用户: 默认情况下,系统会为每个应 ...
- Appium+python自动化(十五)- Android 这些基础知识,你知多少???(超详解)
简介 前边具体操作和实战已经讲解和分享了很多了,但是一些android的一些基础知识,你又知道多少了,你都掌握了吗?这篇就由宏哥给小伙伴们既是一个分享,又是对前边的一次总结.为什么要对这些做一个简单的 ...
- android屏幕基础知识
首先,先来上一张图,看看android屏幕分辨率的占比情况 什么是dp,dip,dpi,sp.px ?之间的关系是什么? px:构成图像的最小单位 dp/dip:密度无关像素 以160dpi为基准 1 ...
- Android PackageManager基础知识
一.PackageManagerService启动过程 SystemServer首先启动,创建一个ServerThread线程来启动所有Android核心服务,其中PackageManagerServ ...
- Android自动化测试基础知识——MONKEY测试工具(转的)
本周开始启动手机输入法simeiji的自动化测试,同时开始接触手机浏览器自动化测试.接下来会对android自动化测试工具和方法做一个专题研究. 第一篇介绍monkey测试工具. 1 自动化测试背景 ...
- 安卓(Android)开发基础知识
.aar文件 .aar是一种压缩文件,和.jar类似,不过它可以包含资源文件,例如图片.drawable.xml资源 .jar文件 在软件领域,JAR文件(Java归档,英语:Java ARchive ...
- Android Service基础知识你知道多少?
Android四大组件-Service 多次调用startService会怎样?会执行多次onCreate吗? StopService在哪里调用?stopSelf在哪调用? 怎样使Service被ki ...
- Android的基础知识
一.adb 的简单命令 1. adb devices : 连接当前手机的设备 2.adb kill-server : 杀死当前的adbmingling 3.adb start-server : ...
随机推荐
- 【hadoop代码笔记】Hadoop作业提交中EagerTaskInitializationListener的作用
在整理FairScheduler实现的task调度逻辑时,注意到EagerTaskInitializationListener类.差不多应该是job提交相关的逻辑代码中最简单清楚的一个了. todo: ...
- Android问题-打开DelphiXE8与DelphiXE10编译空工程提示“[Exec Error] The command exited with code 1.”
问题情况:开发了半天的D2007代码,想测试一个安桌程序,发现新建空工程,提示失败. 提示如下 Exec Error] The command PATH C:\Program Files (x86)\ ...
- UVALive 7454 Parentheses (栈+模拟)
Parentheses 题目链接: http://acm.hust.edu.cn/vjudge/contest/127401#problem/A Description http://7xjob4.c ...
- POJ 1847 Tram (最短路)
Tram 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/N Description Tram network in Zagreb ...
- How to include cascading style sheets (CSS) in JSF
In JSF 2.0, you can use <h:outputStylesheet /> output a css file. For example, <h:outputSty ...
- thymeleaf中的模板布局
一.包括模板片段: 1:定义和引用片段,我们经常会想要包含在模板片段来自其他模板.常见的用途是页脚.标题.菜单…; 为了做到这一点,Thymeleaf需要我们定义包含可用的片段,我们可以通过使用th: ...
- codeforces 617BChocolate
B. Chocolate time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- SQL Server 2008 Data Types and Entity Framework 4
Because I’ve had a lot of conversations about spatial data types lately, I thought I would create a ...
- powershell里添加对git的支持
在powershell命令行里依次运行 1. (new-object Net.WebClient).DownloadString("http://psget.net/GetPsGet.ps1 ...
- getopt使用例子
getopt是linux下获取程序启动参数的函数 #include <unistd.h> int getopt(int argc, char * const argv[], ...