Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android Studio開發工具的使用

Android Studio開發工具的使用

編輯:關於Android編程

1 下載安裝AndroidStudio

下載網址:
Android Studio 中文社區:安卓官方開發工具-Android SDK/JDK/Gradle-下載/安裝/升級/教程/漢化
http://android-studio.org/
官網下載:http://tools.android.com/recent

2 基本設置

2.1 設置JDK和SDK的位置

未配置時,出現這條消息:

Error:Invalid Gradle JDK configuration found. 

展開File目錄…,進行設置:

File > Project Structure > SDK Location > {

    Android SDK Location = D:\android\sdk;
    JDK Location = D:\android\jdk\jdk1.8.0_51;
}

2.2 更新Gradle構建工具

2.2.1 在線安裝

從Gradle官網查看最新版本;
Jcenter:
https://jcenter.bintray.com/com/android/tools/build/gradle/
API:
https://docs.gradle.org/current/javadoc/org/gradle/api/package-summary.html
Download:
http://gradle.org/gradle-download/
MyApplication\gradle\wrapper\gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
修改為:
distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

2.2.2 離線安裝

如:gradle-2.4-all.zip。解壓到AndroidStudio的安裝路徑之內:

D:\Android Studio\gradle\gradle-2.4(之前可能有gradle-2.2.1等)
File > Setting > Build, Execution, Deployment > Build Tools > Gradle {

    Project-level settings: {

        false = User default gradle wrapper (recommended);
        true = Use local gradle distribution {

            Gradle home: = D:/Android Studio/gradle/gradle-2.4;
        }
    }
}

2.3 設置編碼、顯示行號、代碼完成

2.3.1設置編碼

File > Setting > 搜索“File encodings” {

    IDE Encoding = UTF-8;
    Project Encoding = UTF-8;
    Properties Files (*.properties) {

        Default encoding for properties files: = UTF-8;
    }
}

2.3.2 顯示行號

Settings -> Editor -> Appearance -> Show line numbers = true;

2.3.3 代碼完成

Edit > Genaral > Code Completion
Autopopup documentation in (ms) = 10;

http://www.xuebuyuan.com/526074.html

2.4 加速運行

2.4.1 取消android studio啟動時自動打開上次關閉的項目

Appearance & Behavior > System Setting {
    Reopen last project on  startup = false;
}

2.4.2 禁止啟動時聯網檢查

AndroidStudio自動檢查AndroidSDK的更新
在bin目錄下文件idea.properties中最後添加一行,保存重新打開軟件

\Program Files\Android\Android Studio\bin\idea.properties {
    ...
    disable.android.first.run = true;
}

2.4.3 禁止打包時聯網檢查

Android Studio打包運行時出現卡頓:

Gradle: Executing Tasks [:app:assembleDebug] 

禁止打包時聯網檢查,加速Gradle構建

Solved mine with:
File -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle {
    Offline work = true;
}

注意:設置為離線之後,出現這類錯誤:

BUILD FAILED
No cached version of com.android.tools.build:gradle:1.3.0 available for offline mode.

這時需要重新設置為在線,它會自動下載一些文件

Download https://jcenter.bintray.com/com/android/tools/build/gradle/1.3.0/gradle-1.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/lint/lint/24.3.0/lint-24.3.0.pom
...

3 Android項目的配置

3.1 項目的文件夾結構

這裡依據使用AndroidStudio新建的Android項目的目錄結構進行描述。

MyApplication\app\src\main\java // ".java"代碼路徑,例如java/com/example/myapplication/
MyApplication\app\src\main\res
MyApplication\app\src\main\res\mipmap-xxhdpi // drawable-xxhdpi
MyApplication\app\src\main\jniLibs\armeabi // 依賴的“.so”包
MyApplication\app\src\main\jniLibs\armeabi-v7a
MyApplication\app\src\main\jniLibs\x86
MyApplication\app\libs // 依賴的“.jar”包

3.2 項目配置文件

3.2.1 主要的配置文件

MyApplication\app\build.gradle // SDK版本、簽名密鑰、依賴的包等等
MyApplication\settings.gradle // 配置包含哪幾個代碼庫
MyApplication\build.gradle
MyApplication\app\proguard-rules.pro // 代碼混淆的規則的配置
MyApplication\gradle\wrapper\gradle-wrapper.properties
MyApplication\[其他……]

3.2.2 MyApplication\app\setting.gradle

項目依賴兩個app和umeng_library模塊(或稱“子項目”)

include ':app'
include ':umeng_library'

3.2.3 MyApplication\build.gradle

MyApplication項目中所有模塊(或稱“子項目”)通用的配置
從Gradle官網查看最新版本;
Jcenter:
https://jcenter.bintray.com/com/android/tools/build/gradle/

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0' // 聲明android gradle plugin的版本
    }
}

allprojects {
    repositories {
        jcenter() // 遠程倉庫JCenter
    }
}

遠程倉庫JCenter:
https://jcenter.bintray.com/

11:05:30: Executing external task 'assembleDebug'...
Download https://jcenter.bintray.com/com/android/tools/build/gradle/2.0.0/gradle-2.0.0.pom
Download https://jcenter.bintray.com/com/android/tools/build/gradle-core/2.0.0/gradle-core-2.0.0.pom
Download https://jcenter.bintray.com/com/android/tools/build/builder/2.0.0/builder-2.0.0.pom
Download https://jcenter.bintray.com/com/android/tools/lint/lint/25.0.0/lint-25.0.0.pom

3.2.4 MyApplication\app\build.gradle

apply plugin: 'com.android.application' // 表示使用 com.android.application 插件(或者module)

dependencies {

    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.2.1'
    compile project(':umeng_library')
//    compile files('libs/gson-2.3.1.jar')
}

android {

    compileSdkVersion 21 // 編譯所使用的SDK版本\sdk\platforms\android-21,或者打開SDK Manager查看已經下載的版本
    buildToolsVersion "23.0.1" // 編譯所使用的構建工具?版本\sdk\build-tools\23.0.1

    defaultConfig {

        applicationId "com.example.myapplication" // 應用的名稱
        minSdkVersion 11 // 最低支持 Android 版本
        targetSdkVersion 21
        versionCode 20
        versionName "1.0"
    }
    signingConfigs {

        mySigningConfigTwo {
        }
        myDefaultSigningConfig {

            storeFile file('E:\\android\\key\\android.keystore')
            keyAlias 'mySigningKey'
            keyPassword 'myPassword'
            storePassword 'myPassword'
        }
    }
    buildTypes {

        debug {
        }
        release { // 創建發布版本時的配置

            signingConfig signingConfigs.myDefaultSigningConfig // 使用簽名
            minifyEnabled false // 是否代碼混淆
            shrinkResources true // 收縮資源
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' // 代碼混淆的配置文件
        }
    }
    packagingOptions {

            exclude 'META-INF/LGPL2.1'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/NOTICE'
        }
    }
}

    dependencies { // 依賴的程序包
        compile fileTree(dir: 'libs', include: ['*.jar']) //    表示依賴\libs\目錄下的所有jar包
        compile 'com.android.support:appcompat-v7:22.2.1' // 依賴這個程序庫
        compile files('libs/arcgis-android-api.jar') // 依賴這個jar包
        compile project(':umeng_library') // 依賴這個程序庫
    }
}

3.2.5 MyApplication\gradle\wrapper\gradle-wrapper.properties

gradle-wrapper.properties指定版本的gradle,如果沒有緩存,gradle wrapper task執行下載。

#Sat Apr 16 10:24:07 CST 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

3.3 Maven

例如導入最新版的Volley程序庫到Android項目:
1. 從Maven Repository搜索volley,得知域名為com.mcxiaoke.volley:

http://mvnrepository.com/search?q=volley
從jcenter查詢com/mcxiaoke/volley/中可以引用的版本:
https://jcenter.bintray.com/com/mcxiaoke/volley/library-aar/1.0.1/library-aar-1.0.1.aar
添加到build.gradle:
compile 'com.android.support:appcompat-v7:22.2.1'

3.4 Gradle-自動化構建工具

Gradle 是以 Groovy 語言為基礎,面向Java應用為主,基於 DSL(領域特定語言)語法的自動化構建工具。它拋棄了基於 XML的各種繁瑣配置。
官方網站:https://docs.gradle.org/

/kf/201501/366464.html
Android Studio系列教程:
https://segmentfault.com/a/1190000002464822

4 導出安裝包

構建成功之後,生成測試包(.apk):

Gradle > Gradle projects > MyApplication > :app > Tasks > build > 雙擊`assembleDebug`;

生成正式包(.apk):

Gradle > Gradle projects > MyApplication > :app > Tasks > build > 雙擊`assembleRelease`;

安裝包路徑:

MyApplication\app\build\outputs\apk\app-debug.apk
MyApplication\app\build\outputs\apk\app-release.apk

5 AndroidStudio最常用的少量快捷鍵

建議熟記

編寫代碼

Esc:回到編輯框
Ctrl+W:選中[單詞>語句>一行>函數],按住Ctrl多點幾下W,選中的部分會按這個變化。
按n次可以達到‘復制行’的效果
Ctrl+R:替換字符串
Ctrl+Alt+L:格式化代碼
Ctrl+Q:光標所在方法的文檔
Alt+Q:顯示光標所在的方法    
Shift+F6:重構,重命名變量
Ctrl+Shift+U:英文字符的大寫小寫轉換,切換大小寫

代碼錯誤

F2:高亮錯誤或警告快速定位,修復,[多次點擊]可以在[多個錯誤的位置]之間跳動
Alt+Enter:修復錯誤,比如自動導入包、彈出修復操作列表,優化導入的包import:鼠標停在沒有用到的imort語句,會出現“Optimize imports”

查看代碼結構

 Alt+F7:查看元素(public方法、類等等)被引用的所有位置
 Ctrl+H:類的繼承層次

轉到代碼位置

Ctrl+Shift+N:打開文件,輸入文件名或者關鍵詞
Ctrl+B:轉到光標所在的方法的定義,F4是同樣的作用
Ctrl+Alt+Left:浏覽過的位置(整個開發環境內)之間跳轉,Ctrl+Alt+Right的意義類似
Ctrl+G:跳到行
Alt+Left:在浏覽位置列表中切換,和Alt+Right意義相似

查找代碼或文件

Ctrl+N:查找類
Ctrl+F:查找文件中的任意元素
Ctrl+E:最近編輯的文件列表
Ctrl+F4:關閉正在編輯的文檔

http://www.kafan.cn/edu/8452051.html

6 注釋模板

Android Studio File and Code Templates
注意:使用時把下面的名字改成你的名字

Settings > File and Code Templates > {

Class:

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end  

/** 
 * @description TODO 
 * 
 * @auhtor: myName
 * @datetime: ${YEAR}-${MONTH}-${DAY} ${HOUR}:${MINUTE} 
 */
public class ${NAME} {
}

Interface:

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end  

/** 
 * @description TODO 
 * 
 * @auhtor: myName
 * @datetime: ${YEAR}-${MONTH}-${DAY} ${HOUR}:${MINUTE} 
 */
public interface ${NAME} {
}

7 安裝插件

1.Android studio File->Settings..->Plugins–>Browse repositores..搜索GsonFormat
2.安裝插件,重啟android studio 
3.使用:復制json數據,光標停在新建的數據類中,Alt+Insert ,選擇gsonFormat可以自動生成這種數據類。

8 其他問題

Android Studio 自動生成 serialVersionUID

File > Settings > 搜索“Serialization issues” {
 true = Serializable class without 'serialVersionUID'  
}

自動生成serialVersionUID的操作方法:

Alt+Enter > 第一項 > 第二項 > Enter;

Plugin with id ‘com.android.application’ not found

Error:(1, 0) Plugin with id 'com.android.application' not found.

解決方案:
打開 [項目文件夾]\app\build.gradle 文件,在文件末尾添加:

buildscript {

    repositories {

        mavenCentral()
    }
    dependencies {

        classpath 'com.android.tools.build:gradle:1.3.0'
    }
}

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved