聲明生命壹號(hào):http://www.cnblogs.com/smyhvae/ 文章來(lái)源:http://www.cnblogs.com/smyhvae/p/4392611.html
【系列】 Android Studio 入門(mén)級(jí)教程(一) Android Studio 入門(mén)級(jí)教程(二):新建一個(gè)屬于自己的工程并安裝Genymotion模擬器 Android Studio 入門(mén)級(jí)教程(三):gradle項(xiàng)目構(gòu)建
正文都說(shuō)了放假不休息,奏是這么任性!?。?nbsp; 【開(kāi)發(fā)環(huán)境】 物理機(jī)版本:Win7旗艦版(64位) Android Studio版本:1.1正式版
1、新建一個(gè)Project: 打開(kāi)Android Studio,新建一個(gè)Project,界面如下: 上圖中,設(shè)置好工程名和路徑之后,接下來(lái)可以一路next: 二、Android Studio使用方法; 1、修改項(xiàng)目結(jié)構(gòu)視圖: Project新建完了以后,默認(rèn)的結(jié)構(gòu)如下: 上圖可以看到,AS的目錄結(jié)構(gòu)和Eclipse中有很大區(qū)別,我們看下面的這張表格就一目了然了: 當(dāng)然了,如果想切換成和Eclipse中類(lèi)似的視圖,點(diǎn)擊左上角進(jìn)行切換視圖就行了: 切換之后,視圖如下: 上圖中,箭頭處的app其實(shí)是一個(gè)module,關(guān)于module的概念,稍后會(huì)有解釋哦。
2、工具欄的常用功能: 在AS的工具欄有幾個(gè)常用的按鈕,分別是Gradle同步、AVD Manager、SDK Manager、DDMS,如下圖所示: 解釋如下:
3、導(dǎo)入第三方j(luò)ar包: eclipse中導(dǎo)入jar包是先將jar包復(fù)制到工程文件中,然后add to build path,但是在Android studio中可不是這樣的。在Android studio中導(dǎo)入jar包的方法是:(以谷歌的gjson.jar為例) 將gson-2.3.jar文件拷貝到工程文件的libs目錄下: 導(dǎo)入之后,選中jar包,然后點(diǎn)擊下圖中箭頭處的按鈕:(synchronize:同步,可以理解為刷新) 搞定。
4、修改默認(rèn)Activity繼承AppCompatActivity: 在Android Studio 2.1中新建Activity默認(rèn)繼承AppCompatActivity,感覺(jué)這點(diǎn)十分不爽(老版本的AS不會(huì)出現(xiàn)這種情況)。找了很久,終于發(fā)現(xiàn)在Android Studio安裝目錄下有個(gè)模板文件,修改其中的參數(shù)即可。 具體操作可以參考下面這篇博文: Android Studio修改默認(rèn)Activity繼承AppCompatActivity
三、安裝genymotion模擬器: 1、Genymotion的安裝: Genymotion無(wú)疑是目前最快最好用的模擬器。官網(wǎng)下載地址:https://www./ 先注冊(cè),然后下載,安裝VirtualBox最簡(jiǎn)單的方式就是下載包含VirtualBox的Genymotion包,如下圖紅框部分所示: 下載完成后,開(kāi)始安裝。然后運(yùn)行Genymotion軟件,會(huì)提示你需要?jiǎng)?chuàng)建虛擬設(shè)備,點(diǎn)擊yes按鈕開(kāi)始創(chuàng)建虛擬設(shè)備: 使用之前注冊(cè)的賬號(hào)進(jìn)行連接: 然后選擇其中一個(gè)版本的模擬器: 當(dāng)然了,如果要在模擬器上運(yùn)行程序,還要確保模擬器加載了Android SDK: 備注:如果啟動(dòng)模擬器時(shí)出現(xiàn)下面的錯(cuò)誤: 升級(jí)電腦顯卡驅(qū)動(dòng)就行了。 這樣,我們的模擬器就建好了,并且可以啟動(dòng)起來(lái)。接下來(lái)要將模擬器和Android Studio相關(guān)聯(lián)。
2、將模擬器Genymotion和Android Studio相關(guān)聯(lián): Genymotion官網(wǎng)提示有兩種方法(如下圖所示),一種是在線(xiàn)安裝,另一種是離線(xiàn)安裝。方法已經(jīng)很清楚了,我就不截屏演示了哈。 插件安裝好之后,緊接著重啟軟件,讓新加載的插件生效。重啟軟件Android Studio后,選擇菜單欄“View--Toolbar”,讓工具欄顯示出來(lái),可以看到工具欄多了個(gè)Genymotion Device Manager的圖標(biāo): 點(diǎn)擊這個(gè)圖標(biāo),彈出如下界面: 上圖中,加載我們之前安裝好的Genymotion文件夾即可。然后再點(diǎn)擊這個(gè)圖標(biāo),彈出如下界面: 大功告成。 緊接著,在模擬器上運(yùn)行這個(gè)程序: 運(yùn)行效果如下: 上圖中,可以看到,我編譯的版本是API 19,但模擬器的版本是API 16,但是程序依然可以運(yùn)行,說(shuō)明Android Studio在版本的兼容問(wèn)題上做的很好。但是之前用IntelliJ IDEA,就必須要求編譯的版本和模擬器(真機(jī))的版本要保持一致。 四、新建一個(gè)module形式的第三方library:(引入module的概念) 再來(lái)看一下這張表: 看完圖,應(yīng)該知道m(xù)odule的概念了吧。細(xì)心的小伙伴可以發(fā)現(xiàn),application的module的有一個(gè)手機(jī)圖標(biāo): 1、新建一個(gè)module作為library:(以StickyScrollViewItems這個(gè)Library為例) 注:StickyScrollViewItems的作用是:子控件可懸停的ScrollView(當(dāng)子控件滾動(dòng)到頁(yè)面頂端的時(shí)候固定在頂部)。 在AS中,我們可以新建一個(gè)module作為library來(lái)使用,操作如下: 上圖中,在當(dāng)前的project中新建一個(gè)module,然后彈出如下界面: 上圖中,選擇module的類(lèi)型為Android Library,然后繼續(xù): 上圖中,既然這個(gè)module是一個(gè)libray,就不需要Activity了。 上圖中箭頭處的兩個(gè)module:第一個(gè)是application的module,第二個(gè)是lirary的module,可以看到,他們倆的icon圖標(biāo)長(zhǎng)得不一樣。
2、將GitHub上下載好的StickyScrollViewItems-master壓縮包中的部分文件拷貝到lirary的module中: 操作如下: (1)將StickyScrollViewItems-master\StickyScrollViewItems-master\library\res\values目錄下的attrs.xml文件拷貝到lirary的module中的values目錄下。 (2)將StickyScrollViewItems-master\StickyScrollViewItems-master\library\src\com\emilsjolander\components\StickyScrollViewItems目錄下的StickyScrollView.java文件拷貝到lirary的module中的java目錄下。 最終效果如下: 總結(jié):新建一個(gè)module形式的第三方library的通用做法是: (1)新建一個(gè)library形式的module,刪掉這個(gè)module中src/main目錄里面的所有文件(包括刪掉java、res、AndroidManifest.xml) (2)復(fù)制第三方庫(kù)的AndroidMainfest.xml、res、src文件(夾)到庫(kù)目錄的src/main目錄中 (3)將src/main目錄下的src目錄重命名(Shift+F6)為java (4)刪除庫(kù)module中的build.gradle文件(注意不要修改錯(cuò)了地方)中的dependencies和release模塊
3、將application的module依賴(lài)上library的module: 操作如下: 上圖中,右鍵選中app,選擇“Open Module Settings”,彈出如下界面: 按照上圖的步驟,在Dependencies標(biāo)簽中,添加"Module dependency",彈出如下界面: 上圖中,將StickyScrollViewItems的module導(dǎo)入一下就行。 依賴(lài)成功,于是,我們?cè)诓季治募惺强梢钥吹剿拇a提示的: 下面來(lái)測(cè)試一下。 4、測(cè)試library這個(gè)module的可用性: 將activity_main.xml修改為如下代碼: 1 <com.smyhvae.stickyscrollview.StickyScrollView 2 android:layout_width="match_parent" 3 android:layout_height="match_parent" 4 android:fadingEdge="none" 5 android:overScrollMode="never" 6 android:fillViewport="true" 7 xmlns:android="http://schemas./apk/res/android"> 8 9 <LinearLayout 10 android:layout_width="match_parent" 11 android:layout_height="wrap_content" 12 android:orientation="vertical"> 13 14 <View 15 android:layout_width="match_parent" 16 android:layout_height="200dp" 17 android:background="@color/blue"/> 18 19 <View 20 android:layout_width="match_parent" 21 android:layout_height="100dp" 22 android:background="@color/red" 23 android:tag="sticky"/> 24 25 <View 26 android:layout_width="match_parent" 27 android:layout_height="100dp" 28 android:background="@color/green"/> 29 <View 30 android:layout_width="match_parent" 31 android:layout_height="100dp" 32 android:background="@color/white"/> 33 34 <View 35 android:layout_width="match_parent" 36 android:layout_height="300dp" 37 android:background="@color/purple"/> 38 39 <View 40 android:layout_width="match_parent" 41 android:layout_height="100dp" 42 android:background="@color/yellow"/> 43 44 </LinearLayout> 45 </com.smyhvae.stickyscrollview.StickyScrollView> 上方代碼中,我們引入了StickyScrollView這個(gè)module作為library,核心代碼是第23行,我們?yōu)榧t色的View添加了android:tag="sticky"這個(gè)標(biāo)簽,于是它將具有懸停的屬性。然后直接運(yùn)行程序就行了。 這一段的整個(gè)工程文件如下:(大家可以導(dǎo)入到自己的AS中運(yùn)行看一下效果) 鏈接:http://pan.baidu.com/s/1eQ8epsY 密碼:k9i1
五、刪除某個(gè)module: 上圖中,如果我想刪掉StickyScrollView這個(gè)module,該怎么辦呢?辦法是:選中StickyScrollView這個(gè)module,并點(diǎn)擊右鍵,發(fā)現(xiàn)沒(méi)有delete選項(xiàng),沒(méi)有關(guān)系,我們選擇上圖中紅框部分的"Open module Settings"選項(xiàng),彈出如下界面: 上圖中,點(diǎn)擊箭頭處的減號(hào),就可以刪掉了。同時(shí)我們要去掉app這個(gè)module對(duì)它的依賴(lài): 然后會(huì)發(fā)現(xiàn),StickyScrollView這個(gè)module的圖標(biāo)消失了: 上圖中,現(xiàn)在右鍵它,就可以delete掉了,而且是從硬盤(pán)上直接delete掉:
六、刪除文件的小技巧:(安全刪除) 如果我們想刪掉某個(gè)文件,可以直接右鍵,然后delete,但是Android Studio有一個(gè)更人性化的體驗(yàn)。比如我想刪掉布局文件時(shí): 上圖中,點(diǎn)擊delete進(jìn)行刪除, 彈出如下界面: 上圖中,如果將紅框部分打鉤,然后點(diǎn)擊OK,軟件則會(huì)提示你,有哪些地方用到了這個(gè)文件: 上圖顯示,有一個(gè)地方用到了這個(gè)文件,點(diǎn)擊上圖中的"View usages",就可以看到詳細(xì)的情況了: 如果你執(zhí)意要?jiǎng)h除,單擊上圖中的箭頭位置即可,怎么樣?用戶(hù)體驗(yàn)還不錯(cuò)吧? 怎么?還不滿(mǎn)意???那我明天繼續(xù)戰(zhàn)斗,敬請(qǐng)期待~~~
備注: 本人的第四段中,通過(guò)新建一個(gè)module作為library,將StickyScrollViewItems這個(gè)Library引用進(jìn)來(lái)了。整個(gè)工程文件在第四段的末尾也給出了下載鏈接,其中的gradle文件代碼如下:(gradle將在下一篇文章中講到) application的build.gradle: 1 // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 3 buildscript { 4 repositories { 5 jcenter() 6 } 7 dependencies { 8 classpath 'com.android.tools.build:gradle:1.1.0' 9 10 // NOTE: Do not place your application dependencies here; they belong 11 // in the individual module build.gradle files 12 } 13 } 14 15 allprojects { 16 repositories { 17 jcenter() 18 } 19 }
app的build.gradle: 1 apply plugin: 'com.android.application' 2 3 android { 4 compileSdkVersion 19 5 buildToolsVersion "21.1.1" 6 7 defaultConfig { 8 applicationId "com.smyhvae.helloworld" 9 minSdkVersion 14 10 targetSdkVersion 19 11 versionCode 1 12 versionName "1.0" 13 } 14 buildTypes { 15 release { 16 minifyEnabled false 17 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 18 } 19 } 20 } 21 22 dependencies { 23 compile fileTree(dir: 'libs', include: ['*.jar']) 24 compile project(':stickyscrollview') 25 }
library這個(gè)module的build.gradle: 1 apply plugin: 'com.android.library' 2 3 android { 4 compileSdkVersion 19 5 buildToolsVersion "21.1.1" 6 7 defaultConfig { 8 minSdkVersion 14 9 targetSdkVersion 19 10 versionCode 1 11 versionName "1.0" 12 } 13 buildTypes { 14 release { 15 minifyEnabled false 16 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 } 18 } 19 } 20 21 dependencies { 22 compile fileTree(dir: 'libs', include: ['*.jar']) 23 } |
|
來(lái)自: WindySky > 《andriod開(kāi)發(fā)》