【问题标题】:Open Android's System Update page打开 Android 的系统更新页面
【发布时间】:2014-01-03 11:38:37
【问题描述】:

我想直接从我的应用程序中打开 设置 > 关于 > 系统更新。我该怎么做?

对于设置>关于,我可以这样做

startActivityForResult(new Intent(android.provider.Settings.ACTION_DEVICE_INFO_SETTINGS), 0);

但我正在寻找一种方法来进行系统更新。

【问题讨论】:

    标签: android android-settings


    【解决方案1】:

    有点晚了,但这是我的答案:

    startActivityForResult(New Intent("android.settings.SYSTEM_UPDATE_SETTINGS"),0)
    

    【讨论】:

    • 这应该被标记为答案。我刚刚在 Pixel 2 (Android Q) 和三星 S8 (Android P) 上试用过它,效果非常棒。
    • @untosabla ,很高兴它有帮助
    • 三星设备只有一个警告:此意图启动与在 Pixel 2 设备上启动相同的系统更新屏幕。它不会启动“三星系统更新屏幕”,因此这种方式不适用于三星设备。我已经在具有 Android 6 到 Android 10 的各种三星设备上对其进行了测试,并且在所有测试设备上都没有打开三星更新屏幕。即使其中一个设备有待处理的更新,它也不会在被此意图盯着的屏幕中看到。不幸的是,它因制造商而异。
    【解决方案2】:

    系统更新活动位于com.google.android.gsf/.update.SystemUpdateActivity

    您可以使用下面的代码打开它(最简单,没有错误处理)。

    Intent intent = new Intent();
    intent.setComponent(ComponentName
        .unflattenFromString("com.google.android.gsf/.update.SystemUpdateActivity"));
    startActivity(intent);
    

    【讨论】:

    • 但它正在打开谷歌更新活动而不是 OEM 特定更新活动。
    • 您并没有注意到您首先想要获得 OEM 特定的,因为在 Nexus 设备中,Settings->About->System Update 带来了 Google 的。在这种情况下,我恐怕帮不上什么忙。我认为您可以在打开特定活动以获取包和类名时尝试调试您的设备。对于某些 LG 设备,例如 com.lge.lgfotaclient/.DmcFotaUserInterface2
    猜你喜欢
    • 2011-10-02
    • 1970-01-01
    • 2018-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多