My Activity注入了许多初始化的对象 在第一次调用onCreate之前。 当我的Activity通过调用finish方法完成时,它会通过 通过onDestroy返回主“OS桌面”窗口。 然后我再次调用我的应用程序,再次调用onCreate。 这一次虽然我的观点与最初完成时的观点相同 上面提到的。 因此,我想知道RoboGuice是否重新实例化注入 对象又来了?如果没有,有没有办法让我这样做? 感谢。
答案 0 :(得分:1)
你是说这些没有重新实例化吗?
当onCreate()被调用时。当您更改手机方向时,每个对象都会再次注入。但是如果注入的对象之一是Singleton,则将注入相同的对象实例。 “Singleton”在整个应用程序的范围内工作,因此活动生命周期对符号对象不起作用。
答案 1 :(得分:0)
查看Android activity lifecycle文档。
如果Android调用onCreate,则会创建活动的新实例,并且将实例化任何非单例组件,并且roboguice将注入所有组件。
如果您只需要一个组件的单个实例,则可以将其设为单个实例。只需要谨慎使用单例内存,因为它们将在应用程序进程期间存在。因此,即使某项活动已被销毁但您的应用程序流程仍在运行,这些单身人士也会消耗内存。
Roboguice只是一个围绕guice的包装器。如果您有兴趣寻求获取课程实例的其他选项,请查看Bindings中的Scopes,Providers和guice。