有没有办法使用Android的LifecycleObserver来通知onActivityResult?

6

我目前使用 LifecycleObserver 来通知视图的事件,比如 onStart。对于像 FacebookLoginHandler 这样的组件作为展示器或处理程序来说非常好用,因为它需要在视图准备就绪后注册回调函数。但是,有些情况,比如我提到的那种情况,我想让处理程序处理另一个活动返回的数据。

例如:

当我选择用Facebook登录时,它会启动另一个活动,并将其返回值传递给视图的 onActivityResult 方法。这迫使我将我的 FacebookLoginHandler 注入视图中,只是为了将处理委托回去。我想使用 LifecycleObserver 来得到 onActivityResult 的通知,避免为了委托此事件而将处理程序与视图耦合。有什么办法可以做到这一点吗?

1个回答

4
我有完全相同的问题。 我的应用程序中有“使用Facebook登录”功能,我希望将此功能移入实现 LifecycleObserver 的单独类AuthManager 中 。
我已经检查了 Lifecycle.Event 类,该类包含所有可用的生命周期事件。 看起来目前(android.arch 版本1.1.0),没有与 LifecycleObserver 一起处理 onActivityResult() 的事件。
提出了一个问题: https://github.com/googlesamples/android-architecture-components/issues/317

你找到解决方案了吗? - SimpleCoder
该问题已关闭,因为它是在样本项目中开启的。我在问题跟踪器中开了一个:https://issuetracker.google.com/issues/140476665 - Yoel Gluschnaider
1
你找到解决方案了吗?(两年后) - Dilshod

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接