X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;ds=sidebyside;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fasynctasks%2FPopulateBlocklists.java;h=e9e151f5df069c77273e6860c2995dcfb9cea4bb;hb=d4f39c36beb5e6c3568a1e075274ad66defd8e8e;hp=7a7fc4da126af15f92cad38ee273dff90b5e5a51;hpb=c1c9a0bf83ecef671356d554bb6e4927392b1cc8;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/asynctasks/PopulateBlocklists.java b/app/src/main/java/com/stoutner/privacybrowser/asynctasks/PopulateBlocklists.java index 7a7fc4da..e9e151f5 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/asynctasks/PopulateBlocklists.java +++ b/app/src/main/java/com/stoutner/privacybrowser/asynctasks/PopulateBlocklists.java @@ -1,5 +1,5 @@ /* - * Copyright © 2019 Soren Stoutner . + * Copyright © 2019,2021 Soren Stoutner . * * This file is part of Privacy Browser . * @@ -44,11 +44,11 @@ public class PopulateBlocklists extends AsyncTask contextWeakReference; - private WeakReference activityWeakReference; + private final WeakReference contextWeakReference; + private final WeakReference activityWeakReference; // The public constructor. public PopulateBlocklists(Context context, Activity activity) { @@ -88,6 +88,11 @@ public class PopulateBlocklists extends AsyncTask>> doInBackground(Void... none) { + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + // Get a handle for the context. Context context = contextWeakReference.get(); @@ -105,6 +110,11 @@ public class PopulateBlocklists extends AsyncTask> easyList = blocklistHelper.parseBlocklist(context.getAssets(), "blocklists/easylist.txt"); + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + // Update the progress. publishProgress(context.getString(R.string.loading_easyprivacy)); @@ -112,6 +122,12 @@ public class PopulateBlocklists extends AsyncTask> easyPrivacy = blocklistHelper.parseBlocklist(context.getAssets(), "blocklists/easyprivacy.txt"); + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + + // Update the progress. publishProgress(context.getString(R.string.loading_fanboys_annoyance_list)); @@ -119,6 +135,12 @@ public class PopulateBlocklists extends AsyncTask> fanboysAnnoyanceList = blocklistHelper.parseBlocklist(context.getAssets(), "blocklists/fanboy-annoyance.txt"); + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + + // Update the progress. publishProgress(context.getString(R.string.loading_fanboys_social_blocking_list)); @@ -126,6 +148,25 @@ public class PopulateBlocklists extends AsyncTask> fanboysSocialList = blocklistHelper.parseBlocklist(context.getAssets(), "blocklists/fanboy-social.txt"); + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + + + + // Update the progress. + publishProgress(context.getString(R.string.loading_ultralist)); + + // Populate UltraList. + ArrayList> ultraList = blocklistHelper.parseBlocklist(context.getAssets(), "blocklists/ultralist.txt"); + + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + + // Update the progress. publishProgress(context.getString(R.string.loading_ultraprivacy)); @@ -133,12 +174,19 @@ public class PopulateBlocklists extends AsyncTask> ultraPrivacy = blocklistHelper.parseBlocklist(context.getAssets(), "blocklists/ultraprivacy.txt"); + // Exit the AsyncTask if the app has been restarted. + if (isCancelled()) { + return null; + } + + // Populate the combined array list. combinedBlocklists.add(easyList); combinedBlocklists.add(easyPrivacy); combinedBlocklists.add(fanboysAnnoyanceList); combinedBlocklists.add(fanboysSocialList); + combinedBlocklists.add(ultraList); combinedBlocklists.add(ultraPrivacy); }