HarmonyOS 鸿蒙Next App内用代码跳转通知设置界面与系统设置里打开界面不一致问题,华为与荣耀设备特有,客服未解决

发布于 1周前 作者 songsunli 来自 鸿蒙OS

HarmonyOS 鸿蒙Next App内用代码跳转通知设置界面与系统设置里打开界面不一致问题,华为与荣耀设备特有,客服未解决 设置中打开的界面如下:

cke_1149.png

代码跳转的界面如下:

cke_2784.png

跳转代码如下:

Intent intent = new Intent(Settings.ACTION_APP_NOTIFICATION_SETTINGS);
intent.putExtra(Settings.EXTRA_APP_PACKAGE, context.getPackageName());
context.startActivity(intent);

官方代码打开的Activity信息如下:

image.png

设置中的通知管理的Activity信息如下:

image.png

目前看了微信内是可以跳转到这个界面的想知道怎么跳转?官方的代码不行别的品牌手机都可以

设备信息如下:

image.png

目前测试下来P70的鸿蒙4.2是没问题的 但是Mate20 升级不了4.2 Mate 60目前都没有4.2


更多关于HarmonyOS 鸿蒙Next App内用代码跳转通知设置界面与系统设置里打开界面不一致问题,华为与荣耀设备特有,客服未解决的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

请问有解决办法了吗

更多关于HarmonyOS 鸿蒙Next App内用代码跳转通知设置界面与系统设置里打开界面不一致问题,华为与荣耀设备特有,客服未解决的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


同问,这是为啥?

fun Context.invokeSystemNotificationSetting() {
    try {
        startActivity(Intent().apply {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                action = Settings.ACTION_APP_NOTIFICATION_SETTINGS
                putExtra(Settings.EXTRA_APP_PACKAGE, packageName)
                putExtra(Settings.EXTRA_CHANNEL_ID, applicationInfo.uid)
            } else {
                putExtra("app_package", packageName)
                putExtra("app_uid", applicationInfo.uid)
            }
        })
    } catch (e: Exception) {
        Logger.e(Log.getStackTraceString(e))
        this.invokeSystemSetting()
    }
}

fun Context.invokeSystemSetting() {
    try {
        val intent = Intent()
        intent.action = "android.settings.APPLICATION_DETAILS_SETTINGS"
        intent.data = Uri.fromParts("package", this.packageName, null)
        if (this.packageManager?.resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY) != null) {
            startActivity(intent)
        }
    } catch (e: Exception) {
        Logger.e(Log.getStackTraceString(e))
    }
}

试试这这段代码

您好,安卓系统相关疑问建议您还可以通过在线提单来进一步解决,涉及终端产品相关疑问建议您还可以前往花粉俱乐部反馈试试

在线提单:https://developer.huawei.com/consumer/cn/support/feedback/#/

花粉俱乐部:https://cn.club.vmall.com/forumall-10.html

感谢您对华为开发者论坛的支持!

提过工单了 没解决 让我来论坛问,

针对不同型号的手机 去适配,用adb看一下是哪个页面,按型号去跳

跳不过去 你看我上面已经贴了设置里的Activity的 但是1我不知道参数 2 跳过去要权限报错了,

针对“HarmonyOS 鸿蒙Next App内用代码跳转通知设置界面与系统设置里打开界面不一致问题”,这通常是由于鸿蒙系统在应用跳转系统设置时的特定行为或API差异导致的。

在鸿蒙系统中,应用通过代码跳转系统设置页面时,可能会因为系统版本、设备品牌(如华为与荣耀间的差异)或特定的系统策略而导致跳转结果与系统设置内直接打开的界面不一致。这可能是由于鸿蒙系统为了安全性和用户体验考虑,对应用跳转系统设置的行为进行了限制或优化。

解决此类问题,开发者可以尝试以下方法:

  • 确认API调用:确保使用的API是鸿蒙系统官方推荐的,且适用于当前设备和系统版本。
  • 检查权限:确认应用是否拥有跳转到系统设置页面的必要权限。
  • 设备兼容性测试:在多种华为和荣耀设备上进行测试,以确定是否为特定设备的兼容性问题。

如果上述方法均无法解决问题,可能是由于鸿蒙系统的特定实现或限制导致的。此时,开发者可以考虑在应用中添加用户引导,说明可能存在的差异,或者提供其他方式让用户能够到达所需的设置页面。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部