Android应用程序篇

来源:互联网 发布:淘宝上便宜的零食店 编辑:程序博客网 时间:2024/06/05 09:30

======Git
1)Ubuntu 系统:sudo apt-get install git-core
2)git config --global user.name "姓名"     git config --global user.email "邮箱"
3).gitignore文件的内容将指定的文件或目录排除在版本控制之外


======Android应用程序
1.src ---java代码目录
2.gen ---内容自动生成  R.java文件,在项目中添加的任何资源都会在其中生成相应的资源id
3.bin ---编译好的安装包目录
4.libs ---第三方Jar包目录
5.res ---项目图片、布局、字符串等资源存放目录

6.AndroidMainfest.xml ---项目的配置文件,四大组件注册文件

android里android.mk

1)Android.mk文件首先需要指定LOCAL_PATH变量,用于查找源文件;Android.mk和需要编译的源文件在同一个目录下,定义形式:LOCAL_PATH:=$(call my-dir)   ----意思是将LOCAL_PATH变量定义成本文件所在目录路径

2)Android.mk可以定义多个编译模块,每个编译模块都是以include $(CLEAR_VARS)开始,以include $(BUILD_XXX)结束;include $(CLEAR_VARS)-------CLEAR_VARS由编译系统提供,指定让GNU MAKEFILE为你清除除LOCAL_PATH以外的所有LOCAL_XXX变量

======Android基础

1.在重写父类的onCreate时,在方法前面加上@Override 系统可以帮你检查方法的正确性,而如果你不加@Override,则编译器将不会检测出错误,而是会认为你新定义了一个方法oncreate用方法setContentView(View)将自己的UI放到里面

2.requestWindowFeature(Window.FEATURE_NO_TITLE)    ---隐藏标题栏,这句代码一定要写在setContentView()之前执行
3.知晓当前是在哪一个活动
首先需要新建一个 BaseActivity 继承自Activity,然后在 BaseActivity 中重写 onCreate()方法,getClass().getSimpleName()获取了当前实例的类名,让 BaseActivity 成为项目中所有活动的父类,继承自 BaseActivity
4.随时随地退出程序
新建一个 ActivityCollector 类作为活动管理器
5.引入布局
通过一行 include 语句将标题栏布局引入进来
6.创建自定义控件
自定义控件解决重复编写代码的问题
7.dp、sp
在编写 Android 程序的时候,尽量将控件或布局的大小指定成 match_parent或 wrap_content,如果必须要指定一个固定值,则使用 dp 来作为单位,指定文字大小的时候使用 sp 作为单位,dp是密度无关像素,在不同密度的屏幕中显示比例将保持一致
8.制作 Nine-Patch 图片
Android sdk 目录下有一个 tools 文件夹,在这个文件夹中找到 draw9patch.bat 文件,使用它来制作 Nine-Patch 图片
在上边框和左边框绘制的部分就表示当图片需要拉伸时就拉伸黑点标记的区域,在下边框和右边框绘制的部分则表示内容会被放置的区域
9.数据存储
1)将数据存储到文件
2)将数据存储到 SharedPreferences
   获取SharedPreferences对象:1)Context 类中的 getSharedPreferences()方法;2)Activity 类中的getPreferences()方法;3)PreferenceManager 类中的 getDefaultSharedPreferences()方法
3)SQLite 数据库存储

   SQLiteOpenHelper 是一个抽象类,需要创建帮助类去继承它,有两个抽象方法,分别是onCreate()和onUpgrade(),还有 两 个 非 常 重 要 的 实 例 方 法         getReadableDatabase() 和getWritableDatabase()用于创建和升级数据库的

10.onPause():处理当离开你的活动时要做的事情。最重要的是,用户做的所有改变应该在这里提交

11.Activity的四种launchMode
standard模式是默认的启动模式,不用为<activity>配置android:launchMode属性即可
1)standard 不管有没有已存在的实例,都生成新的实例
2)singleTop 如果发现有对应的Activity实例正位于栈顶,则重复利用,不再生成新的实例 
3)singleTask  如果发现有对应的Activity实例,则使此Activity实例之上的其他Activity实例统统出栈,使此Activity实例成为栈顶对象,显示到幕前
4)singleInstance  启用一个新的栈结构,将Acitvity放置于这个新的栈结构中,并保证不再有其他Activity实例进入

12.LinearLayout(线性布局)
1)android:orientation属性指定排列方向 android:layout_gravity用于指定控件在布局中的对齐方式
2)LinearLayout的排列方向是horizontal时,只有垂直方向上的对齐方式才会生效,因为此时水平方向上的长度是不固定的,无法指定该方向上的对齐方式
3)android:layout_weight使用比例的方式来指定控件的大小,在手机屏幕的适配性方面起到非常重要的作用