Android Studio工程導入及坑的解決
由於工作原因,需要將工程傳遞給一些新人小朋友,交互過程中,發現有幾個典型的問題值得記錄分享一下,以資來者。
Androdi Studio 導入工程步驟
AS導入工程常用的有兩種途徑一種是通過本地工程導入,還有一種是從遠端的版本管理倉拉取工程。
本地工程導入
本地工程導入比較簡單,點擊菜單File
,然後找到Open...
點擊,便可以得到下圖。
在目錄欄目輸入你本地工程所在地址,便可以看到你的本地工程名,而且還是一個Android機器人的圖標,選中後點擊OK
即可完成本地工程導入。
需要說明的是,這種導入方式的前提是本地工程也是有Android Studio IDE 開發的,如果不是的話,需要使用File
–New
–Import project...
進行導入。
新版的AS會幫你自動替換一些本地SDK的路徑什麼的,基本上一路點Yes就可以瞭。
遠端庫導入
遠端庫拉取工程的方法也不復雜,隻是在導入前我們要進行一下用戶配置。
首先通過File
–Settings
進入IDE設置頁找到Version Control
裡的對應倉平臺,我由於沒有科學上網,所以選擇瞭Gitee平臺,如果’Settings’中沒有這個選項,從上面Plugins裡面下一個插件即可。
通過小加號增加自己在該平臺的用戶,然後就可以直接從該平臺拉取代碼瞭。
然後,通過File
–New
–Project from Version Control...
單擊導入,如下圖。
將我們需要的需要的遠程倉地址填入URL中(如:[email protected]:kiba03/DeveloperLab.git),再點擊Clone按鈕即可完成導入。
檢查點&修改方案
local.properties
導入瞭新的工程到AS中後,新版的IDE會自動幫你替換相關的SDK地址等。保險起見,還是檢查一下為好。
local.properites
是工程的本地配置文件,一般會存有SDK的地址,其他的本地配置建議另建一個目錄比較好。所以,外部導入的新工程可能這個地方還會是之前的設備的SDK地址,這塊首先要改成自己的,如果不知道的話,本地新建一個工程,同樣目錄下找到local.properties復制過來即可。
## This file must *NOT* be checked into Version Control Systems, # as it contains information specific to your local configuration. # # Location of the SDK. This is only used by Gradle. # For customization when using a Version Control System, please read the # header note. #Mon Aug 30 23:04:19 CST 2021 sdk.dir=C\:\\Users\\kiba\\AppData\\Local\\Android\\Sdk
Gradle版本
gradle是一個類似maven的打包框架,對於Android初學者而言比較頭疼,經常是被gradle版本對不上而導致工程導入失敗。作為菜鳥,一口氣解決gradle報出的所有疑難雜癥,顯然是不現實的,但起碼要學會查看項目的gradle版本。
右鍵單擊項目根目錄,菜單中選擇Open Module Settings
在Project欄目先我們可以看到,當前工程的gradle插件版本為4.1.1,gradle版本為6.5。
新導入的工程無法編譯九成就是工程gradle版本不支持導致的。如果科學上網的話,可以通過ide自動幫你從官網下載,如果沒有,則極有可能下載超時。這個時候就是通過這個版本號到百度查找對應的下載包,然後修改gradle-wrapper.properties
中的distributionUrl
字段為本地目錄
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip
Android版本
當導入成功瞭工程,並能啟動編譯並且安裝到測試機瞭。你的導入工作基本上完成瞭90%,下面跑一下基本功能吧。有時候最後一步也無法順利完成,APP在啟動中crash瞭。。。
這個時候用logcat查看崩潰日志是最直接的方法。除瞭這個外,還可以考慮查看一下當前測試機Android版本和工程的Android版本是否匹配,有些時候Android版本的不匹配會導致接口調用失敗,從而導致APP crash。
打開AndroidManifest.xml
文件,可以看到類似下列代碼。
android { compileSdkVersion 30 buildToolsVersion "30.0.3" defaultConfig { applicationId "com.example.developerlab" minSdkVersion 28 targetSdkVersion 30 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" }
其中‘compileSdkVersion’表示編譯Android SDK版本,minSdkVersion
表示APP運行要求的手機最低安卓版本,targetSdkVersion
表示目標手機Android版本。一般情況下,要想APP能夠流暢的在手機上運行,手機Android版本一定要大於等於Android版本。
Android 10的版本號為29,Android 11為30,其他的版本號可以查閱Google官網
如果發現當前測設備Android版本低於工程需要,別糾結瞭立刻換測試機,因為即使你通過修改代碼解決瞭一個api兼容問題,後面還可能有無數個api兼容問題等著你呢。盡可能避免這種勸退事件的發生。
到此這篇關於Android Studio工程導入及坑的解決的文章就介紹到這瞭,更多相關Android Studio工程導入內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Mac Android Studio安裝圖文教程
- Android Gradle模塊依賴替換使用技巧
- Android Studio 2020新版本卡在Gradle downloading/sync failed/下載緩慢/下載超時的問題
- 使用Composing builds提升Android編譯速度
- 關於android studio通過命令行運行gradle編譯命令的問題