0

我有一个活动 (ActivityA)。这是应用程序的启动活动。然后我从 ActivityA 调用一个服务(ServiceB)。然后 ServiceB 获取一些其他参数并通知标题栏。

mNotificationManager.notify(DataHolder.TITLE_BAR_NOTOFICATION_ID, notification);

我现在想要的是 ActivityA 也可以识别某些通知已调用。并显示有通知。

有什么建议么?

4

1 回答 1

0

我现在想要的是 ActivityA 也可以识别某些通知已调用。并显示有通知。

  • 解决方案是让您的活动触发自定义广播,当 ActivityA 或 ActivityB 在onReceive方法中接收到该广播时,他们可以显示通知。

假设一个场景是 Class1 正在做某项任务,一旦任务完成,他想通知其他类。

public class Class1 extends Activity{

    public static final String CUSTOM_INTENT = "org.some.action";

    @Override
    public void onCreate(Bundle bundle) {

        //Do some operation.......now once operation is done send Broadcast 
         to other activities

        Intent i = new Intent();
        i.setAction(CUSTOM_INTENT);
        context.sendBroadcast(i);
    }

}

现在 Class2 将在他收到广播后得到通知。

public class Class2 extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals("org.some.action")) {
            System.out.println("I got Notified");
        }
    }
}

不要忘记在清单文件中添加 Class2 作为接收器。

<receiver android:name=".Class2" android:enabled="true">
    <intent-filter>
      <action android:name="org.some.action"></action>
    </intent-filter>
</receiver>
于 2012-06-08T09:03:58.580 回答