【发布时间】:2012-07-29 16:50:26
【问题描述】:
我已经开始在其中一个应用程序中使用 roboguice。为了进行比较,我从带有 RoboActivity 和三个 RoboAsyncTask 的初始屏幕开始。当我使用普通活动和普通线程开发它并传递给它的上下文和处理程序时,在整个启动活动执行期间,甚至没有一次调用 GC。 但是有了 RoboActivity 和 @Context ,3 个 POJO 依赖注入和三个 RoboAsync 任务,GC_FOR_MALLOC 被调用了 5 次。
Roboguice 代码
@ContentView(R.layout.activity_splash)
public final class Splash extends RoboActivity {
/**
* Constant TAG used in debugging
*/
public static final String TAG = "###Splash###";
/**
* To initialize singleton instance
*/
@Inject
private PreferenceManager mPreferenceManager;
@Inject
private DeviceInfo mDeviceInfo;
@Inject
private Handler mHandler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
在下面,我在 RoboAsyncTask 中有简单的 Web api 调用。
我是不是做错了什么...或者使用 RoboGuice 会导致不必要的对象创建。
【问题讨论】: