Remove legacy tasker plugin support

pull/574/head
Alex Baker 7 years ago
parent 792802c37e
commit 144c6ca3bc

@ -11,7 +11,6 @@ import org.tasks.locale.receiver.FireReceiver;
import org.tasks.notifications.NotificationClearedReceiver;
import org.tasks.receivers.BootCompletedReceiver;
import org.tasks.receivers.CompleteTaskReceiver;
import org.tasks.receivers.ListNotificationReceiver;
import org.tasks.receivers.MyPackageReplacedReceiver;
import org.tasks.receivers.PushReceiver;
import org.tasks.receivers.TeslaUnreadReceiver;
@ -39,8 +38,6 @@ public interface BroadcastComponent {
void inject(CompleteTaskReceiver completeTaskReceiver);
void inject(ListNotificationReceiver listNotificationReceiver);
void inject(BootCompletedReceiver bootCompletedReceiver);
void inject(TasksWidget tasksWidget);

@ -11,7 +11,6 @@ import org.tasks.locale.receiver.FireReceiver;
import org.tasks.notifications.NotificationClearedReceiver;
import org.tasks.receivers.BootCompletedReceiver;
import org.tasks.receivers.CompleteTaskReceiver;
import org.tasks.receivers.ListNotificationReceiver;
import org.tasks.receivers.MyPackageReplacedReceiver;
import org.tasks.receivers.PushReceiver;
import org.tasks.receivers.TeslaUnreadReceiver;
@ -39,8 +38,6 @@ public interface BroadcastComponent {
void inject(CompleteTaskReceiver completeTaskReceiver);
void inject(ListNotificationReceiver listNotificationReceiver);
void inject(BootCompletedReceiver bootCompletedReceiver);
void inject(TasksWidget tasksWidget);

@ -14,7 +14,6 @@ import org.tasks.BuildConfig;
import org.tasks.LocalBroadcastManager;
import org.tasks.R;
import org.tasks.analytics.Tracker;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.ApplicationScope;
import org.tasks.injection.ForApplication;
import org.tasks.preferences.Preferences;
@ -28,8 +27,6 @@ import javax.inject.Named;
import timber.log.Timber;
import static com.todoroo.andlib.utility.AndroidUtilities.isAppInstalled;
@ApplicationScope
public class PurchaseHelper implements IabHelper.OnIabSetupFinishedListener {
@ -62,18 +59,9 @@ public class PurchaseHelper implements IabHelper.OnIabSetupFinishedListener {
}
}
public boolean purchase(DialogBuilder dialogBuilder, final Activity activity, final String sku, final String pref, final int requestCode, final PurchaseHelperCallback callback) {
if (activity.getString(R.string.sku_tasker).equals(sku) && isAppInstalled(activity, "org.tasks.locale")) {
dialogBuilder.newMessageDialog(R.string.tasker_message)
.setCancelable(false)
.setPositiveButton(R.string.buy, (dialog, which) -> launchPurchaseFlow(activity, sku, pref, requestCode, callback))
.setNegativeButton(android.R.string.cancel, (dialog, which) -> callback.purchaseCompleted(false, sku))
.show();
return false;
} else {
launchPurchaseFlow(activity, sku, pref, requestCode, callback);
return true;
}
public boolean purchase(final Activity activity, final String sku, final String pref, final int requestCode, final PurchaseHelperCallback callback) {
launchPurchaseFlow(activity, sku, pref, requestCode, callback);
return true;
}
public void consumePurchases() {

@ -12,7 +12,6 @@ import org.tasks.notifications.NotificationClearedReceiver;
import org.tasks.receivers.BootCompletedReceiver;
import org.tasks.receivers.CompleteTaskReceiver;
import org.tasks.receivers.GoogleTaskPushReceiver;
import org.tasks.receivers.ListNotificationReceiver;
import org.tasks.receivers.MyPackageReplacedReceiver;
import org.tasks.receivers.PushReceiver;
import org.tasks.receivers.TeslaUnreadReceiver;
@ -42,8 +41,6 @@ public interface BroadcastComponent {
void inject(CompleteTaskReceiver completeTaskReceiver);
void inject(ListNotificationReceiver listNotificationReceiver);
void inject(BootCompletedReceiver bootCompletedReceiver);
void inject(TasksWidget tasksWidget);

@ -2,7 +2,6 @@
<resources>
<string name="gp_key">MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk8mXRE3dDXwtinUILCEzKjov2rxs3kZbLRzNrcjFWXpG9OEsUzRGLzqEN+WwibVuMRpZLj/+IxbU2sJWq/M0q+90rOhmXn46ZPeNyr77IqX2pWKIAWpzBoWq/mshRwtm9m1FIiGdBNlXrhSE7u3TGB5FuEuuSqKWvWzxeqQ7fHmlM04Lqrh1mN3FaMne8rWv+DWVHDbLrtnXBuC36glOAj17HxrzaE2v6Pv7Df3QefJ3rM1+0fAp/5jNInaP0qHAlG8WTbUmDShQ5kG3urbv3HLByyx6TSqhmNudXUK/6TusvIj50OptAG7x+UFYf956dD3diXhY3yoICvyFWx1sNwIDAQAB</string>
<string name="sku_themes">themes</string>
<string name="tasker_message">If you purchased the stand-alone Tasker plugin please send your Google Play Store transaction ID to support@tasks.org and you will receive a promo code for this in-app purchase. You can find the transaction ID in your Google Play Store order confirmation e-mail or by visiting wallet.google.com</string>
<string name="play_services_available">play_services_available</string>
<string name="warned_play_services">warned_play_services</string>
</resources>

@ -214,10 +214,6 @@
<receiver android:name=".receivers.PushReceiver" />
<receiver
android:name=".receivers.ListNotificationReceiver"
android:exported="true" />
<!-- widgets -->
<receiver
android:name=".widget.TasksWidget"

@ -304,13 +304,4 @@ public class AndroidUtilities {
}
return extension;
}
public static boolean isAppInstalled(Context context, String packageName) {
try {
context.getPackageManager().getPackageInfo(packageName, 0);
return true;
} catch (Exception ignored) {
return false;
}
}
}

@ -8,7 +8,6 @@ import org.tasks.billing.PurchaseHelper;
import org.tasks.billing.PurchaseHelperCallback;
import org.tasks.dialogs.ColorPickerDialog;
import org.tasks.dialogs.ColorPickerDialog.ColorPalette;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.ActivityComponent;
import org.tasks.injection.InjectingAppCompatActivity;
@ -26,7 +25,6 @@ public class ColorPickerActivity extends InjectingAppCompatActivity implements C
public static final String EXTRA_THEME_INDEX = "extra_index";
@Inject PurchaseHelper purchaseHelper;
@Inject DialogBuilder dialogBuilder;
@Override
protected void onCreate(Bundle savedInstanceState) {
@ -59,7 +57,7 @@ public class ColorPickerActivity extends InjectingAppCompatActivity implements C
@Override
public void initiateThemePurchase() {
purchaseHelper.purchase(dialogBuilder, this, getString(R.string.sku_themes), getString(R.string.p_purchased_themes), REQUEST_PURCHASE, this);
purchaseHelper.purchase(this, getString(R.string.sku_themes), getString(R.string.p_purchased_themes), REQUEST_PURCHASE, this);
}
@Override

@ -11,7 +11,6 @@ import org.tasks.R;
import org.tasks.activities.FilterSelectionActivity;
import org.tasks.billing.PurchaseHelper;
import org.tasks.billing.PurchaseHelperCallback;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.ActivityComponent;
import org.tasks.injection.InjectingPreferenceActivity;
import org.tasks.preferences.DefaultFilterProvider;
@ -29,7 +28,6 @@ public class DashClockSettings extends InjectingPreferenceActivity implements Pu
@Inject DefaultFilterProvider defaultFilterProvider;
@Inject LocalBroadcastManager localBroadcastManager;
@Inject PurchaseHelper purchaseHelper;
@Inject DialogBuilder dialogBuilder;
private boolean purchaseInitiated;
@ -53,7 +51,7 @@ public class DashClockSettings extends InjectingPreferenceActivity implements Pu
refreshPreferences();
if (!preferences.hasPurchase(R.string.p_purchased_dashclock) && !purchaseInitiated) {
purchaseHelper.purchase(dialogBuilder, this, getString(R.string.sku_dashclock), getString(R.string.p_purchased_dashclock), REQUEST_PURCHASE, this);
purchaseHelper.purchase(this, getString(R.string.sku_dashclock), getString(R.string.p_purchased_dashclock), REQUEST_PURCHASE, this);
purchaseInitiated = true;
}
}

@ -37,7 +37,7 @@ public class DonationDialog extends InjectingNativeDialogFragment {
//noinspection ResultOfMethodCallIgnored
matcher.matches();
String sku = String.format(java.util.Locale.ENGLISH, "%03d", Integer.parseInt(matcher.group(1)));
purchaseHelper.purchase(dialogBuilder, getActivity(), sku, null, BasicPreferences.REQUEST_PURCHASE, (BasicPreferences) getActivity());
purchaseHelper.purchase(getActivity(), sku, null, BasicPreferences.REQUEST_PURCHASE, (BasicPreferences) getActivity());
})
.setNegativeButton(android.R.string.cancel, null)
.show();

@ -11,7 +11,6 @@ import org.tasks.R;
import org.tasks.activities.FilterSelectionActivity;
import org.tasks.billing.PurchaseHelper;
import org.tasks.billing.PurchaseHelperCallback;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.ActivityComponent;
import org.tasks.locale.bundle.PluginBundleValues;
import org.tasks.preferences.DefaultFilterProvider;
@ -29,7 +28,6 @@ public final class TaskerSettingsActivity extends AbstractFragmentPluginAppCompa
@Inject Preferences preferences;
@Inject DefaultFilterProvider defaultFilterProvider;
@Inject PurchaseHelper purchaseHelper;
@Inject DialogBuilder dialogBuilder;
private Bundle previousBundle;
private Filter filter;
@ -59,7 +57,7 @@ public final class TaskerSettingsActivity extends AbstractFragmentPluginAppCompa
refreshPreferences();
if (!preferences.hasPurchase(R.string.p_purchased_tasker) && !purchaseInitiated) {
purchaseInitiated = purchaseHelper.purchase(dialogBuilder, this, getString(R.string.sku_tasker), getString(R.string.p_purchased_tasker), REQUEST_PURCHASE, this);
purchaseInitiated = purchaseHelper.purchase(this, getString(R.string.sku_tasker), getString(R.string.p_purchased_tasker), REQUEST_PURCHASE, this);
}
}

@ -58,9 +58,9 @@ public class BasicPreferences extends InjectingPreferenceActivity implements
private static final int REQUEST_THEME_PICKER = 10002;
private static final int REQUEST_COLOR_PICKER = 10003;
private static final int REQUEST_ACCENT_PICKER = 10004;
public static final int REQUEST_PURCHASE = 10005;
private static final int REQUEST_CODE_BACKUP_DIR = 10005;
private static final int REQUEST_PICKER = 10006;
public static final int REQUEST_PURCHASE = 10007;
@Inject Tracker tracker;
@Inject Preferences preferences;
@ -147,7 +147,7 @@ public class BasicPreferences extends InjectingPreferenceActivity implements
findPreference(R.string.p_purchased_themes).setOnPreferenceChangeListener((preference, newValue) -> {
if (newValue != null && (boolean) newValue && !preferences.hasPurchase(R.string.p_purchased_themes)) {
purchaseHelper.purchase(dialogBuilder, BasicPreferences.this, getString(R.string.sku_themes), getString(R.string.p_purchased_themes), REQUEST_PURCHASE, BasicPreferences.this);
purchaseHelper.purchase(BasicPreferences.this, getString(R.string.sku_themes), getString(R.string.p_purchased_themes), REQUEST_PURCHASE, BasicPreferences.this);
}
return false;
});
@ -155,7 +155,7 @@ public class BasicPreferences extends InjectingPreferenceActivity implements
findPreference(R.string.p_tesla_unread_enabled).setOnPreferenceChangeListener((preference, newValue) -> {
if (newValue != null) {
if ((boolean) newValue && !preferences.hasPurchase(R.string.p_purchased_tesla_unread)) {
purchaseHelper.purchase(dialogBuilder, BasicPreferences.this, getString(R.string.sku_tesla_unread), getString(R.string.p_purchased_tesla_unread), REQUEST_PURCHASE, BasicPreferences.this);
purchaseHelper.purchase(BasicPreferences.this, getString(R.string.sku_tesla_unread), getString(R.string.p_purchased_tesla_unread), REQUEST_PURCHASE, BasicPreferences.this);
} else {
teslaUnreadReceiver.setEnabled((boolean) newValue);
return true;
@ -166,14 +166,14 @@ public class BasicPreferences extends InjectingPreferenceActivity implements
findPreference(R.string.p_purchased_tasker).setOnPreferenceChangeListener((preference, newValue) -> {
if (newValue != null && (boolean) newValue && !preferences.hasPurchase(R.string.p_purchased_tasker)) {
purchaseHelper.purchase(dialogBuilder, BasicPreferences.this, getString(R.string.sku_tasker), getString(R.string.p_purchased_tasker), REQUEST_PURCHASE, BasicPreferences.this);
purchaseHelper.purchase(BasicPreferences.this, getString(R.string.sku_tasker), getString(R.string.p_purchased_tasker), REQUEST_PURCHASE, BasicPreferences.this);
}
return false;
});
findPreference(R.string.p_purchased_dashclock).setOnPreferenceChangeListener((preference, newValue) -> {
if (newValue != null && (boolean) newValue && !preferences.hasPurchase(R.string.p_purchased_dashclock)) {
purchaseHelper.purchase(dialogBuilder, BasicPreferences.this, getString(R.string.sku_dashclock), getString(R.string.p_purchased_dashclock), REQUEST_PURCHASE, BasicPreferences.this);
purchaseHelper.purchase(BasicPreferences.this, getString(R.string.sku_dashclock), getString(R.string.p_purchased_dashclock), REQUEST_PURCHASE, BasicPreferences.this);
}
return false;
});

@ -1,54 +0,0 @@
package org.tasks.receivers;
import android.content.Context;
import android.content.Intent;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.api.Filter;
import org.tasks.Notifier;
import org.tasks.analytics.Tracker;
import org.tasks.analytics.Tracking;
import org.tasks.injection.BroadcastComponent;
import org.tasks.injection.InjectingBroadcastReceiver;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import javax.inject.Inject;
import timber.log.Timber;
public class ListNotificationReceiver extends InjectingBroadcastReceiver {
private static final ExecutorService executorService = Executors.newSingleThreadExecutor();
private static final String EXTRA_FILTER_TITLE = "extra_filter_title";
private static final String EXTRA_FILTER_QUERY = "extra_filter_query";
private static final String EXTRA_FILTER_VALUES = "extra_filter_values";
@Inject Notifier notifier;
@Inject Tracker tracker;
@Override
public void onReceive(Context context, final Intent intent) {
super.onReceive(context, intent);
Timber.i("onReceive(%s, %s)", context, intent);
tracker.reportEvent(Tracking.Events.LEGACY_TASKER_TRIGGER);
executorService.execute(() -> {
String title = intent.getStringExtra(EXTRA_FILTER_TITLE);
String query = intent.getStringExtra(EXTRA_FILTER_QUERY);
String extras = intent.getStringExtra(EXTRA_FILTER_VALUES);
notifier.triggerFilterNotification(
new Filter(title, query, AndroidUtilities.contentValuesFromSerializedString(extras)));
});
}
@Override
protected void inject(BroadcastComponent component) {
component.inject(this);
}
}
Loading…
Cancel
Save