代码之家  ›  专栏  ›  技术社区  ›  Vincent Hiribarren

相当于没有Android支持库的LocalBroadcastManager

  •  9
  • Vincent Hiribarren  · 技术社区  · 10 年前

    StackOverflow和其他地方有很多使用该类的示例 LocalBroadcastManager 避免在应用程序之外广播事件。

    但是,该类使用Android支持库,如软件包名称所示: android.support.v4.content.LocalBroadcastManager .

    是否有相当于 本地广播 在不使用Android支持库的标准SDK中?

    似乎 sendBroadcast 中的方法 android.content.Context 具有这种安全粒度。

    1 回复  |  直到 10 年前
        1
  •  3
  •   Sulfkain    9 年前

    不,它不存在。如果你想重新创建这个类,你可以阅读源代码来实现自己,而不需要使用支持库。 无论如何,使用支持库有什么问题?重量轻。

    一种变通方法是使用普通的BroadCastReceiver <android:exported="false"> 在你的清单上,在这个接收者里面,这避免了其他应用向你发送意图,所以你在假装一个本地接收者。

    注意:我说的是伪造,因为LocalBroadcastManager有优化,没有将意图传播到系统。。。

    希望这有帮助。