android开发愈演愈烈,本人也想凑下热闹,首先要过的就是要搭建android开发环境这一关,本来我用eclipse挺顺的,不过参考网上的评论,感觉还是亲儿子好,所以决定切换到android studio,简称as。
其实网上有很多文章可以参考,但是自己动起手来才发现没有那么简单啊,简直是虐心啊。。。
第一步,下载
1、 jdk,到http://android-studio.org/ 去找吧,好像只有u5可以下,我下的是64位的,一定要和自己的机器位数一样,否则jdk运行不了。
2、 sdk,同上,版本为r.24.4.1
3、 as,同上,版本为3.2,win下没有位数区别
4、 gradle,对应的版本应该是4.6.0,https://services.gradle.org/distributions/ 到里边找吧,下载all版,和bin版一样,只是添加了文本说明书。
第二步,安装
安装路径中要求不要有中文,空格等字符,否则不能通过,我的用户名就是中文的 ,让我好一顿改啊,又是修改注册表,又是启用管理员,折腾了半天。所以我干脆不使用默认的了。在e盘根目录下新建文件夹andoid,当然可以是任意英文名称。我计划把所有东西都安装到这里。所以在这个文件夹下又新建了6个文件夹as、gradle、jdk、sdk、project、jre。下面分别安装:
1、 jdk,意思就是java的编译器和运行环境,没有这个就什么都不要说了。修改路径到e:\android\jdk,中间会提示安装jre,可以不安,但是我还是安装了,路径修改为e:\android\jre。其实到最后也没有用。配置环境变量,什么,不会打开环境变量? 方法是打开控制面板\系统和安全\系统\高级系统设置,就看到了,用户变量应该是只有当前用户可以使用吗?不懂,不用管他,直接看系统变量就行了。添加JAVA_HOME(如果没有),值为 e:\android\jdk,在path中添加;%JAVA_HOME%\bin; %JAVA_HOME%\jre。这里使用的jre就是jdk自带的jre,而不是刚才选择的jre,如果想用刚才安装的jre,请将%JAVA_HOME%\jre修改为e:\android\jre。不过我没有测试。添加系统变量CLASSPATH(如果没有),值为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;据说一个标点都不能错,第一个.的含义是代表当前目录,不过我也没搞懂到底是哪个目录。有大神说是你的项目根目录,自己参考吧。
2、 sdk,就是开发套件,理论上说有了jdk就可以运行java程序,有了sdk就可以进行开发和运行android程序了——当然还需要一个编辑器——我在网上看到很多大神,通过自己配置命令行来进行开发,并且很多建议从命令行开始学习,可以了解开发的内部过程,有助于打破集成开发环境的束缚。我在powershell下搞了两天,感到受益匪浅啊,建议试试。
站在用户的角度思考问题,与客户深入沟通,找到凤阳网站设计与凤阳网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站建设、成都做网站、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖凤阳地区。
言归正传,安装路径设置为E:\android\sdk。完了之后设置系统变量,添加(如果没有)ANDROID_HOME变量,值为E:\android\sdk,在path中添加;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools。
3、 as。安装路径e:\android\as,没什么说的,几分钟就好了,打开as目录,你会发现下面居然有gradle,并且版本是4.6,我测试了一下,将GRADEL_HOME值设置为e:\android\as\gradle\gradle-4.6,在path中添加%GRADLE_HOME%\bin,在powershell下运行gradle -v,居然可以正常使用,看来新版的as还是很人性的,如果是企业用户有私有jcenter的话,直接就可以用了,但是个人用户还需要往下看。
4、gradle,我在这个地方是花了最多时间的,主要原因就在于中国 的墙太高了。外国的教程直接就选择忽略了,而国内的教程又大都语焉不详。建议大家将gradle-4.6-all.zip下载好之后,打开里面的docs\ useguide \ useguide.pdf看看,比什么都有用,不过是全英文的,使用翻译软件大概了解一下。顺便说一下,gradle不用安装,直接解压就可以用,我将其解压到E:\ANDROID\GRADLE和as自带的gradle文件比较了一下,完全一样的 。所以在系统变量中添加(如果没有)GRADLE_HOME变量,可以设置为E:\android\as\gradle\gradle-4.6,也可以设置为E:\android\gradle\gradle-4.6,效果一样的。不要忘了在path中添加%GRADLE_HOME%\bin
那为什么还要下载啊,其实主要原因是gradle wrapper。Wrapper的意思是封装,作用就是用户不用每次使用都重新下载gradle了,只需要到wrapper中找就行了。As中每次运行都需要重新下载gradle>>>all.zip文件的,但是国外的源速度很慢,所以需要使用gradle wrapper,首先在系统变量中添加GRADLE_USER_HOME(如果没有),就是wrapper使用的路径,理论上可以设置为任意文件夹,比如E:\android\gradle,不过我没有测试,我还是很保守的选择了推荐的c:\user(username).gradle,username代表你自己的用户名,可以到c盘下用户文件夹中查看根据实际情况选择。然后在project下新建一个文件夹testgradle,打开powershell运行命令cd E:\android\project\testgradle进入工程根目录,运行 gradle wrapper,等一会按ctrl+z结束就行了,因为它基本不可能运行完,原因就在于墙太高。但是会生成需要的目录。打开c:\user(username).gradle文件夹,你会发现多了很多东西,进入wrapper\dists\gradle-4.6会看到一大串字符串,再进入,会看到gradle-4.6-bin,手动运行的是bin版,而as运行生成的是all版,我在此又多花了一天的时间。删除****.part文件,这个就是需要下载的文件的片段了,还没有下完,其实不×××明年也下不完,很多工程就是卡在这里!!!!!!!将下载好的gradle-4.6.0-all.zip拷贝到这里,重命名为gradle-4.6-bin.zip,重新运行gradle wrapper,成功了。这说明两个问题,一是bin和all其实是一个东西,就是少了个文档,以后不用重复下载了,二是gradle wrapper是根据系统变量GRADLE_USER_HOME定义的文件路径进行封装。其实as与命令行下的过程是一样的,只不过是自动执行罢了,这就是我们为什么可以不使用as和为什么要使用as的原因。
题外话,gradle并不是一个不可替代的构建工具,还有很多类似的工具,如果牛逼的话也可以手动创建,类似于linux from sctrach。
第三步使用as
打开as,会提示set proxy,选择manual 在proxy中填入mirrors.neusoft.edu.cn,在sdk manage界面中 选择要使用的sdk版本,我只选择了最新的android9、api28,可以根据需要自选,或者全选也行,只不过时间会很漫长。
更新好了之后关闭as,在E:\android\as\bin目录下找到idea.properties,在最后一行添加disable.android.first.run=true ,阻止as第一次运行,set proxy就不会再跳出来了。
再次打开as,在configure中搜索proxy,选择第一个no proxy,为什么,因为这个代理是下载sdk的,而新建工程时会自动运行gradle wrapper命令,刚才设置的代理是不行的。
新建一个project,注意选择配置好的sdk版本,进入工程构建界面,等待一会然后关闭as,因为我等了两个小时也没有反应。让我苦思冥想差点放弃,其实原因很简单,就是as默认的是gradle-4.6-all.zip版本,而刚才命令行的是bin版本。解决办法,进入c:\user\(username)\.gradle\wrapper\dists,选择gradle-4.6-all,然后仍然是一串字符,将gradle-4.6-all.zip拷入,删除*****.part文件,重新打开as,终于成功了。
Run app,新建avd,终于看到了久违的模拟器了。
以上希望对你有用。