让你的安卓开发更容易(一)——Intellij IDEA

Published on:
Tags: android idea

工欲善其事,必先利其器

孔子 ——《春秋》

介绍一下安卓开发的一些好用工具,可以让你的开发事半功倍。如果你是一个安卓新手,那么准备一套高效率的开发工具,会让你从一开始就养成使用好工具的习惯,从开始就比别人更快;如果你是一名安卓开发高手,也可以看看这些工具,说不定你已经在使用其中的一些工具了。

Intellij IDEA

虽然IntelliJ IDEA是一款收费的软件,但收费有它收费的道理,跟eclipse相比,它多了更多重构,代码错误提示,与更多工具集成的功能。IntelliJ IDEA被认为是当前Java开发效率最快的IDE工具,它集成了开发过程中实用的众多功能,几乎可以不用鼠标可以方便的完成你要做的任何事情,最大程度的加快开发的速度。简单而又功能强大。

从版本10开始,IntelliJ IDEA就集成了Android的开发功能,发展到现在版本13,不仅具备了流畅开发Android项目的能力,而且还集成了最新的构建工具Gradle,Android lint等工具。

Android Hello World

现在我们使用IntelliJ IDEA来创建一个使用Gradle构建的Android项目。

  • 首先点击创建新工程,在左边的项目类型栏中选择Android,可以看到右边有4个选项可以选,我们选择Gradle: Android Mondule,然后点击下面的Next;
  • 进入项目信息配置页面,可以看到有如下的选项,填写后点击Next;
    • Application name: 应用名
    • Module name: 模块名
    • Package name: 包名
    • Minimum required SDK: 可支持的最小Android SDK版本
    • Target SDK: 可支持的最大Android SDK版本
    • Compile with: 用哪个Android SDK版本编译
    • Theme: app主题,全黑,全白,半黑半百,是否要GridLayou,是否要action bar等
  • 选择main_activity的样式,有9种可以选择,样式的效果在右边可以预览,我们可以选择最简单的Blank Activity,选择好了Next;
  • 填写Activity名字和对应的展示层layout名字,填完Next;
  • 填写工程名和选择工程文件路径,注意最下面的Project format,有2种格式,一种是.idea文件夹,一个是ipr文件,选择ipr文件的方式可以减少很多文件的生成,最后Finish;

生成的代码如下:

MainActivity.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
activity_main.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.github.zzm.myapplication1.app.MainActivity">

<TextView
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

</RelativeLayout>

运行的效果如下:

Gradle脚本

可以看到工程目录下有2个build.gradle脚本,一个是根目录的构建文件(如下),如果想提高构建速度,可以将脚本中的mavenCentral()改为maven {url "http://maven.oschina.net/content/groups/public/"},就是将maven的国外镜像库改成国内的库。

root/build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
}
}

allprojects {
repositories {
mavenCentral()
}
}

另外一个是app目录下的构建文件,可以看到指定了sdk的最小最大版本,需要的依赖包等。

app/build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
}
}
apply plugin: 'android'

repositories {
mavenCentral()
}

android {
compileSdkVersion 20
buildToolsVersion "20.0.0"

defaultConfig {
minSdkVersion 8
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:20.0.0'
}

相关链接

赞赏

Comments