我正在尝试将Ringer设置为静默,并且仅使用以下命令不干扰优先级
AudioManager myAudioMgr = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
NotificationManager myNOtificationMgr = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
myAudioMgr.setRingerMode(AudioManager.RINGER_MODE_SILENT);
myNOtificationMgr.setInterruptionFilter(NotificationManager.INTERRUPTION_FILTER_PRIORITY);我一直有个安全错误
java.lang.RuntimeException:无法启动接收方MyBroadcastReceiver: java.lang.SecurityException:拒绝通知策略访问
我将访问通知策略权限添加到我的Manifest文件中
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />我是不是错过了一个额外的许可?
发布于 2016-12-23 22:55:11
发布于 2016-12-23 22:50:37
发布于 2016-12-23 22:37:14
你需要做一些类似的事情
public class SomeFragment extends FragmentCompat {
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
int permissionNotifications = ContextCompat.checkSelfPermission(getActivity(), Manifest.permission. ACCESS_NOTIFICATION_POLICY);
if (permissionNotifications != PackageManager.PERMISSION_GRANTED ) {
ActivityCompat.requestPermissions(
getActivity(),
new String[] { Manifest.permission.ACCESS_NOTIFICATION_POLICY },
PERMISSION_REQUEST
);
}
}
}请记住,我无法运行这段代码,所以它可能需要一些TLC,但这是一个开始
https://stackoverflow.com/questions/41308512
复制相似问题