REQUEST_IGNORE_BATTERY_OPTIMIZATIONS点火但没有提示

问题描述 投票:2回答:1

当应用程序启动时,我正试图在推送通知中使用ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS禁用Android 9上的电池优化。

在活动文件中(使用通知构建器):

Intent intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
PendingIntent pendingIntent = PendingIntent.getActivity(getContext(), 0, intent, 0);
NotificationCompat.Builder...
NotificationManagerCompat notificationManager = NotificationManagerCompat.from(getContext());
notificationManager.notify(notificationId, builder.build());

AndroidManifest.xml

<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />

我能够显示推送通知,但是当你点击时,它就会消失。不会弹出“允许”提示。我在设置上做错了吗?

android android-intent permissions notifications battery
1个回答
1
投票

您缺少数据中的Uri。来自documentation

输入:Intent的数据URI必须使用“package”方案指定要显示的应用程序包名称。那就是“package:com.my.app”。

做类似的事情:

Intent intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
intent.setData(Uri.parseString("package:my.package.name");
© www.soinside.com 2019 - 2024. All rights reserved.