Any way to link to the Android notification settings for my app?

前端 未结 10 1079
逝去的感伤
逝去的感伤 2020-11-28 03:15

Is there any way I can launch an intent to get to Android\'s notification settings screen for my app (pictured below)? Or an easy way I can make a PreferenceScreen item that

10条回答
  •  半阙折子戏
    2020-11-28 03:39

    Finally i tested almost all devices and works fine. The code given as follows

    public void goToPushSettingPage(Context context) {
        try {
            Intent intent=new Intent();
            if(Build.VERSION.SDK_INT>Build.VERSION_CODES.N_MR1){
                intent.setAction(Settings.ACTION_APP_NOTIFICATION_SETTINGS);
                intent.putExtra(Settings.EXTRA_APP_PACKAGE,context.getPackageName());
            }else if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
                intent.setAction(Settings.ACTION_APP_NOTIFICATION_SETTINGS);
                intent.putExtra(ConstUtil.PUSH_SETTING_APP_PACKAGE,context.getPackageName());
                intent.putExtra(ConstUtil.PUSH_SETTING_APP_UID,context.getApplicationInfo().uid);
            }else{
                intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
                intent.addCategory(Intent.CATEGORY_DEFAULT);
                intent.setData(Uri.parse(ConstUtil.PUSH_SETTING_URI_PACKAGE+context.getPackageName()));
            }
            startActivity(intent);
        } catch (Exception e) {
            // log goes here
        }
    }
    

提交回复
热议问题