Android-androidL(android5.0)源码下载

来源:互联网 发布:古墓丽影9mac意外退出 编辑:程序博客网 时间:2024/05/27 01:36

最近一直在尝试下载安卓源码,但是,生在CN,要去Google载源码,那是一件痛苦的事情,所以,以下下载源码的方法,请各位哥们自己找个可以使用的VPN,或者其他习习qiang”的方法。

首先,下载源码需要有gitrepo环境,不懂的哥们,自个百度吧。相信度娘。一般Linux下很容易找到这两个。windows下可以使用Cygwin这个工具,大家也可以百度。

=====================我是可爱的分割线======================================

现在进入正题,源码在哪里下载呢?

Google的源码网址:https://android.googlesource.com/platform/manifest/+refs

这个网址里面有很多的连接,里面有很多的android码版本。至于要选择那个版本,自己决定吧。


这里我看中了



  • android-5.0.0_r7.0.1

这个连接。



好了,接下来下载地址是什么呢。

首先说说没有Gmail的同学

        由于没有Gmail。所以只能匿名下载,匿名下载的的话,对同一IP做了连接限制,相对来说会慢点,相对而已。

        那么下载代码的方法就是:repo init -u https://android.googlesource.com/platform/manifest -b  android-5.0.0_r7.0.1

然后说说有Gmail的同学

        竟然有Gmail,那就不用担心连接限制了。

        1、去https://android.googlesource.com/new-password,并用gmail帐号登录。

        2、登陆后就是授权之类的,有英语底子的人都能看懂。

        3、之后看到一个框框,上面有提示,就是把框框放在一个脚本,然后运行,不懂脚本是什么的孩子们,百度一下linuxsh脚本是个啥吧。

        4、之后运行脚本后,可以惊喜发现,在你电脑的个人Home录下,生成了.gitcookies,以及在.gitconfig里面配置了cookies连接在.gitcookies了。

        5、然后下载方法就是:repo init -u https://android.googlesource.com/a/platform/manifest -b  android-5.0.0_r7.0.1

        6、和上面的地址区别就是简单的多了一个 /a

这个仅仅是repo init。正在痛苦的值后面要执行的。


之后把下面的脚本封装一下,然后运行。

repo sync  -j16
while [ $? = 1 ]; do  
        echo “======sync failed, re-sync again======”  
        sleep 3  
        repo sync  -j16
done  

第一句的意识是,用16线程来同步下载代码,为了快一点,如果你电脑够牛,你可以改成32个之类的。

之后的代码就是为了防止中断而让它继续同步而已。

这个同步过程大概就。。。。。。无数个夜。。。反正我同步了48时。vpn给力啊。

============================我是可爱的分割线=========================================

同步完之后,就是代码的编译和运行了。

首先,编译需要一大堆杂七杂八的环境,具体百度 android码编译环境都有一大堆教程了。

这里只是想说,android5.0需要的java环境是1.7版本,经过我试验,openjdkjdk都可以,没关系。1.8版本不可以哦。

还有如果是mac ox编译的话,需要xcode里面

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk

这个文件,哥们可以去xcode5版本找。xcode6是木有的。

终端执行java -version判断确实是1.7版本了

之后执行  

. build/envsetup.sh

lunch

车默认即可。我也不知道lunch里面各个版本的区别,看英文可以了解大概,但是具体就不清楚了。大伙们可以百度一下。


然后make -j8编译。

编译时间不一,8是指八个线程。电脑够牛的人可以用16。一般以电脑核数的两倍为宜。

之后如果有报错的话,可以看代码去解决。一般都没啥问题。一般。如果有问题,大伙们可以给我留言,我看到一定会回复,但是没看到就不一定有人回复啦,因为没看到嘛~~~~~~~~~

编译结束后,就会看到

#### make completed successfully (01:10:48 (hh:mm:ss)) ####

表示你编译用了多久,成功了。


之后执行

emulator

就可以看到你可爱的虚拟机跑起来了。


大伙们就不要叫我上传到百度云啥的,在下网速,不行,上传才几个KB/S32G的代码,上传会死人的。


0 0
原创粉丝点击