Android - 第一章 基本认识

Android - 第一章 基本认识

1. 分析目录

1.1 自动生成无需关心

.gradle .idea bulid build.gradle

1.2 需要了解的

  • .gitignore 该文件用来将指定的目录或者文件排除子啊版本控制之外。
  • gradle.properties 该文件是全局的gradle配置文件,在这里配置的属性将会影响到项目中所有的gradle编译脚本。
  • gradlew 和 gradlew.bat 用来子啊命令行界面执行gradle命令,gradlew在Linux或Mac系统中使用,gradlew.bat在Windows系统中使用。
  • xxxx.iml iml文件是所有IntelliJ IDEA项目都会自动生成的一个文件,用来标识这个是一个IntelliJ IDEA项目,无须修改。
  • local.properties 指定本机的Android SDK路径,如果Android SDK位置改变则需修改。
  • settings.gradle 用来指定项目中所有引入的模块。一般都是自动完成。

1.3 app目录下

  • build 编译中自动生成,无须修改。
  • libs 项目中第三方jar包的目录,自动添加到构建路径中。
  • androidTest 用来编写Android Test 测试用例,可以对项目进行一些自动化测试。
  • java 放置java 代码的地方。
  • res 资源目录,drawable 图片,layout 布局,values 字符串、样式、颜色等配置,mipmap 放应用图标。
  • AndroidMainifest.xml 整个Android项目的配置文件,四大组件需要在这注册,可以给application添加权限声明。
  • test 用来编写Unit Test 测试用例。
  • .gitignore 作用与外层的.gitignore文件类似。
  • app.iml IntelliJ IDEA项目都会自动生成的一个文件.
  • build.gradle app模块的gradle构建脚本,指定很多项目构建相关的配置。
  • proguard-rules.pro 指定项目代码的混淆规则,代码开发完成后打成安装包的保密措施。

2. 详解res中资源

例子:引用res中字符串方式:

  • 在代码中通过R.stirng.hellow_world可以获得该字符串的引用。
  • 在XML中通过@string/hello_world可以获得该字符串的引用。

例子:

<application
  android:allowBackup=“true”
  android:icon="@mipmap/ic_launcher"应用图标
  android:lablel="@striing/app_name"应用名称
  android:supportRtl=:true"

</application>

3.详解build.gradle文件

Gradle 是一个项目构建工具,使用力基于groovy的领域特定语言DSL来声明项目设置,摒弃了XML的配置。
最外层build.gradle

buildscript {
	repositories {
		jcenter()
 	}
 	dependencies {
 		classpath 'com.android.toos.build:gradle:2.2.0'
}
allprojects {
	repositories {
 		jcenter()
 	}
}

jcenter 代码托管仓库。
classpath 声明一个Gradle插件,说明使用Gradle来构建Android项目。

apply plugin: 'com.android.application'

android {
	compileSdkVersion 24
	buldToolsVersion "24.0.2"
	defaultConfig {
		applicationId "com.exanple.helloworld"
		minSdkVersion 15
		targetSdkVersion 24
		versionCode 1
		versionName "1.0"
	}
	buildType {
		release {
			minifyEnabled false
			proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
		}
	}
}

dependences {
	compile fileTree(dir: 'libs', include: ['*, jar'])
	compile 'com.android.support:appcompat-v7:24.2.1'
	testCompile 'junit: junit:4.12'
}

第一行应用一个插件:
com.android.application 表示这是一个应用程序模块,可以直接运行;
com.android.library 表示这是一个库模块,只能作为代码库依附别的应用程序模块来运行。

android闭包:配置项目构建的各种属性:
compileSdkVersion 指定项目编译版本;
buildToolsVersion 指定项目构建工具版本;

defaultConfig 闭包:项目更多细节
applicationId 指定项目包名;
minSdkVersion 指定项目最低兼容的Android系统版本;
targetSdkVersion 指定的值表示在该目标版本已经做过测试;
versionCode 指定项目的版本号;
versionName 指定项目的版本名。

buildType闭包:指定生成安装文件的相关配置;
debug 子闭包:指定生成测试版安装文件的配置(可以忽略不写);
release 子闭包:指定生成正式版安装文件的配置
minifyEnabled 指定是否对项目的代码进行混淆;
proguardFiles 指定混淆时使用的规则文件,proguard-android.txt 是Android SDK目录下的,所有项目通用的混淆规则,proguard-rules.pro 是当前项目根目录下编写的特有混淆规则。注意,通过Android Studio 直接运行项目生成的都是测试版安装文件。

dependencies 闭包:指定当前项目所有依赖关系。
三种依赖方式:

  • 本地依赖:可以对本地的jar包或目录添加依赖关系;
  • 库依赖:可以对项目中的库模块添加依赖关系;
  • 远程依赖:可以对jcenter库上的开源项目添加依赖关系。

compile fileTree 表示将libs目录下所有.jar后缀的文件都添加到项目的构建路径中;
compile 远程依赖,
com.android.support是域名部分,
appcompat -v7是组名称,区分同一公司不同的库,
24.2.1是版本号,区分同一库不同版本;
compile project(‘:helper’)依赖helper库模块;
testCompile 声明测试用例库;

4. 使用日志工具Log

4.1 五个等级

verbose
debug
info
warn
error

4.2 快捷键

logt + Tab 补全生成当前类名的一个TAG常量;
logd + Tab 补全生成debug级别打印日志,以此类推。

4.3 logcat过滤器

过滤日志

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值