Android 在定义广播接收器的其他类中注册广播接收器

Android 在定义广播接收器的其他类中注册广播接收器,android,service,android-fragments,broadcastreceiver,android-broadcast,Android,Service,Android Fragments,Broadcastreceiver,Android Broadcast,我的fragment类中有一个广播接收器,我将其定义为: private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { updateUI(intent); //calling function }};

我的fragment类中有一个广播接收器,我将其定义为:

 private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            updateUI(intent);  //calling function     
        }};
我在同一个片段中注册了这个广播接收器,如下所示:

getActivity().registerReceiver(broadcastReceiver, new IntentFilter(
            Server.UDP_BROADCAST));
我的要求是在这个片段的主要活动中注册这个广播接收器,请帮助我有效地实现我的目标。如何做到这一点。
问候Talib。

如果您希望您的BroadcastReceiver接收您在应用程序中的位置,请在

从文档中:

通常不需要对应用程序进行子类化。在大多数情况下, 静态单例可以以更模块化的方式提供相同的功能 对。如果您的单身汉需要全局上下文(例如注册 广播接收器),可以为检索它的功能提供 上下文,当 首先构造单例


您是否已经使用“getActivity().registerReceiver()”完成了此操作?您已经完成了想要完成的操作。您正在通过调用getActivity()使用活动的引用注册广播接收,但实际上我不需要它,我特别想在没有getActivity的主活动中注册它,因为只要我不打开此片段,接收器就不会注册,我想在应用程序打开时注册它@KhawarRaza@for3st阅读我上面的评论你能调用registerReceiver(broadcastReceiver,newintentFilter(Server.UDP_BROADCAST))吗;在onCreate()方法中?