91精选视频_麻豆一区二区三区在线观看_中文字幕日韩有码_亚洲网站在线看

安卓清理大師
您當(dāng)前位置: 刷機(jī)教程 -移植教程
MTK6589百度云ROM移植教程(以金立GN708W為例)
發(fā)布日期:2014/1/13 來源:ROM基地 編輯:ROM基地 12829 閱讀 0評(píng)論
百度云已經(jīng)支持了MTK6589平臺(tái)的ROM A820,還有馬上要發(fā)布的G4。基于A820和G4,我們可以將百度云ROM移植到其他的MTK6589的機(jī)型上。由于A820是基于官方4.1制作的,G4網(wǎng)上有4.2的底包,百度應(yīng)該會(huì)基于4.2的底包來制作。等G4發(fā)布之后,只要是MTK6589的芯片,無論是官方是4.1還是4.2的,都可以制作百度云ROM了。具體使用MTK6589芯片的手機(jī),大家可以去百度一下,真心很多啊!

        在這里,我嘗試了一把將百度云的A820一直到風(fēng)華2(GN708W的4.1)上,雖然風(fēng)華2已經(jīng)有4.2的包。但是大家可以看到風(fēng)華2的4.2的包相對(duì)于4.1,也只是更新了boot和system兩個(gè)分區(qū)。
        如果對(duì)于百度云ROM拼包移植不熟悉的,可以先看一下刷機(jī)大師論壇發(fā)布的MTK6577的教程:
http://bbs.mgyun.com/thread-22686-1-1.html
里面有講如何修改boot.img、build.prop以及提前開啟adb(這個(gè)對(duì)于調(diào)試很重要)等等
之前MTK6577的移植教程里有說明的,這里就不再重復(fù)介紹了。這里主要講述在拼包過程中遇到的問題的解決辦法!
GN708W移植教程及問題
先簡單講一下我拼GN708W的幾個(gè)步驟及遇到的一些問題:
1、  解壓A820的ota包:
去百度云ROM官網(wǎng)上下載A820最新的ota包,然后解壓目錄ota-rom-34
2、  加入GN708W的驅(qū)動(dòng)和硬件強(qiáng)相關(guān)文件:
將以下目錄的所有文件拷貝到ota-rom-34對(duì)應(yīng)的目錄
/system/etc/firmware/*
/system/etc/permissions/*
/system/etc/mddb/*
/system/lib/hw/*
/system/lib/modules/*
/system/vendor/*
3、  參照MTK6577的教程去掉updater-script里面的機(jī)型校驗(yàn),然后打一個(gè)zip包,就可以開始用recovery刷入了。刷入之后,首先需要關(guān)注adb是否能夠正常使用。然后就看影響起機(jī)的關(guān)鍵進(jìn)程了。后面會(huì)進(jìn)行更詳細(xì)的介紹。
4、  遇到過一個(gè)不能起機(jī)的問題,是因?yàn)闆]有/data/app-lib目錄導(dǎo)致,這個(gè)是4.1和4.2的差異。4.2需要在init.rc中創(chuàng)建/data/app-lib目錄,因而將A820上的這個(gè)修改弄過來就可以了。
5、  這里遇到過前置攝像頭不能用的問題,在將/system/lib/libcam*所有的so庫用GN708W的之后就可以解決了。還有一個(gè)閃光燈不能用的問題,反編譯了BaiduGallery3D.apk(當(dāng)然得先去掉odex),然后修改了一些smali代碼做到的。已經(jīng)跟官方項(xiàng)目組的聯(lián)系,ROM-35會(huì)去掉一些強(qiáng)依賴,到時(shí)候就可以不修改smali代碼了。
6、  還有一個(gè)默認(rèn)存儲(chǔ)卡的問題,修改了init.rc,是參照A820的修改的,在init.rc的最后幾段。

關(guān)鍵進(jìn)程啟動(dòng)失敗的處理關(guān)鍵進(jìn)程
往往在拼包完之后,發(fā)現(xiàn)不能起機(jī),這個(gè)時(shí)候需要看以下的關(guān)鍵進(jìn)程是否都起來了(用adb shell ps查看):

當(dāng)然具體什么進(jìn)程能影響不能起機(jī),關(guān)鍵還的看init.rc的配置,不同的機(jī)型可能會(huì)有差別。如果這些進(jìn)程都正常起來了,系統(tǒng)還是不能起機(jī),這個(gè)時(shí)候你需要對(duì)比一下原生起來的進(jìn)程跟你的有什么差異了,是不是比你的要多一些進(jìn)程!

關(guān)鍵進(jìn)程啟動(dòng)失敗的處理方法
如果有進(jìn)程不能正常起機(jī),或者你發(fā)現(xiàn)它的進(jìn)程id不停地在變化,說明這個(gè)進(jìn)程是有問題的!
解決辦法:
adb shell后,手動(dòng)執(zhí)行進(jìn)程,看有什么錯(cuò)誤。
比如surfaceflinger沒有起來,執(zhí)行以下命令:
adb shell
surfaceflinger

1、 缺少so庫:
比如我手動(dòng)刪掉了libcamdrv.so庫,然后在adb shell之后運(yùn)行mediaserver,就會(huì)出現(xiàn)如下信息:

soinfo_link_image(linker.cpp:1635):could not load library "libmediaplayerservice.so" needed by "mediaserver";caused by soinfo_link_image(linker.cpp:1635): could not load library"libstagefright.so" needed by "libmediaplayerservice.so";caused by soinfo_link_image(linker.cpp:1635): could not load library"libskia.so" needed by "libstagefright.so"; caused bysoinfo_link_image(linker.cpp:1635): could not load library"libmhalImageCodec.so" needed by "libskia.so"; caused bysoinfo_link_image(linker.cpp:1635): could not load library"libJpgDecPipe.so" needed by "libmhalImageCodec.so"; causedby soinfo_link_image(linker.cpp:1635): could not load library"libcamdrv.so" needed by "libJpgDecPipe.so"; caused byload_library(linker.cpp:745): library "libcamdrv.so" nCANNOT LINKEXECUTABLE  
 

這種信息需要從后面往前看,可以很輕松地看出是找不到libcamdrv.so庫。
2、缺少函數(shù):
       少函數(shù)的提示信息跟缺少so庫的類似,你也只需要從后面往前看,找到對(duì)應(yīng)的函數(shù)名稱,然后去grep,找到對(duì)應(yīng)的so,然后push進(jìn)去。當(dāng)然C++的函數(shù)名比較長,不過沒有關(guān)系,一樣可以搜索出來的。

3、 段錯(cuò)誤(Segmentationfault):

        當(dāng)你手動(dòng)運(yùn)行某個(gè)進(jìn)程,出現(xiàn)“Segmentationfault”的提示,或者用adb logcat看到有一堆DEBUG的log時(shí),則表示有段錯(cuò)誤!
比如,有一下DEBUG的log,下面是其中的backtrace片段:

    I/DEBUG   (  580): backtrace:
    I/DEBUG   (  580):     #00 pc 00011a50 /system/lib/libcamdrv.so(ImgSensorDrv::getCurrentSensorType(SENSOR_DEV_ENUM)+75)
    I/DEBUG   (  580):    #01  pc 0001302b  /system/lib/libcamdrv.so(ImgSensorDrv::impSearchSensor(int (*)())+422)
    I/DEBUG   (  580):    #02  pc 000133ed  /system/lib/libcamdrv.so(SensorDrv::searchSensor(int (*)())+14)
    I/DEBUG   (  580):    #03  pc 0001696f  /system/lib/libcamdrv.so(SensorHalImp::searchSensor()+226)
    I/DEBUG   (  580):    #04  pc 0000838d  /system/lib/hw/camera.default.so(android::CamDeviceManager::getNumberOfCameras()+120)
    I/DEBUG   (  580):    #05  pc 0001c317  /system/lib/libcameraservice.so(android::CameraService:: onFirstRef()+58)
    I/DEBUG   (  580):    #06  pc 0000ef2d  /system/lib/libutils.so(android::RefBase::incStrong(void const*) const+38)
    I/DEBUG   (  580):    #07  pc 00000bc9  /system/bin/mediaserver
    I/DEBUG   (  580):    #08  pc 00000c87  /system/bin/mediaserver
    I/DEBUG   (  580):    #09  pc 0001bd98  /system/lib/libc.so (__libc_init+64)
    I/DEBUG   (  580):    #10  pc 00000aa0  /system/bin/mediaserver

        這里是程序的調(diào)用的so庫的堆棧,可以看到最后的段錯(cuò)誤發(fā)生在libcamdrv.so,這個(gè)時(shí)候,你嘗試著將libcamdrv.so進(jìn)行替換。如果不行,再換下一個(gè),即camera.default.so,依次類推。
       這個(gè)時(shí)候你會(huì)看到一些提示,比如so庫啊,或者少函數(shù)。如果是少so庫,去百度的或者官方的找一個(gè)就是了。如果是少函數(shù),去grep一下,看哪個(gè)so庫有這個(gè)函數(shù),然后將這個(gè)so換進(jìn)去!哈哈~~~實(shí)在不行,把錯(cuò)誤日志貼到百度去搜索一下!
注意事項(xiàng):
有些進(jìn)程起來是需要帶參數(shù)的,比如在init.rc中看到有這樣一段:
servicegsm0710muxd /system/bin/gsm0710muxd -s /dev/ttyC0 -f 512 -n 8 -m basic
說明gsm07010muxd這個(gè)進(jìn)程是運(yùn)行的/system/bin/gsm0710muxd文件,并且?guī)в袇?shù)“-s/dev/ttyC0 -f 512 -n 8 -m basic”
所以在這種情況下,你要跑gsm07010muxd進(jìn)程,就得在adbshell之后輸入:
/system/bin/gsm0710muxd-s /dev/ttyC0 -f 512 -n 8 -m basic
當(dāng)然,由于/system/bin已經(jīng)加到PATH里面,你不輸入/system/bin/也是可以跑gsm0710muxd的。
怎樣利用objdump看文件的依賴關(guān)系:      
       在解決某些問題的時(shí)候,需要知道so庫或者bin之間的依賴關(guān)系,有些是動(dòng)態(tài)加載的,是沒有辦法直接看到的。但是通過鏈接的so庫都可以看到的。
可以用objdump命令查看,具體方法如下:
比如我想看surfaceflinger這個(gè)bin依賴哪些so庫,則可以:
輸入:objdump -x surfaceflinger  |grep NEEDED
輸出:
NEEDED              libsurfaceflinger.so
NEEDED               libbinder.so
NEEDED               liblog.so
NEEDED               libutils.so
NEEDED               libc.so
NEEDED               libstdc++.so
NEEDED               libm.so
       你就會(huì)知道surfaceflinger依賴于上面這些so庫了,當(dāng)然你如果想知道libsurfaceflinger.so依賴于哪些so庫,這種方法同樣是可以用的!objdump -x libsurfaceflinger.so | grep NEEDED
然后嘗試去替換一下,哈哈~~~
adb不能用,怎樣抓取日志:
       有些開發(fā)者可能覺得修改boot.img提前開啟adbd比較麻煩,下面我將教大家一種方法,怎樣在adb不能用的時(shí)候,抓取日志!
       一般而言,android都會(huì)起動(dòng)一個(gè)install-recovery.sh的服務(wù),所以你只需要在/system/etc/install-recovery.sh里面增加輸出日志的,不就可以了嘛!
如果有install-recovery.sh,則追加上以下語句:
logcat –v time >> /sdcard/log
如果沒有install-recovery.sh,則新建一個(gè),需要有執(zhí)行權(quán)限哦!內(nèi)容如下:
#!/system/bin/sh
logcat –v time >> /sdcard/log
       在系統(tǒng)運(yùn)行之后,把你的sdcard拿出來,就可以看到日志了。當(dāng)然,如果你的手機(jī)還不能識(shí)別sdcard,你就只能放到/data/local/tmp,然后進(jìn)到recovery去手動(dòng)mount /data分區(qū)拿出來了!

發(fā)表評(píng)論
點(diǎn)擊換圖
發(fā)表
91精选视频_麻豆一区二区三区在线观看_中文字幕日韩有码_亚洲网站在线看
国产成人av影院| 2024国产精品| 亚洲欧洲日本在线| 狠狠色综合色综合网络| 在线播放欧美女士性生活| 亚洲精品午夜久久久| www.亚洲精品| 亚洲人一二三区| 91在线免费视频观看| 国产欧美一区二区精品久导航| 美女视频黄久久| 欧美成人vps| 黑人巨大精品欧美黑白配亚洲| 欧美一区欧美二区| 日本 国产 欧美色综合| 日韩一区二区三区高清免费看看 | 国产精品另类一区| 国产不卡视频在线播放| 久久精品男人天堂av| 高清国产一区二区| **欧美大码日韩| 欧美视频在线一区| 亚洲国产日韩av| 欧美日韩国产免费一区二区| 视频一区视频二区在线观看| 91精品在线一区二区| 日韩av午夜在线观看| 日韩一区二区视频| 国产精品99久久久| 亚洲人123区| 91精品国产91综合久久蜜臀| 另类人妖一区二区av| 国产亚洲精品资源在线26u| 成人涩涩免费视频| 亚洲香肠在线观看| 日韩欧美一二三区| 成人午夜电影小说| 亚洲综合区在线| 精品捆绑美女sm三区| 不卡免费追剧大全电视剧网站| 亚洲免费色视频| 日韩午夜中文字幕| av一区二区三区在线| 亚洲成人激情自拍| 国产欧美精品一区二区色综合| 99re这里只有精品首页| 日韩中文欧美在线| 国产精品免费视频网站| 在线观看av一区| 国产一二精品视频| 亚洲香肠在线观看| 久久久久亚洲蜜桃| 欧美中文字幕一区二区三区| 国内精品伊人久久久久影院对白| 综合色天天鬼久久鬼色| 日韩一区二区三免费高清| 波多野结衣亚洲| 老司机免费视频一区二区 | 精品视频色一区| 国产精品一区2区| 亚洲成人www| 18涩涩午夜精品.www| 久久综合色婷婷| 欧美群妇大交群中文字幕| 国产91精品久久久久久久网曝门| 午夜免费久久看| 亚洲视频在线一区二区| 精品国内二区三区| 欧美日韩在线不卡| 一本到一区二区三区| 国产成人免费在线视频| 蜜臀av性久久久久蜜臀aⅴ| 一区二区三区91| 国产精品三级av| 久久久www成人免费无遮挡大片| 欧美日韩中文国产| 色哟哟亚洲精品| 成人视屏免费看| 国产精品一二三在| 久久精品久久综合| 日本成人中文字幕| 午夜av电影一区| 亚洲成人手机在线| 一区二区在线免费| 亚洲精品网站在线观看| 欧美极品另类videosde| 久久亚洲捆绑美女| 精品国一区二区三区| 日韩久久久久久| 欧美mv日韩mv亚洲| 精品国产91久久久久久久妲己| 欧美一区二区三区日韩| 制服丝袜亚洲精品中文字幕| 欧美亚洲高清一区二区三区不卡| 91免费在线看| 在线观看亚洲成人| 在线精品视频免费观看| 色视频欧美一区二区三区| 一本在线高清不卡dvd| 91热门视频在线观看| 色婷婷精品久久二区二区蜜臂av| 97成人超碰视| 色婷婷综合久久久中文字幕| 色菇凉天天综合网| 欧美日韩精品福利| 91精品国产福利在线观看| 精品日韩一区二区三区| 久久久国产精华| 国产精品久久免费看| 亚洲天天做日日做天天谢日日欢| 亚洲精品视频自拍| 日韩高清在线不卡| 精品一区在线看| 成人精品视频一区| 欧美日韩午夜精品| 精品剧情在线观看| 中文字幕一区二区日韩精品绯色| 亚洲欧美国产高清| 日韩影院免费视频| 国产精品99久久久久久有的能看 | 日本不卡高清视频| 韩国精品主播一区二区在线观看 | 蜜桃视频第一区免费观看| 麻豆精品国产91久久久久久| 亚洲成人精品在线观看| 久久99国产精品免费网站| 一区二区三区四区不卡视频| 男人操女人的视频在线观看欧美 | 亚洲妇女屁股眼交7| 亚洲1区2区3区4区| 男男gaygay亚洲| 国产一区二区三区精品视频| 成人h动漫精品一区二| 国产一区视频网站| 日韩免费在线观看| 精品成人一区二区三区| 亚洲国产一区在线观看| 免费观看成人av| 欧美日韩中文字幕精品| 亚洲欧洲综合另类在线 | 91精品国产综合久久精品图片| 56国语精品自产拍在线观看| 欧洲av一区二区嗯嗯嗯啊| 欧美自拍偷拍午夜视频| 日韩精品一区二| 亚洲理论在线观看| 国内精品久久久久影院色| 成人性生交大片免费看视频在线| www.激情成人| 精品国产网站在线观看| 成人免费在线观看入口| 麻豆精品在线看| 欧洲在线/亚洲| 久久久777精品电影网影网 | 国产一区二区三区美女| 成人免费黄色在线| 欧美一级片在线看| 亚洲综合色成人| jlzzjlzz亚洲日本少妇| 日韩三级视频在线观看| 亚洲国产精品一区二区www| 成人午夜精品一区二区三区| 精品国产免费久久| 人人狠狠综合久久亚洲| 精品视频一区 二区 三区| 国产丝袜欧美中文另类| 国产欧美精品在线观看| 东方欧美亚洲色图在线| 国产精品美女视频| 欧美综合一区二区三区| 亚瑟在线精品视频| 亚洲欧洲av另类| 欧美电影免费观看高清完整版 | 韩国三级中文字幕hd久久精品| 成人黄色网址在线观看| 日本欧美大码aⅴ在线播放| 免费久久99精品国产| 国产一区二区三区四区五区入口| 国产成a人无v码亚洲福利| 精品国产91九色蝌蚪| 免费成人美女在线观看| 91精品国产免费久久综合| 爽爽淫人综合网网站| 欧美日韩三级在线| 婷婷开心激情综合| 欧美一区二区精品| 免费美女久久99| 欧美成人一级视频| 精品在线播放免费| 日本一区二区三区dvd视频在线| 国产一区二区91| 中文成人综合网| 在线亚洲一区二区| 三级一区在线视频先锋| 精品日产卡一卡二卡麻豆| 国产麻豆精品视频| 亚洲欧洲日韩一区二区三区| 91在线porny国产在线看| 亚洲午夜久久久久久久久电影网| 欧美日韩亚洲综合在线|