片段中的Broadcastreceiver无法正常工作

时间:2015-06-30 08:09:49

标签: java android android-fragments broadcastreceiver android-broadcast

我正在尝试使用NotificationListener来获取即将发布的通知。两天前,我的班级是一项活动,一切正常。该服务已启动,并在我的视图中显示了通知,其中包含标题,图标及其说明。昨天我实现了新的导航视图,因此,我将活动更改为片段。之后通知没有显示出来。服务启动,但如果我尝试调试Broadcastreceiver(在片段内)不起作用。如果我尝试在其中创建一些日志它们不起作用。我想广播接收器不会在这一点上开始!这是Broadcastreceiver

     /**
     * Broadcast receiver notifications
     ***/
    private BroadcastReceiver onNotice= new BroadcastReceiver() {

        @Override
        public void onReceive(Context context, Intent intent) {
            final String pack = intent.getStringExtra("package");
            String title = intent.getStringExtra("title");
            String text = intent.getStringExtra("text");

            if(!pack.equals("") || !title.equals("") || !text.equals("")) {
                notificationLayout.setVisibility(View.VISIBLE);
                notificationTitle.setText(title);
                notificationDescription.setText(text);

                try {
                    icon = getActivity().getPackageManager().getApplicationIcon(pack);
                } catch (PackageManager.NameNotFoundException e) {
                    e.printStackTrace();
                }
                notificationImage.setImageDrawable(icon);


            } else {
                notificationLayout.setVisibility(View.INVISIBLE);
            }

        }
    };

在片段的onResume()方法中我写了这个:

LocalBroadcastManager.getInstance(getActivity()).registerReceiver(onNotice, new IntentFilter("Msg"));

我不知道班级类型的变化是否是这个问题的原因,但这是我所做的唯一改变。

0 个答案:

没有答案