Android Studio從2.2.3升級到3.0.1遇到的問題

昨天開會時,領導突然冒出一句“項目停止開發”,做了近一年的項目就這樣草草結束。離過年還有一個多月呢,就沒什麼事了。左右無事,就來升級下AS。(補充於2018-01-15:剛纔又看到的博客https://www.jianshu.com/p/15afb8234d19)

開發階段AS使用的版本是2.2.3的,升級使忘了使用AS的Help-->Check for update來直接升級,就將AS先卸載了,然後到AS中文社區下載了exe文件安裝的。吐槽自己,太Low。

結果我安裝後的版本是AS 3.0的。然後就遇到了如下問題:

1、gradle打包時,自定義apk名稱報錯:Cannot set the value of read-only property ‘outputFile’

解決辦法如下:


2、AAPT編譯報錯:Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

解決辦法:

在gradle.properties文件中關閉AAPT2編譯:android.enableAapt2=false


3、apt插件問題(Error:Cannot choose between the following configurations of project :mylibrary:)

解決辦法:

我自己項目的處理:

之前加上這個,是因爲在使用butterknife時,得到的控件會報空指針異常,升級到3.0.1後,這裏去掉,測試沒問題。


4、前面說了,我先是升級的AS 3.0的,所以在前面三個問題解決後,遇到了第四個問題:

各種百度,SO等,都說是要加什麼maven{url.......}或者google()什麼的,都沒用。最後又再次升了一次級,從Help--->Check for update裏面升級到AS 3.0.1,

OK,問題解決。原來工程下面的classpath 'com.android.tools.build:gradle:3.0.1'版本要跟AS版本一致才OK。

5、Annotation processors must be explicitly declared now:

解決辦法:


6Signature Version安卓項目打包時的兩種簽名方式:

V1(Jar Signature): 傳統通用方式。來自JDK。
V2(Full APK Signature): Android 7.0 引入的新方式。安裝更快、驗證方式更安全。不適用於舊安卓版本,且不強制。完整信息可參考

Android 7.0 開發者版本所以爲了追求更完美的發揮,應將兩個勾同時勾上。若不勾選V1,則舊安卓版本無法安裝;若不勾選V2,則對於

Android7.0設備就捨棄了更快更安全的方式。

7、打debug測試包安裝時提示:install_failed_test_only。    也就是說,只要在AndroidStudio3.0內,點擊綠三角運行Run,跑出來的apk,一定是TEST_ONLY的

希望對大家有用哈。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章