Java 如何通过应用程序在设备上更新Android操作系统

Java 如何通过应用程序在设备上更新Android操作系统,java,android,Java,Android,在检查市场/游戏商店中是否有更新的Android版本后,是否有任何方法通过应用程序(使用Android API或任何其他API/)更新Android操作系统 此处需要支持的用例如下: 应用程序启动并检查已安装的Android操作系统的版本 然后,它会在 该设备的Playstore/其他存储库 然后比较两个版本,如果可用的版本是 更新,然后在设备上安装新的Android版本 如何实施,特别是第三点?我不想为此设置设备的根目录,因此如果有任何方法可以实现这一点,请帮助……您需要知道哪里可以询问是否有

在检查市场/游戏商店中是否有更新的Android版本后,是否有任何方法通过应用程序(使用Android API或任何其他API/)更新Android操作系统 此处需要支持的用例如下:

  • 应用程序启动并检查已安装的Android操作系统的版本

  • 然后,它会在 该设备的Playstore/其他存储库

  • 然后比较两个版本,如果可用的版本是 更新,然后在设备上安装新的Android版本

  • 如何实施,特别是第三点?我不想为此设置设备的根目录,因此如果有任何方法可以实现这一点,请帮助……

    您需要知道哪里可以询问是否有更新的版本。然后,该特定设备是否有可用的升级。此时,您可以广播更新请求。设备不知道更新何时可用吗

    没有API。如果您的设备内置了更新功能(大多数都有),则可以反编译更新服务并查看其工作原理。如果您的设备没有更新功能,则可以查看设备的自定义ROM。一旦您获得想要使用的ROM或update.zip,该过程将无法自动完成。更新在系统恢复模式下进行,用户必须选择.zip进行更新。然而,如果您可以反编译并弄清楚制造商的更新服务是如何工作的,那么也许您可以实现一个自动化过程


    这方面没有任何教程或文档,因为它100%依赖于手机型号/操作系统。不过,您可能会为您的设备找到一个可闪存ROM,但该过程很少是自动化的。实际上,看看这个例子,它是一个自动升级的应用程序。我以前试过了,结果它把我的手机弄坏了。祝你好运更新你需要的android版本

    • 在您的设备上定制Android
    • 根设备
    现在我们需要安装。您还需要检查可用操作系统的版本,这取决于您的逻辑。一般来说,三星、索尼使用定制的安卓系统,更新通过app center(或类似的,不太了解)推送在您的情况下,它可能是任何云服务或服务器来检查您的自定义android版本

    当我们有一个新版本时,在用户接受升级后,一个新的img文件将下载到您的设备上,该文件将用于升级操作系统。请注意,您也需要一个新的img文件。有一些文件可用于通过您的代码提取和下载操作系统

    我还没有实现它,但这是我可以找到的过程。 我希望这能帮助其他人

    更新

    我得到了一些关于如何通过代码启动更新的新信息。这对我有很大的帮助。
    在这两个例子中,他们都使用intallerPackage API。

    我曾经尝试过类似的方法,但据我所知,这是不可能的。更新是由设备制造商而不是谷歌驱动的。谷歌刚刚发布了新的AOSP代码,用于生产和使用,并根据他们的需要进行定制,以更新他们的操作系统,并在他们自己的时间轴上发布。首先,你链接到的博客文章表明,他们的技术已经有一段时间不起作用了(“虽然这个技巧在一些Android版本中效果很好,但它似乎不再可靠。更糟糕的是,它有时会导致一些问题,这些问题只能通过从设备中删除您的Google帐户并重新添加来解决。我们不再建议您这样做。”)第二,这种方法只适用于Nexus系列设备,而Nexus系列设备只占Android设备的一小部分。@Commonware嗨,我是Android新手。我错误地粘贴了错误的链接。我需要的是实用地更新设备操作系统。有可能吗?如果你是固件的作者,大概有一些方法可以实现你自己的固件OTA更新系统。你可能会看到哪些(如果有的话)流行的定制固件,比如CyanogenMod,提供了这类功能,然后看看它们是如何做到的。堆栈溢出对于实现OTA更新系统的问题不是一个特别好的地方——你可以试试xda:开发者论坛或其他什么。