如何从 PreferenceScreen 为我的 Android 应用启动设备的通知设置
How to launch device's notification settings for my Android app from a PreferenceScreen
我想从 PreferenceScreen 为我的 Android 应用程序(Oreo 版本)启动 phone 的通知设置。
我在下面的 preferences.xml 文件中使用。但是,它不起作用。有人有想法吗?
<PreferenceScreen
android:title="@string/Notification">
<intent android:action="android.settings.APP_NOTIFICATION_SETTINGS"
android:data="package:com.my_app_package_name" />
</PreferenceScreen>
对于Android 5-7:
您必须从代码(以编程方式)调用 start activity,因为无法确定布局文件
中应用程序的 uid
Intent intent = new Intent();
intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("app_package", getPackageName());
intent.putExtra("app_uid", getApplicationInfo().uid);
对于AndroidO向上:
<intent android:action="android.settings.APP_NOTIFICATION_SETTINGS">
<extra android:name="android.provider.extra.APP_PACKAGE" android:value="your app package name" />
</intent>
我想从 PreferenceScreen 为我的 Android 应用程序(Oreo 版本)启动 phone 的通知设置。 我在下面的 preferences.xml 文件中使用。但是,它不起作用。有人有想法吗?
<PreferenceScreen
android:title="@string/Notification">
<intent android:action="android.settings.APP_NOTIFICATION_SETTINGS"
android:data="package:com.my_app_package_name" />
</PreferenceScreen>
对于Android 5-7: 您必须从代码(以编程方式)调用 start activity,因为无法确定布局文件
中应用程序的 uidIntent intent = new Intent();
intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("app_package", getPackageName());
intent.putExtra("app_uid", getApplicationInfo().uid);
对于AndroidO向上:
<intent android:action="android.settings.APP_NOTIFICATION_SETTINGS">
<extra android:name="android.provider.extra.APP_PACKAGE" android:value="your app package name" />
</intent>