Android studio,也簡稱AS,出了也有段時間了,很久之前就想用,但太不穩定了,就一直沒用。現在經過了很多版本的迭代(目前到2.0),雖然還是不穩定,主要體現在很多的異常情況,網上搜索到的資料又少之又少。但畢竟是谷歌親兒子,github網站上的開源項目又大多是用AS來寫的,說明開發者轉戰AS的步伐還是很快的。所以決定每天學習一點AS,並把遇上的問題與解決方式記錄一下。
1.please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to "a8faa180fc282060c9b8ec88f9bdcc9072121284"
解決:找到你項目中的build.gradle(Project:xxxx)的文件中,將下面路徑改一下
classpath 'com.android.tools.build:gradle:2.0.0-alpha1'
改爲:
classpath 'com.android.tools.build:gradle:1.3.0'
2.Could not identify launch activity: Default Activity not foundClient not ready yet
這是由於你新建項目時候沒有選擇建一個默認的Activity
解決:
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
3.Error:Could not open initscript class cache for initialization script 'C:\Users\Avishek\AppData\Local\Temp\asLocalRepo14.gradle' (C:\Users\Avishek.gradle\caches
\2.2.1\scripts\asLocalRepo14_dkwbdtenxxgt2q2wfe57wj30b\InitScript\initscript). java.io.FileNotFoundException
解決:
直接刪除路徑下的script文件夾,或者括號裏面的路徑中的script文件夾,這裏要注意的是你報的路徑跟我的路徑可能是不一樣的。但要刪除的文件夾是一樣的,你的路徑會在你AS裏面顯示的。
4.如何導入jar包
方式:
同樣跟Eclipse中放到lib目錄下,右鍵jar,點擊”add as Library..“
注意:這裏跟eclipse中不太一樣的地方除了這個點擊的名字之外,這個點擊的條目在你添加完之後就不會再出現了。eclipse中是會一直出現的。
5.使用GsonFormat快速實現JavaBean
同借鑑一下這篇文章:http://blog.csdn.net/dakaring/article/details/46300963點擊打開鏈接
6.如何給JavaBean賦值
這需要借用一個第三方的jar包 gson-2.2.4.jar,網上搜一下載就好了,然後參考第4點引入jar包。然後在代碼裏面操作
result:從服務器返回的json格式的字符串數據,就是在執行第5點時候丟進去變成實體類的json數據
Gson gson = new Gson(); TestBean fromJson = gson.fromJson(result, TestBean.class);代碼執行之後就拿到了有數據的實體Bean了
7.Android
studio中新建模擬器遇到的問題:
這個問題的意思是這樣的,當你的環境變量裏面沒有配置ANDROID_SDK_HOME路徑的時候,他就去HOME路徑下找一個 .ini的文件。當然是找不到啦。所以:
1.先找到你的.android\avd目錄,看看有沒有一個叫 Galaxy_Nexus_API_22.ini 的文件,一搬在建模擬器時候沒有這文件他就幫你自動下載,沒有的話就去sdk manager裏面找找,先下載完之後。
2.打開你的環境變量,新建一個叫做“ANDROID_SDK_HOME”,內容爲D:\.android\avd
注意:這裏D:\.android\avd 是我電腦上那個ini文件的路徑,你的應該跟我不一樣。自行修改。然後重啓工具就好。
上面問題解決之後,又遇到下面這問題,真是走了一波未平一波又起,這個的意思是你想要實現硬件加速,需要下載一個插件,可以去SDK manager裏面的Extras下載Intel x86 Emulator Accelerator(HAXM install),不過由於被牆的原因,好多人看不到這個,所以直接貼上插件的官網,直接下載安裝就可以了:
https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager-end-user-license-agreement (這是window版的 蘋果版在官網自己找吧。)
8.新建項目時候,出現的異常:
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
>
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_71\bin\java.exe'' finished with non-zero exit value 2
如圖所示:
首先,上面有一大串黃色的是警告,不用理它。注意看,叫我們去看控制檯,那麼,就打開控制檯看看:
這裏提到一個異常:com.android.dex.DexException
百度搜了一下,大概意思是引入jar包衝突,那麼我們的gradle引入了什麼呢?
這裏就要注意了,因爲這是我工程下的引入的包,你的可能跟我不一樣,他說衝突了,我這裏就第一句了compile fileTree(dir: 'libs', include: ['*.jar'])
這句話的意思是,我把libs目錄下的所有jar包都給引入,由於我的新建項目之後,放了很多其他的jar包,所以衝突是很正常的,解決的方法是:
將compile改成provided,就ok了。大概意思是不重複編譯,用提供給你的那個。
注意,你可能並不是這個目錄下跟我重複,也可能是下面的幾個包重複,可以用同樣的方法。還有一種方法就是,直接把其中一個刪了,不引入了。
9.使用插件LayoutCreator自動生成findViewById
注意 需jdk1.8
參考這鏈接:http://www.jianshu.com/p/3993aac140c5
10.Error:(1, 0) Your project path contains non-ASCII characters. This will most likely cause the build
你的項目路徑存在中文名稱,改一下就好了
打個廣告,本人開始做微信公衆號運營,願意支持的就掃碼關注一下,O(∩_∩)O謝謝,主要做電影解說這一塊,每個程序員都想跳出寫代碼的坑,希望多多支持