android – OrmLite多线程

android – OrmLite多线程,第1张

概述我需要不仅可以从活动访问帮助程序,还可以访问BroadcastReceivers和AsyncTasks.我是对的,如果我使用OrmLiteBaseActivity接近它就是使用这个方法: OpenHelperManager.getHelper(context, DatabaseHelper.class);OpenHelperManager.releaseHelper(); 里面没有Activit 我需要不仅可以从活动访问帮助程序,还可以访问broadcastReceivers和AsyncTasks.我是对的,如果我使用OrmliteBaseActivity接近它就是使用这个方法:

OpenHelperManager.getHelper(context,DatabaseHelper.class);OpenHelperManager.releaseHelper();

里面没有Activity类?

编辑:

我知道帮助生命周期由OrmliteBaseActivity处理.我要问的是如何处理活动之外的帮助生命周期.例如,我需要从broadcastReceiver或AsyncTask访问数据库.这是使用OpenHelperManager.getHelper(context,DatabaseHelper.class)实现这一目的的正确方法;当我在另一个线程中启动一些数据库时,以及OpenHelperManager.releaseHelper();当我完成所有数据库工作并且想要释放助手?

解决方法

Am I right,that if I am using OrmliteBaseActivity to approach it is to use this methods…

是的,使用OpenHelperManager.getHelper(…)和releaseHelper()方法是正确的方法.引用ORMLite Android docs:

If you do not want to extend the OrmliteBaseActivity and other base classes then you will need to duplicate their functionality. You will need to call OpenHelperManager.getHelper(Context context,Class openHelperClass) at the start of your code,save the helper and use it as much as you want,and then call OpenHelperManager.release() when you are done with it. You will probably want to have something like the following in your classes:

文档中的示例代码是:

private DatabaseHelper databaseHelper = null;@OverrIDeprotected voID onDestroy() {    super.onDestroy();    if (databaseHelper != null) {        OpenHelperManager.releaseHelper();        databaseHelper = null;    }}private DBHelper getHelper() {    if (databaseHelper == null) {        databaseHelper =            OpenHelperManager.getHelper(this,DatabaseHelper.class);    }    return databaseHelper;}
总结

以上是内存溢出为你收集整理的android – OrmLite多线程全部内容,希望文章能够帮你解决android – OrmLite多线程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1129275.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存