android - 将回调传递给库中的 Activity

标签 android android-activity callback

我正在使用的库有一个 Android Activity 。我想将回调传递给 Activity ,以获取某些用户事件的通知,例如当用户输入特定代码或在屏幕上绘制某些内容时。我无法找到一种方法将回调传递给 android Activity 。

注意:我可以编辑库,但是,出于架构原因和易于测试而不与更大的应用程序集成的目的,我更喜欢将 Activity 保留在库中。

解决这个问题的最佳方法是什么? Android 有设计模式吗?

最佳答案

What is the best possible way to solve this?

修改 Activity 以在发生这些事件时在事件总线(greenrobot 的 EventBus、Square 的 Otto、LocalBroadcastManager)上发布事件。然后,在应用中的其他位置监听这些事件。

I prefer to leave the activity within the library for architectural reasons and ease of testing without integrating with the larger app

然后说服库的开发人员修改 Activity ,以便在发生这些情况时在事件总线(greenrobot 的 EventBus、Square 的 Otto、LocalBroadcastManager)上发布事件。然后,在其他地方监听这些事件您的应用程序。

或者,说服开发人员提供一些其他方法来实现此目的(例如,您对 Activity 进行子类化并重写某些方法以获取这些事件的通知)。

关于android - 将回调传递给库中的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32850649/

相关文章:

android - 在 Android 中将数据存储在 SD 卡上

android - ffmpeg水印

Android - 在 AsyncTask onPostExecute() 中设置的共享首选项并不总是设置?

java - Android 为什么文本显示在onCreate

java - 如何在android中从 'outside'强制更新主要 Activity ?

javascript - 传递包含参数的回调函数?

javascript - jQuery:使用 .stop(xxx, false) 调用 'complete' 回调

JAVA:使用 if-cond 调用相同的方法,而不执行进一步的(旧)代码

android - 阴影仅在外侧曲线上

android - 如何在Service和Activity之间传递复杂的数据?