1. 程式人生 > >將專案從Eclipse轉到Android Studio

將專案從Eclipse轉到Android Studio

從Eclipse遷移:
1.從svn上拉取專案:File -> new -> other -> SVN ->從SVN檢出專案…
如果報 refused by server問題,關掉代理,重啟電腦,開啟瀏覽器能上網就好了
如果有缺少的檔案資源,新增進去

2.點選主工程,對它右鍵選擇Export並選擇Android下的Generate Gradle Build Files,選擇所有的模組,匯出

3.開啟android studio 初始介面,匯入專案

4.根據build之後的提示,修改project structure中每個模組的build tools version,要統一
這裡寫圖片描述


5.刪除每個module中的AndroidManifest.xml中的application節點下的屬性,如果uses-permission有錯誤,根據提示解決,將殼中AndroidManifest.xml中報錯的activity註釋或者刪掉。

6.由於Android Stduio對於圖片格式要求比較嚴格,從Eclipse轉過來的情況下,一般都會報圖片格式錯誤AAPT err(Facade for 1059284777): libpng error: Not a PNG file,那麼請按下面說明修改:
在APP的build.gradle下的android項中新增:
//放寬PNG圖片檢查條件
aaptOptions.cruncherEnabled = false;
aaptOptions.useNewCruncher = false;

如果還有同樣的問題,改.9.png圖片,全部改完就沒問題了

7.主工程和libary中如果有相同的jar,Eclipse中是不會報錯的,而Android Studio中則會報類重複錯誤,那麼我們將主工程中和libary中重複的jar刪除即可。

8.常見報錯:
Error: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt
解決方案:
在工程根目錄下的gradle.properties檔案裡
加入 android.enableAapt2=false 儲存(=中間沒有空格,務必注意)
再點選sync now 就可以了

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ‘:BTYXY_OA:processDebugManifest’.
相應的清單檔案有問題

刪除重複架包:檢視報錯資訊,例如說support/v4包問題,是有幾個模組用了它,可以酌情刪除,或者使用
compile ‘com.android.support:support-v4:24.1.1’,多個模組需要統一版本,不然會報錯

Android Studio報錯資訊不顯示,可以使用terminal端列印資訊
//terminal常用命令:
gradlew compileDebug –stacktrace
gradlew compileDebug –stacktrace -info
gradlew compileDebug –stacktrace -debug
如果上面的資訊還是顯示地不夠,可以通過下面的操作
具體:通過命令compileDebug獲取具體的 引數例如:compileDebugSources ,compileDebugAndroidTestJavaWithJavac 等
輸入:
gradlew compileDebugSources –stacktrace -info
gradlew compileDebugAndroidTestJavaWithJavac –stacktrace -info