在一项活动中,我有2个繁重的任务.一种是使用默认行和值创建默认数据库.另一个是从数据库中获取所有数据,以在屏幕上填充UI元素.该页面上有100多个UI元素(统计数据).
现在,在一个Java代码文件中拥有两个AsyncTask类会不好吗?一种将用于创建默认数据库(仅在首次启动时激活),另一种将被多次使用,以从数据库中获取填充上述UI元素所需的所有数据.
我问的是不好的作法,而不是问是否可以将同一个AsyncTask类用于两个繁重的任务(通过if / else).
解决方法:
不.不要这样您还怎么做两个后台任务?
但是,我建议您为代码清晰起见,使用一种设计模式,从而使用发送到AsyncTask的请求代码以相同的方法来区分后台任务的结果.
就像是:
new AsyncTask1(this, 0).execute();new AsyncTask2(this, 1).execute();
然后,AsyncTask可以在Activity中回调相同的方法,并且您可以根据请求代码进行区分.
onBackgroundTaskCompleted(int requestCode, Object result) { if (requestCode == 0 ) { // do something } else { // do something else }
有关使用接口使用此模式的示例,请参见位于以下位置的异步类:https://github.com/sfarooq/A-droid-lib/
总结以上是内存溢出为你收集整理的android-一个文件中有两个AsyncTask内部类是不好的做法吗?全部内容,希望文章能够帮你解决android-一个文件中有两个AsyncTask内部类是不好的做法吗?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)