【JK团队|MIUI移植第一课】搭建开发环境

第一章搭建开发环境
“工欲善其事,必先利其器”。在开始定制MIUIROM之前,我们需要搭建好必要的开发环境。

本教程的主旨是如何基于原厂ROM修改。我们所涉及的修改理论上说是不需要源码的,对源码开发感兴趣的可以参照http://source.android.com。对于ROM开发者来说,我们建议你下载一份google发布的android源代码,这不是必需的,但是对于理解排查ROM适配中的一些错误有很大帮助。

1.操作系统
定制MIUIROM所涉及的技术本身对操作系统没有特殊要求,Windows,Linux和Mac系统都可以。但是patchrom项目是基于Linux开发的,确切的说,是基于Ubuntu开发的,我们推荐使用Ubuntu10以上的版本。

2.安装AndroidSDK
本节简要介绍如何在Ubuntu系统上安装AndroidSDK。Windows和Mac用户请参照http://developer.android.com/sdk/installing.html

2.1安装JDK
首先需要安装Java开发工具包,本文中统一约定$表示Terminal中的命令提示符,其后的文字表示输入的命令。

$sudoadd-apt-repository”deblucidpartner”$sudoapt-getupdate
$sudoapt-getinstallsun-java6-jdk

2.2下载AndroidSDK包
从以下地址下载AndroidSDK包http://dl.google.com/android/android-sdk_r16-linux.tgz,解压到你的home目录下,假定解压后的目录为/home/patcher/android-sdk-linux。接下来编辑home目录下的.bashrc文件,修改PATH环境变量:
exportPATH=~/android-sdk-linux/platform-tools:~/android-sdk-linux/tools:$PATH。运行命令..bashrc来使对PATH环境变量的修改生效。
$.~/.bashrc

2.3安装
运行命令android来启动AndroidSDKManager
$android
启动结果如下图所示:
选中AndroidSDKTools和AndroidSDKPlatform-tools,然后点击安装,接下来跟随应用程序的说明进行安装。这一步完成后,我们所需要的AndroidSDK也安装完毕了。注:在http://developer.android.com/sdk/installing.html网页中,大家会看到需要安装Eclipse,定制MIUIROM不需要安装Eclipse,这个是开发Android程序所需要的,但是强烈建议你有Android程序开发基础。
4adb2.2.4
AndroidSDK中对我们最重要的工具是adb(androiddebugbridge)。在移植MIUIROM过程中,最常用的命令是adblogcat,该命令会打印出详细的调试信息,帮助我们定位错误。为了验证adb是否工作,同时也是验证上述的步骤是否成功,打开手机中的系统设置,选择应用程序—开发,确保选中“USB调试”,然后用USB线连接你的手机,在UbuntuShell下运行命令adbdevices,如果显示和下面的信息类似,恭喜你,adb可以识别你的手机了。Listofdevicesattached
304D1955996BE28Edevice
注意:
(1)在Windows下,必须安装手机相应的驱动才能成功识别手机。
(2)在Ubuntu下,有可能会提示“nosuchpermissions”,这个时候有两种办法,第一种是以root的身份运行adb。
第二种办法:
a)运行lsusb命令,对于我的三星手机,输出如下:
Bus002Device001:ID1d6b:0002LinuxFoundation2.0roothub
Bus001Device098:ID04e8:685eSamsungElectronicsCo.,Ltd
。。。
找到手机对应的那一行,记录下04e8:685e,这个分别表示该设备的vendorId和productId。如果不确定手机对应的是哪一行,可以在连上手机前后运行lsusb,找到区别的那一行。

b)在/etc/udev/rules.d目录下新建一个文件99-android.rules。编辑如下:
SUBSYSTEMS==”usb”,ATTRS{idVendor}=”04e8″,ATTRS{idProduct}=”685e”,MODE=”0666″,OWNER=”登录用户名”
c)重启usb服务,sudorestartudev,重连手机。

3.patchrom项目
下面介绍patchrom的目录结构以及各目录的作用。
android:该目录下有2个子目录:system和src。其中src目录和将要介绍的miui/src目录是一对一的关系。android/src是google发布的android源码,miui/src是miui在google源码基础上所做的修改。为了节省空间,在这两个目录,我们只放miui修改过的文件,要下载完整的android源码,请参照http://source.android.com/source/downloading.html。

system目录下存放的是由google发布的android源码编译而成的三个jar包:
framework.jar,android.policy.jar和services.jar。这些jar包的作用在之后的章节会详细阐述。
build:该目录是一些与编译相关的脚本。
tools:该目录存放一些工具程序和脚本,在定制ROM和编译过程中需要使用这些程序。
miui:该目录下有2个子目录:system和src。
system目录下存放的是由miui源代码编译后的部分文件,这些文件是我们定制MIUIROM所需要用到的所有文件。之后的章节会详细阐述。

i9100:针对每一个要定制的机型,创建一个单独的目录。该目录存放的是和三星i9100相关的一些修改和文件。
之后的章节会以i9100为例详细阐述。
接下来我们开始编译生成i9100的定制MIUIROM,假定当前目录为/home/patcher/patchrom目录,
$.build/envsetup.sh
$cdi9100
$makezipfile

以上命令运行完毕后,在i9100目录下会生成一个.build子目录,该子目录下的MIUI_9100.zip文件即是我们发布的i9100刷机包。

【JK团队|MIUI移植第一课】搭建开发环境

可能对你有帮助的内容:极客币获取 | 话费充值 | 下载帮助 | 刷机必看 | 阿里云代金券

文章名称:【JK团队|MIUI移植第一课】搭建开发环境

文章链接:https://www.xtdiguo.com/7202.html

免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

(0)
打赏
番茄小子的头像番茄小子盟主
上一篇 2019年 11月 14日 20:15
下一篇 2019年 11月 14日 20:26

相关推荐

发表回复

登录后才能评论