linux下的android开发自定义rom编译源码制作_第1页
linux下的android开发自定义rom编译源码制作_第2页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

CSDN首 资 博客 搜索 您还未登录!|登录||帮助[公告 重写,将于9月正[公告 重写,将于9月正式上SDCC软件开发者大会:编团队火用开 构建自己的云——OpenStack征稿启 5折限时抢购移动开发者大会门票编译Android源码制作ROM分类:android开 2011-12-0510:061239人阅读评论(1)收:19912积分:524:第16746:24 :63译文:0 评论:6文章搜文章分formyN900(5)超频积累s60v3开发其他文章存2012年08月2012年07月2012年05月2012年03月2012年02月展阅读

ndroid源码编译后,在out/taret/prdut/enerc生成三个镜像文件radisk.i,syste.im,userata.i以及它们对应的 树root,system,data。adik.i是根文件系统,syste.im包括了主要的包、库等文件,userdatai包括了一些用户数据,android加载这3个映像文件后,会把system和usedaa分别加载到radik文件系统中的system和data 下。三个镜像文件及其三 树之间的生成关系是我们进行ROM制作的基础,下面将做详细介绍#fileramdisk.img输出#ramdisk.img:gzipcompresseddata,from为了便于说明问题 ramdisk.img拷贝到其它一 ,然后按以下步骤将ramdisk.img还原 树#mvramdisk.imgramdisk.img.gz#gunzipramdisk.img.gz#cdramdisk#cpio–i–F这样,就得到一个完整的radisk ,与out/taret/product/eneric/root对比后,我们发现它们是一样的内容。通过执行以下的操作,我们可由 树再生成radisk镜像#cd#find.|cpio-o-Hnewc|gzip>../ramdisk-new.imgsystem.img&userdata.img这两个镜像都属于yaffs2文件格式,生成方式是一样的。我们就以system.img为例来说明System.img>> 地址http #mkdirsystem#cd#unyaffs../system.img 所需工具mkyaffs2image,Android源码编译后会生成该工具,在out/host/linux- 下命令格式 #~/Code/cbin/mkyaffs2image~/Code/system~/Code/system_new.img了解以上方法的意义在于,我们可以对镜像文件镜像修改,定制,以符合自己的需求android联机调试相 编译Android源码制作RO AndroidROM的制作方android的发送全过startManagingCursor注androiddrawText[教学PCEVA超频宝典之android开机动画修改简述Android发送

网上有很多制作AndroidROM的,这里罗列一些北理工的写的两篇文章,是我目前发现的最好的,写的非常详.html.html这两篇文章参考了国外的几个经典:Android反编译资料评论AndoridLauncher程序代将androidlauncher2导入android 发送全linux环境变量相关 shape渐变!描边!圆角推荐文PHP超时处理全面总评论startManagingCursor注fedorayang:转到空间细细看kirainstorm:systemLibrary

/wki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-国内还有一篇文章写的也不错,这篇文章更侧重于制作类似Patch的ROM 这里基于自己的理解和测试,总结了一些方法步从可用的ROM起Android的ROM包通常称为update.zip包,你可以到 文这是编译内核源代码生成的内核映像,然后与nodrai.i一起通过oi工具创建出来的,图省事的朋友也可以从网上其他的刷机包里面拷贝一个能用的出来即可,基本上都差不多。META- 这 就是编译android的平台源代码生成要创建自己的ROM,我们通常会涉及到以下的一些工作如,你要做一个22ke.i。ramdisk.img的修改。ramdisk.img是根文件系统,里面包含了启动配 update-script的修改System的修改我们先做个简单的测试工作,来为后面更复杂的工作做好铺垫。测试内容为:先对zip进行解包,然后分别ramdisk和system的 下添加一个小文件,接着,生成新的ROM,并验证ROM是否可用详细的步骤可以参考 .htl要的,文及网上许多类似提到的方法都是针对TC1或exusoe的。而我在测试的时候,用的是TC3ero。以上的方法导致的一个是,重新打包后再烧录,机器无法正常启动,adbs也无法登陆。后来在国外的一篇博客上看到了对此问题的说明,问题的根源很简单,从3开,打的时候需指定“--base”参数。对于ero,参数为”--base0x ”,但对于其它型号的机器,”--base要设定为多少,需要参考内核代码的实现。 完成unpack-bootimg.pl,repack-bootimg.pl。其中打包 下。unpack-bootimg.pl可直接将boot.img生成内核镜像boot.img-kernel和ramdisk树boot.img-ramdisk。repack-bootimg.pl可将boot.img-kernel和boot.img-ramdisk重新生成boot.img。在解包后,我们在raikstem 下,各添加一个测试小件(譬如叫yst)。做完这些开始组包,重新成updat.zip。到这里我们的工作并没有完全结束,还有最后的一步——签名。签名需要用到签名工具testsin.ar,这是一个基于java1.6版本的工具。在编译ndroid源码的时候,我们强调要用java1.5。在这里,我们必须切换到16版本。切换办法见这里。将前面解包得到的boot.img-ramdisk和编译源码后out/target/product/generic/下的root 2)创建一个 ##mkdir-/删除 下的“符号”,创建update-updae-sript语可参考这里。研原update-scit,我们可以大致看出update-scrpt负责文件删除拷贝,权限设置,符号创建等工作。我们可以在原有pdat-scipt的基础上进行修改以得到我们自己的updatescrpt。这里,我们要注意的是,要保证update-sciptlink创建成功,必须把/syste/bin下的link删除我们可以一个来做这个作delsylink。我修改后与自己编译的ndroid2.2sstem 树相匹配的本重新打包并签 在试验过程中,我经常遇到如下的报Can't问题原因:当update-script中有命令操作错误, 创建一个Patch功能的很多时候,你并不需要创建一个完整的包。你需要的只是,添加删除或修改一些功能(应用,或者你想添加bbx工具)我用一个简单的例子来说明这个过程。该例子是在yem 下加一个yst文件,同时创建一个指向这个件的符合 yik。以下是过程: ,并在 下执#mkdir#mkdir–p 2)在system 3) /android创建如下的update-show_progress0.1copy_dirPACKAGE:systemsymlinkmytestSYSTEM:mylinkset_perm000755SYSTEM:mytest如果前面的3步曲,你已经很好的掌握了,应付你的日常工作应该没有太大的问题。但要成为真正的RO高手,你还有很多东西要 。你要了解整个启动过程,内核编译,ndroid源码的编译及配置,文件系统及启动配置。。Android机T的官网上有一篇文章这里recoery模式,fastoot模式。通过一些组合键,可以进入烧录模式。以TC3ero为例,“oe+oer”同时按,可以进入ecovery模式,“ack+oer”可以进入fastbot模式。Recovery模式比较常用,它相当菜单界面的模式。直接把前面所述的update.zip文件放到SD卡上,然后通过在机器上操作控制菜单,就可完成烧录。Fastboot是基于命令行的较低级的模式,它可直接烧录.img文件。Fastboot工具也在out/host/linux-x86/bin下。在我测试过程中,发现fastboot模式无法烧录,当我试图烧录system.img的时候,出现下面的出错信#fastbootflashsystem#writing'system'...INFOsignaturechecking...FAILED(remote:signatureverifyfail)在网上查了之后,发现这和签名有关系,L要重新刷一下才可,默认是L-on,即检测签名,改成L-off,就不会出现这个问题,目前没有什么好办法来处理这个问题。好在recovery模式已经能很好地满足需求了,可以先放弃fastboot。如果你通过recovery模式烧录后,发现系统无法正常启动,没有关系,recovery还是可以进去的。在recovery模你以过adbs 登陆机器。可能你进去后,发现D卡并没有挂接上来(执行ount就可以查看挂载情况)。但recovry模式要求update.ip须卡根 下,怎么办?很简单,执行“ount–a”就可把D卡区域挂接上来。如果这招也不行,还有一招,就是把userdata分区手动挂接到sdcard ,这样就骗过了recovery。#mount/dev/mtdblock5然后,你再用adbpush把新的update.zip拷贝到sdcard ,重新进行烧录。一般来说,在执行“Flashzipfrom如何更新可以参考h /viethradphptid6673,按照这个攻略,把自己的3ero更新成了recover--hero-v1..2-lue.i。不过,一般无特别的需求,最好不要更新recovry一风,成板。其它参考信息知名的Android国内 /,有很多对Android的研究专题 Android文件系 /linux/l- Androidinit 上一篇:shape渐变!描边!圆角!漂亮的自定义背 到下一篇:android查看评1楼mfh0952152012-08-02挺有意思的!有空专区推荐内容您还没有登录,请[登录]或专区推荐内容

招聘职 我公司职

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论