Как запустить настройки уведомлений устройства для моего приложения Android с экрана PreferenceScreen - PullRequest
0 голосов
/ 07 декабря 2018

Я хотел бы запустить настройки уведомлений телефона для моего приложения для Android (версия Oreo) с экрана PreferenceScreen.Я использую ниже в файле Preferences.xml.Однако это не работает.У кого-нибудь есть идея?

<PreferenceScreen
    android:title="@string/Notification">
    <intent android:action="android.settings.APP_NOTIFICATION_SETTINGS"
            android:data="package:com.my_app_package_name" />
</PreferenceScreen>

1 Ответ

0 голосов
/ 07 декабря 2018

Для Android 5-7: Вы должны вызывать стартовую активность из кода (программно), потому что нет способа определить uid приложения в файле макета

Intent intent = new Intent();
intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("app_package", getPackageName());
intent.putExtra("app_uid", getApplicationInfo().uid);

Для Android O up:

<intent android:action="android.settings.APP_NOTIFICATION_SETTINGS">
    <extra android:name="android.provider.extra.APP_PACKAGE" android:value="your app package name" />    
</intent>
...