2017-04-05 71 views
0

我们从源代码构建Android,在我们的设备上看起来不错。目前我们需要制定自己的OTA流程,但我们不知道如何。如何在AOSP - fslota中制作自己的OTA应用程序?

我们尝试对我们的http服务器实施FSLOTa(https://github.com/embest-tech/android_packages_apps_fsl_imx_demo/tree/master/FSLOta),但文档非常差 - 所以我们只是将源添加到我们的源代码并编译它。

问题是,我们在我们的盒子中看到应用程序,但它没有任何内容。

或者有办法修改内置的OTA应用程序,当我们将服务器更改为我们的服务器时,我们至少会得到http请求。但我们不知道,如何告诉http服务器关于新版本 - 任何清单文件? XML,JSON还是?有没有例子?

还是有另一种简单的方法来实现OTA更新到AOSP?

非常感谢您 d

回答

1

我不知道FSLOTa我也不知道你正在使用的设备。但是,如果你想实现自己的OTA过程中,你可以尝试以下的(仅有很短的草案,因为你的问题是非常宽):

  1. 创建不时检查时间的服务器新产品的系统应用。
  2. 如果它检测到新软件包,它会将其下载到您的设备。
  3. 它复制下载update.zip/cache/
  4. 然后应用程序创建下列文件/cache/recovery/command和写入--update_package=path_to_your_file。 (有关更多命令,请参阅/bootable/recovery.cpp)
  5. 然后强制重启进入recovery
  6. 恢复安装您的ota软件包。

更新: 我赶紧检查你链接的应用程序。我会检查这个东西:

  1. 你得到直到RecoverySystem.installPackage()被称为? (https://github.com/embest-tech/android_packages_apps_fsl_imx_demo/blob/master/FSLOta/src/com/fsl/android/ota/OTAServerManager.java#L282
  2. 您是否从RecorySystem的logcat中看到消息,它将重新启动? (也许你有权限问题,你的应用程序不允许强制“重新启动恢复”)
  3. 是你的update.zip的路径是否正确? (它应该在/ cache /中)
+0

你好,非常感谢。其实我们正在尝试你的建议,我会写结果给你。谢谢!!!!!! –

+1

真的在工作,谢谢!!!! –

相关问题