2012-04-18 71 views
1

我想创建C + +可执行文件以通过Android手机上的ADB闪存ROM,任何人都可以帮我解决这个问题吗? 我有C++的基本知识,但不知道从哪里开始 逻辑是 初始化头文件 - >初始化ADB服务 - >启动ADB shell - >使用flash_image二进制闪存.img文件 - >亚行重启如何为闪存ROM创建C++可执行文件?

任何人都可以给我一个简单的例子闪烁启动图像? 我不知道应该包含哪些头文件,应该使用哪种编译器。 创建一个新的线程,因为我没有找到有关这

谢谢

+0

图像闪烁是由adb完成的,你只需要打开一个管道到adb可执行文件,为它提供命令并观看输出 – 2012-04-18 04:47:10

+0

是的......我已经闪过boot.img,recovery.img图像几次使用亚行,但想创建一个相同的C++可执行文件 你可以举个例子来使用C++刷新启动映像吗? 这个例子会解释我很多:) 是否有可能使用ADB刷新system.img? 要使用哪个编译器? – 2012-04-18 04:55:30

回答

1

ADB无关闪着ROM的东西,亚行正在调试接口,这需要系统启动并运行在手机上。试图用完全运行的系统刷新ROM映像就像是在没有麻醉剂的情况下进行心脏手术。

有ROM图像重新刷新的两种基本方法正确:

  1. update.zip
  2. FASTBOOT

前者是当你复制/下载的ROM映像作为更新.zip到SD卡,然后使用恢复来更新系统。这通常涉及用户按下一些按钮,然后再次关闭手机。这是最好的方法,因为更新文件已经安全地存储在SD卡上,可以进行检查和验证,并且制作手机的机会很少。

当你将手机连接到PC,它与“亚行重新启动引导程序”切换到FASTBOOT模式(或关闭/开启并保持一些按钮),然后用FASTBOOT执行ROM更新第二个是魔法。问题是,当使用fastboot时,你需要一个非常可靠的USB连接。任何通讯错误和手机都被堵住了。这就是为什么我不使用并且不建议使用fastboot方法来刷新ROM。

如果您不介意使用fastboot方法砌砖您的手机,C++程序将非常简单。

  1. 解压ROM映像的地方(如果您有它包装里面的程序)
  2. 问题的exec()或()调用运行“亚行重新启动引导程序”,然后“FASTBOOT闪光灯*”命令,然后,最后'fastboot reboot'
  3. 如果你已经正确地做了所有事情(捕获并处理adb和fastboot的输出来检查结果),你的设备将被重新命名并重新启动。

最后,我想再次强调一下,使用fastboot重新刷写ROM非常危险,如果可能,我建议尽量避免。

+0

谢谢 但是我更喜欢亚行,因为不是所有的手机都有快速启动,是吗?其中一些有下载模式。 你能举个例子吗,我是C++的新手有一个非常基础的知识 我会对闪存启动映像的例子感兴趣吧 – 2012-04-19 06:32:10

+0

其次,为什么不系统启动时flash system.img? 由于闪烁系统并通过adb reboot命令手机将重新启动,一切都将正常。 也许在闪光的手机将死(不死,但可能会导致黑屏),但亚行桥仍然是,不是吗? 我已经闪过启动,通过亚行恢复图像,但想创建一个单击C++程序:) – 2012-04-19 06:36:35

+0

是的,即使手机有fastboot支持,我也不会冒险使用fastboot – 2012-04-19 06:38:35

相关问题