Android Intro

这是一个简单的 Android 开发入门介绍。

IDE

Android Studio (Eclipse)
我们这里使用 Android Studio.

所需工具

Android Studio
SDK

  • Software Development Kit
  • need use VPN

Android Virtual Device

  • optional
  • created with SDK

Gradle

  • auto download

基本框架

Gradle Script

build.gradle (Module:app)

此处保存主要的 app 支持的 Android 版本号。
compileSdkVersion 指编译所用的 SDK 版本,一般要求高于 targetSdkVersion
minSdkVersion 指支持的最小 SDK 版本
targetSdkVersion 指目标SDK版本,即能保证支持的最高版本

build.gradle (Project:ProjectName)

classpath 表示使用的 gradle 版本,保存后自动下载,保持网络♂畅通。

local.properties

sdk.dir 表示 SDK 的路径

app

以 Gradle 2.1.0 为例:

manifests

程序的各种声明

  • 声明程序包名
1
2
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.companyName.packageName">
  • 申请权限

    1
    2
    3
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.READ_PROFILE" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
  • Application 基本信息

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar">

    ...

    </application>
  • 声明 Activity 和 Service
    放在 application 中:

    1
    2
    3
    4
    5
    <activity android:name="PackageName.ActivityName" />

    <service
    android:name="PackageName.ServiceName"
    android:enabled="true" />

java

四大(五大)基本组件:

  • Activity
  • Service
  • (Intend)
  • Content Provider
  • Broadcast Receiver

App的程序,即逻辑代码,被放在不同的包中(类似 C# 中的 namespace )

所有的 Activity 均继承于 Activity 类,所有的 Service 均继承于 Service 类。

事件驱动,通过 On动作 方法处理事件。

不同的 Activity 和 Service 之间通过 Intend 去连接。

Activity 使用 setContentView 获取 res 中对应的界面文件来设置界面。

使用 R 来获取 res 中的具体值。

res

存放所有资源文件

  • drawable 图片的布局文件
  • layout 界面的布局文件
  • menu 菜单界面的布局文件
  • mipmap 图片资源文件
  • values 各种资源字符串等(通过 R 访问获取)