Android基础知识点梳理(1)
1.1G-4G介绍 |
|
|
1G 大哥大 |
|
2G 小灵通 gsm 发短信 wap.baidu.com |
|
3G 沃 7.2M |
|
4G :LTE 100M/s |
|
5G:华为 10G/s |
2.android操作系统 |
|
|
安迪 鲁宾一开始是做数码相机的先进系统 |
|
2005 8月被谷歌收购,改造为一款智能手机的操作系统 |
|
HTC第一个T-mobile G1 首款搭载Android系统 常见的手机操作系统:塞班 黑莓 Windows phone JavaMe Kindle other 。。。 |
3.Android四层架构 Linux驱动层 函数库层 (sqlite webkit ssl freeType openGL)许多开源项目 Application FrameWork(应用框架)manager 应用层 许多应用
从上至下一层层调用。用c c++操作底层硬件
|
WebKit:游览器内核 SSL:安全相关的库 OpenGl:3D游戏相关库 FreeType:字体相关的库 |
4.jvm和dvm区别 |
一开始是用sun公司的jvm ,版权问题 |
|
JVM :.java->.class->.jar 基于普通内存(栈) |
|
Dvm Dalvik:.java->.class->.dex->.odex 基于CPU的内存(寄存器) |
5.ART(Android Runtime)模式和DALVIK模式 |
Android4.4 之后才有的模式 art(Android Runtime)模式提高手机速度,先进行预编译占用的空间打耗内存 比传统的Dalvik快 |
6.android 开发环境eclipse SDK |
Platform下面可以加上新版本 |
|
Sdkmanager :dx.bat把所有.class文件变成一个dex的文件 |
|
Aapt Android application package tools打包工具 |
|
ADB Android debug bridge |
7.SDKmanager |
管理我们的platForm下 的版本 每个版本下面 dex.bat 把所有的.class文件变成dex文件 aapt Android应用打包工具 adb Android调试桥 intel :生成CPU 主要针对pc或者笔记本 arm :生成标准 mips : |
8.模拟器创建 |
android版本对应的api级别 |
|
2.3->10 |
|
3.0-> 11 |
|
4.0->14 4.1.2-> 16 4.4->19 |
|
5.0->21 6.0->23 7.0->24 8.0->26 9.0->28 |
|
常见分辨率 |
|
320*480 480*800 1280*720 |
|
ROM :只读存储器 相当于一块电脑有小硬盘,断电数据不丢失 |
|
RAM:相当于电脑的内存条,断电就丢失数据 |
9.DDMS(调试监控) |
|
|
Screen Capture 截屏功能 |
|
File Explore (手机里的目录) mnt->sdcard data->data ->app(系统应用目录) |
|
Enulator Control (模拟器来模拟打电话等,经纬度,信号) |
10.项目目录 |
|
|
Src |
|
Gen |
|
R.java(不用动自动生成) |
|
Android 4.3 jar包 |
|
Android dependence 依赖包 |
|
assets资产目录 |
|
Bin |
|
Lib(额外的jar包) |
|
res资源文件布局文件 |
|
Manifest 四大组件都要定义 |
11.打包流程 |
|
|
|
12.adbc常见指令 |
adb路径额配置到环境变量上 D:\sdk\platform-tools |
|
adb kill-server |
|
adb start-server(手动连接) |
|
adb install XX.apk |
|
adb uninstall 包名 |
|
adb shell 进到手机终端 :可以操作指令 ls |
|
cd mnt/sdcard ls |
|
Ctrl +C 退出 |
|
adb push text.txt mnt/Ringtones(推进去) |
|
adb pull /mnt/sdcard/text.txt(拉出来) |
13.按钮点击4种 |
内部类 匿名内部类 Onclick 接口 |
14.五大布局 |
|
|
LinearLayout |
|
RelativeLayout 默认在左上角重叠 Layout_below layout_torightof… |
|
FrameLayout 层级关系,透明的一层一层显示出来(播放器) |
|
TableLayout <TableRow></TableRow>行的容器
|
|
AbsoluteLayout 绝对布局是废弃的,不适用于后期的屏幕适配 |
15.单位 |
dp(适应像素屏幕大小比例) sp px |
|
float scale = context.getResources().getDisplayMetrics().density;
|
16.Toast Util实现( 防止Toast频繁点击频繁显示) |
public static void showToast(Context context,String message){ if(toast == null){ toast = Toast.makeText(context, message, Toast.LENGTH_SHORT); toast.show() ; oneTime = System.currentTimeMillis() ; }else{ twoTime = System.currentTimeMillis() ; if(message.equals(oldMsg)){ if(twoTime - oneTime > Toast.LENGTH_SHORT){ toast.show() ; } }else{ oldMsg = message ; toast.setText(message) ; toast.show() ; } } oneTime = twoTime ; } |