我已开始在其中一个应用程序中使用roboguice。为了进行比较,我开始使用带有RoboActivity的闪屏和三个RoboAsyncTasks。当我使用普通的Activity开发它并且正常的线程传递了上下文和处理程序时,在整个启动活动执行期间甚至没有调用GC。 但是使用RoboActivity和@Context,3个依赖注入POJO和3个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结果用于不必要的对象创作。
答案 0 :(得分:0)
一些研究表明,注释使用起来不是很好。我个人认为roboguice正在添加大量的后端代码,我们可以手动完成这些代码。所以从我的构建中删除了roboguice并且行为比以前更好。