diff --git a/app/src/generic/java/org/tasks/billing/BillingClientImpl.java b/app/src/generic/java/org/tasks/billing/BillingClientImpl.java index 29f5a4fc5..255ebf208 100644 --- a/app/src/generic/java/org/tasks/billing/BillingClientImpl.java +++ b/app/src/generic/java/org/tasks/billing/BillingClientImpl.java @@ -3,41 +3,23 @@ package org.tasks.billing; import android.app.Activity; import android.content.Context; import androidx.annotation.Nullable; -import androidx.lifecycle.LifecycleOwner; -import androidx.lifecycle.Observer; -import java.util.List; -import javax.inject.Inject; import org.tasks.analytics.Tracker; public class BillingClientImpl implements BillingClient { - @Inject + + public static final String TYPE_SUBS = ""; + public BillingClientImpl(Context context, Inventory inventory, Tracker tracker) {} @Override public void queryPurchases() {} - @Override - public int getErrorMessage() { - return 0; - } - @Override public void initiatePurchaseFlow( Activity activity, String sku, String skuType, @Nullable String oldSku) {} @Override - public void addPurchaseCallback(OnPurchasesUpdated onPurchasesUpdated) { - - } - - @Override - public void querySkuDetails() {} - - @Override - public void observeSkuDetails( - LifecycleOwner owner, - Observer> subscriptionObserver, - Observer> iapObserver) {} + public void addPurchaseCallback(OnPurchasesUpdated onPurchasesUpdated) {} @Override public void consume(String sku) {} diff --git a/app/src/generic/java/org/tasks/billing/Purchase.java b/app/src/generic/java/org/tasks/billing/Purchase.java index 0a0bcb15a..4709dab9e 100644 --- a/app/src/generic/java/org/tasks/billing/Purchase.java +++ b/app/src/generic/java/org/tasks/billing/Purchase.java @@ -2,7 +2,7 @@ package org.tasks.billing; public class Purchase { - public Purchase(String json) {} + public Purchase(@SuppressWarnings("unused") String json) {} public String getSku() { return null; @@ -24,7 +24,7 @@ public class Purchase { return false; } - public boolean isProSubscription() { + boolean isProSubscription() { return false; } } diff --git a/app/src/generic/java/org/tasks/billing/SkuDetails.java b/app/src/generic/java/org/tasks/billing/SkuDetails.java deleted file mode 100644 index d99734a45..000000000 --- a/app/src/generic/java/org/tasks/billing/SkuDetails.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.tasks.billing; - -public class SkuDetails { - - static final String SKU_PRO = ""; - static final String TYPE_SUBS = ""; - static final String TYPE_INAPP = ""; - - public String getSku() { - return null; - } - - public String getTitle() { - return null; - } - - public String getPrice() { - return null; - } - - public String getDescription() { - return null; - } - - public String getSkuType() { - return null; - } -} diff --git a/app/src/googleplay/java/org/tasks/billing/BillingClientImpl.java b/app/src/googleplay/java/org/tasks/billing/BillingClientImpl.java index 1e5edd526..201f77a7c 100644 --- a/app/src/googleplay/java/org/tasks/billing/BillingClientImpl.java +++ b/app/src/googleplay/java/org/tasks/billing/BillingClientImpl.java @@ -1,20 +1,11 @@ package org.tasks.billing; -import static com.google.common.collect.Iterables.filter; -import static com.google.common.collect.Iterables.transform; import static com.google.common.collect.Lists.newArrayList; -import static com.google.common.collect.Lists.transform; import static com.todoroo.andlib.utility.AndroidUtilities.assertMainThread; -import static org.tasks.billing.Inventory.SKU_TASKER; -import static org.tasks.billing.Inventory.SKU_THEMES; -import static org.tasks.billing.Inventory.SKU_VIP; import android.app.Activity; import android.content.Context; import androidx.annotation.Nullable; -import androidx.lifecycle.LifecycleOwner; -import androidx.lifecycle.MutableLiveData; -import androidx.lifecycle.Observer; import com.android.billingclient.api.BillingClient.BillingResponse; import com.android.billingclient.api.BillingClient.FeatureType; import com.android.billingclient.api.BillingClient.SkuType; @@ -23,17 +14,13 @@ import com.android.billingclient.api.BillingFlowParams.ProrationMode; import com.android.billingclient.api.ConsumeResponseListener; import com.android.billingclient.api.Purchase.PurchasesResult; import com.android.billingclient.api.PurchasesUpdatedListener; -import com.android.billingclient.api.SkuDetailsParams; import com.google.common.base.Joiner; -import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import io.reactivex.Single; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.schedulers.Schedulers; import java.util.List; -import javax.inject.Inject; import org.tasks.BuildConfig; -import org.tasks.R; import org.tasks.analytics.Tracker; import org.tasks.injection.ForApplication; import timber.log.Timber; @@ -41,19 +28,14 @@ import timber.log.Timber; @SuppressWarnings("all") public class BillingClientImpl implements BillingClient, PurchasesUpdatedListener { - private static final List DEBUG_SKUS = ImmutableList.of(SKU_THEMES, SKU_TASKER, SKU_VIP); + public static final String TYPE_SUBS = SkuType.SUBS; - private final MutableLiveData> skuDetails = new MutableLiveData<>(); private final Inventory inventory; private final Tracker tracker; - MutableLiveData> subscriptions = new MutableLiveData<>(); - MutableLiveData> iaps = new MutableLiveData<>(); private com.android.billingclient.api.BillingClient billingClient; private boolean connected; - private int billingClientResponseCode = -1; private OnPurchasesUpdated onPurchasesUpdated; - @Inject public BillingClientImpl(@ForApplication Context context, Inventory inventory, Tracker tracker) { this.inventory = inventory; this.tracker = tracker; @@ -188,15 +170,6 @@ public class BillingClientImpl implements BillingClient, PurchasesUpdatedListene this.onPurchasesUpdated = onPurchasesUpdated; } - public void destroy() { - Timber.d("Destroying the manager."); - - if (billingClient != null && billingClient.isReady()) { - billingClient.endConnection(); - billingClient = null; - } - } - private void startServiceConnection(final Runnable executeOnSuccess) { billingClient.startConnection( new com.android.billingclient.api.BillingClientStateListener() { @@ -210,7 +183,6 @@ public class BillingClientImpl implements BillingClient, PurchasesUpdatedListene executeOnSuccess.run(); } } - billingClientResponseCode = billingResponseCode; } @Override @@ -246,63 +218,6 @@ public class BillingClientImpl implements BillingClient, PurchasesUpdatedListene return responseCode == BillingResponse.OK; } - @Override - public void observeSkuDetails( - LifecycleOwner owner, - Observer> subscriptionObserver, - Observer> iapObserver) { - subscriptions.observe(owner, subscriptionObserver); - iaps.observe(owner, iapObserver); - } - - @Override - public void querySkuDetails() { - executeServiceRequest(this::fetchSubscription); - } - - private void fetchSubscription() { - billingClient.querySkuDetailsAsync( - SkuDetailsParams.newBuilder().setSkusList(SkuDetails.SKU_SUBS).setType(SkuType.SUBS).build(), - new com.android.billingclient.api.SkuDetailsResponseListener() { - @Override - public void onSkuDetailsResponse( - int responseCode, List skuDetailsList) { - if (responseCode == BillingResponse.OK) { - subscriptions.setValue(transform(skuDetailsList, SkuDetails::new)); - } else { - Timber.e( - "Query for subs failed: %s (%s)", - BillingResponseToString(responseCode), responseCode); - } - - executeServiceRequest(BillingClientImpl.this::fetchIAPs); - } - }); - } - - private void fetchIAPs() { - Iterable purchased = - transform(filter(inventory.getPurchases(), Purchase::isIap), Purchase::getSku); - billingClient.querySkuDetailsAsync( - SkuDetailsParams.newBuilder() - .setSkusList(BuildConfig.DEBUG ? DEBUG_SKUS : newArrayList(purchased)) - .setType(SkuType.INAPP) - .build(), - new com.android.billingclient.api.SkuDetailsResponseListener() { - @Override - public void onSkuDetailsResponse( - int responseCode, List skuDetailsList) { - if (responseCode == BillingResponse.OK) { - iaps.setValue(transform(skuDetailsList, SkuDetails::new)); - } else { - Timber.e( - "Query for iaps failed: %s (%s)", - BillingResponseToString(responseCode), responseCode); - } - } - }); - } - @Override public void consume(String sku) { if (!BuildConfig.DEBUG) { @@ -322,11 +237,4 @@ public class BillingClientImpl implements BillingClient, PurchasesUpdatedListene billingClient.consumeAsync( inventory.getPurchase(sku).getPurchaseToken(), onConsumeListener)); } - - @Override - public int getErrorMessage() { - return billingClientResponseCode == BillingResponse.BILLING_UNAVAILABLE - ? R.string.error_billing_unavailable - : R.string.error_billing_default; - } } diff --git a/app/src/googleplay/java/org/tasks/billing/Purchase.java b/app/src/googleplay/java/org/tasks/billing/Purchase.java index 0bb7b5556..9dade75b0 100644 --- a/app/src/googleplay/java/org/tasks/billing/Purchase.java +++ b/app/src/googleplay/java/org/tasks/billing/Purchase.java @@ -38,10 +38,6 @@ public class Purchase { return purchase.getPurchaseToken(); } - boolean isIap() { - return !SkuDetails.SKU_SUBS.contains(getSku()); - } - boolean isProSubscription() { return PATTERN.matcher(getSku()).matches(); } diff --git a/app/src/googleplay/java/org/tasks/billing/SkuDetails.java b/app/src/googleplay/java/org/tasks/billing/SkuDetails.java deleted file mode 100644 index 80c0c3cfb..000000000 --- a/app/src/googleplay/java/org/tasks/billing/SkuDetails.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.tasks.billing; - -import com.android.billingclient.api.BillingClient.SkuType; -import com.google.common.collect.ImmutableList; -import java.util.List; - -public class SkuDetails { - - static final String SKU_PRO = "annual_499"; - static final List SKU_SUBS = ImmutableList.of(SKU_PRO); - - static final String TYPE_INAPP = SkuType.INAPP; - static final String TYPE_SUBS = SkuType.SUBS; - - private final com.android.billingclient.api.SkuDetails skuDetails; - - SkuDetails(com.android.billingclient.api.SkuDetails skuDetails) { - this.skuDetails = skuDetails; - } - - public String getSku() { - return skuDetails.getSku(); - } - - public String getTitle() { - return skuDetails.getTitle(); - } - - public String getPrice() { - return skuDetails.getPrice(); - } - - public String getDescription() { - return skuDetails.getDescription(); - } - - public String getSkuType() { - return skuDetails.getType(); - } -} diff --git a/app/src/main/java/org/tasks/billing/BillingClient.java b/app/src/main/java/org/tasks/billing/BillingClient.java index 596622792..253bfa73b 100644 --- a/app/src/main/java/org/tasks/billing/BillingClient.java +++ b/app/src/main/java/org/tasks/billing/BillingClient.java @@ -2,22 +2,10 @@ package org.tasks.billing; import android.app.Activity; import androidx.annotation.Nullable; -import androidx.lifecycle.LifecycleOwner; -import androidx.lifecycle.Observer; -import java.util.List; public interface BillingClient { void queryPurchases(); - void querySkuDetails(); - - void observeSkuDetails( - LifecycleOwner owner, - Observer> subscriptionObserver, - Observer> iapObserver); - - int getErrorMessage(); - void consume(String sku); void initiatePurchaseFlow(Activity activity, String sku, String skuType, @Nullable String oldSku); diff --git a/app/src/main/java/org/tasks/billing/Inventory.java b/app/src/main/java/org/tasks/billing/Inventory.java index 860de9260..a2d04c47b 100644 --- a/app/src/main/java/org/tasks/billing/Inventory.java +++ b/app/src/main/java/org/tasks/billing/Inventory.java @@ -1,10 +1,6 @@ package org.tasks.billing; -import static java.util.Collections.singletonList; - -import com.google.common.collect.ImmutableList; import java.util.HashMap; -import java.util.List; import java.util.Map; import javax.inject.Inject; import org.tasks.BuildConfig; @@ -17,7 +13,7 @@ import timber.log.Timber; @ApplicationScope public class Inventory { - static final String SKU_VIP = "vip"; + private static final String SKU_VIP = "vip"; public static final String SKU_TASKER = "tasker"; public static final String SKU_THEMES = "themes"; @@ -46,10 +42,6 @@ public class Inventory { purchases.clear(); } - public void add(Purchase purchase) { - add(singletonList(purchase)); - } - public void add(Iterable purchases) { for (Purchase purchase : purchases) { verifyAndAdd(purchase); @@ -76,10 +68,6 @@ public class Inventory { return hasPro() || purchases.containsKey(SKU_THEMES); } - public List getPurchases() { - return ImmutableList.copyOf(purchases.values()); - } - public Purchase getSubscription() { return subscription; } @@ -92,7 +80,7 @@ public class Inventory { || (BuildConfig.DEBUG && preferences.getBoolean(R.string.p_debug_pro, false)); } - public boolean purchased(String sku) { + boolean purchased(String sku) { return purchases.containsKey(sku); } diff --git a/app/src/main/java/org/tasks/billing/PurchaseActivity.kt b/app/src/main/java/org/tasks/billing/PurchaseActivity.kt index 5e19c314c..afbee5f25 100644 --- a/app/src/main/java/org/tasks/billing/PurchaseActivity.kt +++ b/app/src/main/java/org/tasks/billing/PurchaseActivity.kt @@ -84,10 +84,10 @@ class PurchaseActivity : ThemedInjectingAppCompatActivity(), OnPurchasesUpdated, fun subscribe() { if (currentSubscriptionSelected() && currentSubscription?.isCanceled == true) { billingClient.initiatePurchaseFlow( - this, currentSubscription!!.sku, SkuDetails.TYPE_SUBS, null) + this, currentSubscription!!.sku, BillingClientImpl.TYPE_SUBS, null) } else { billingClient.initiatePurchaseFlow(this, String.format("%s_%02d", if (isMonthly()) "monthly" else "annual", adapter.selected), - SkuDetails.TYPE_SUBS, + BillingClientImpl.TYPE_SUBS, currentSubscription?.sku) } billingClient.addPurchaseCallback(this) diff --git a/app/src/main/res/values-bg-rBG/strings.xml b/app/src/main/res/values-bg-rBG/strings.xml index dd2178dca..357e18701 100644 --- a/app/src/main/res/values-bg-rBG/strings.xml +++ b/app/src/main/res/values-bg-rBG/strings.xml @@ -446,9 +446,6 @@ Обнови покупки Подпиши се Повече информация - Таксуването не е налице. Уверете се, че приложението ви в Google Play -е настроено правилно - Таксуването не е налице. Моля, проверете устройството си. Относно Dashclock разширение Изисква pro абонамент diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 70342a6fb..1d713b604 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -458,8 +458,6 @@ Obnovit nákupy Odebírat Více informací - Platby nedostupné. Zkontrolujte, jestli aplikace Google Play funguje správně - Platby nedostupné. Prosím, zkotrojute Vaše zařízení. O aplikaci Aplikace Tasks je svobodný software s otevřeným zdrojovým kódem licencovaný pod GNU General Public License v3.0 Ikona diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 39998f8c5..77fd68a70 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -437,8 +437,6 @@ Einkäufe aktualisieren Abonnieren Weitere Informationen - Abrechnung nicht verfügbar. Stelle sicher, dass deine Google Play App korrekt installiert ist - Abrechnung nicht verfügbar. Bitte überprüfe dein Gerät. Über Tasks ist freie, quelloffene Software, die unter der GNU General Public License v3.0 lizenziert ist Dashclock-Erweiterung diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 21a19e1a9..3153cf600 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -445,8 +445,6 @@ Actualizar los acquisiciones Suscribe Más información - Pago no disponible. Asegúrese de que Google Play está bien configurado - Pago no disponible. Comprueba su dispositivo. Sobre Tasks es software libre de código abierto, licenciado bajo la GNU General Public License v3.0 Extensión Dashclock diff --git a/app/src/main/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml index 1636d07ef..3909402da 100644 --- a/app/src/main/res/values-eu/strings.xml +++ b/app/src/main/res/values-eu/strings.xml @@ -453,8 +453,6 @@ Freskatu erosketak Harpidetu Informazio gehiago - Fakturazioa ez dago eskuragarri. Egiaztatu Google Play ondo ezarrita dagoela - Fakturazioa ez dago eskuragarri. Egiaztatu zure gailua. Honi buruz Tasks aplikazioa software librea eta kode irekikoa da, GNU General Public License v3.0 lizentziapean Dashclock luzapena diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 952ef5b7d..cabe65ed1 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -427,9 +427,6 @@ Rafraîchir les achats S\'abonner Plus d\'info - Facturation indisponible. Assurez-vous que votre application Google Play -est configuré correctement - Achat indisponible. Veuillez vérifier votre appareil. À propos Tasks est un logiciel libre et open-source, licencié selon le GNU General Public License v3.0 Extension Dashclock diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index d3f34b496..e6eb70727 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -446,8 +446,6 @@ Vásárlások frissítése Előfizetés További információk - Számlázási rendszer nem elérhető. Ellenőrizze a Google Play alkalmazás beállításait. - Számlázási rendszer nem elérhető. Ellenőrizze az eszközét. Névjegy A Tasks nyílt forráskódú program, a GNU Általános Nyilvános Licenc v3.0 alapján licenszelve Dashclock kiterjesztés diff --git a/app/src/main/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml index 181caa0d8..780180cec 100644 --- a/app/src/main/res/values-id/strings.xml +++ b/app/src/main/res/values-id/strings.xml @@ -427,7 +427,6 @@ Sinkronisasi yang berbasis pada standar internet publik Sinkronisasi dengan enkripsi ujung-ke-ujung dan bersumber terbuka Wallpaper - Billing tidak tersedia. Silakan periksa perangkat anda. Sandi tidak sama Konfirmasi sandi enkripsi Tampilkan pengaturan lanjutan diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 54379a3d9..9c3a749e8 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -444,8 +444,6 @@ Aggiorna acquisti Sottoscrivi Più informazioni - Fatturazione non disponibile. Verifica che Google Play sia impostato correttamente - Modalità addebito non disponibile. Verifica il tuo dispositivo A riguardo Tasks è un software gratuito e open-source, rilasciato sotto licenza GNU General Public License v3.0 Estensione Dashclock diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml index 01cdeabd2..004389a14 100644 --- a/app/src/main/res/values-iw/strings.xml +++ b/app/src/main/res/values-iw/strings.xml @@ -482,9 +482,6 @@ עדכן רכישות רישום כמנוי עוד מידע - חיוב לא זמין. -וודא שיישומון Google Play מוגדר נכון - חיוב לא זמין. בדוק את מכשירך. אודות Tasks הוא חופשי ובקוד פתוח, מוגש בתנאי הרישיון הציבורי הכללי של GNU בגרסה 3.0 הרחבת Dashclock diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index ad8a8e4b1..06c761203 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -443,9 +443,6 @@ 購入を更新 購入 詳細情報 - 支払が利用できません。 Google Play アプリが -正しく設定されていることを確認してください - 支払がりようできません。お使いの端末を確認してください アプリについて Tasks は、GNU General Public License v3.0 でライセンスされる、自由オープンソースソフトウェアです Dashclock 拡張 diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index dfa564ecd..021b8b3c0 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -445,8 +445,6 @@ 구매 새로고침 신청 추가정보 - 결제가 불가합니다. 구글플레이 앱의 설정이 올바른지 확인하십시오 - 결제가 불가합니다. 기기를 확인하십시오. 정보 Tasks는 GNU 일반공중사용권 3.0 (GPLv3)에 따라 사용이 허가된 리브레 오픈소스 소프트웨어입니다 Dashclock 확장프로그램 diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml index 845d4d544..47f7267bf 100644 --- a/app/src/main/res/values-lt/strings.xml +++ b/app/src/main/res/values-lt/strings.xml @@ -442,9 +442,6 @@ Atnaujinti pirkimus Prenumeruoti Daugiau informacijos - Sąskaita negalima. Įsitikinkite, kad Google Play programėlė -sukonfigūruota tinkamai. - Sąskaita negalima. Patikrinkite savo įrenginį. Apie Tasks yra nemokama ir atviro kodo programinė įranga, licencijuota pagal GNU General Public License v3.0 licenciją. Dashclock plėtinys diff --git a/app/src/main/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml index 12cc77686..32f2cddfa 100644 --- a/app/src/main/res/values-nb/strings.xml +++ b/app/src/main/res/values-nb/strings.xml @@ -453,8 +453,6 @@ Gjenoppfrisk kjøp Abonner Mer info - Fakturering utilgjengelig. Forsikre deg om at ditt Google Play-program er satt opp rett - Fakturering utilgjengelig. Sjekk din enhet. Om Tasks er fri programvare, lisensiert med GNU General Public-lisens v3.0 Dashclock-utvidelse diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 547c1917c..2847a70c2 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -435,8 +435,6 @@ Vernieuw aankopen Aanmelden Meer informatie - Betaling onmogelijk. Zorg dat de Google Pay app goed is ingesteld - Betaling onmogelijk. Controleer je apparaat. Over Tasks is vrije open-source software, gelicensieerd onder de GNU General Public License v3.0 Dashclock extentie diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 76e719a58..0eb7a3011 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -456,8 +456,6 @@ Odśwież zakupy Zasubskrybuj Więcej informacji - Płatność niedostępna. Upewnij się, że aplikacja Google Play jest poprawnie skonfigurowana. - Płatność niedostępna. Sprawdź swoje urządzenie. O Tasks jest aplikacją darmową/libre z otwartym kodem źródłowym, na licencji GNU General Public License v3.0 Wymaga subskrypcji pro diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 93aad6222..7599ae646 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -443,9 +443,6 @@ Atualizar compras Subscrever Mais informações - Faturamento indisponível. Tenha certeza que seu -aplicativo Google Play está configurado corretamente - Faturamento indisponível. Por favor cheque seu dispositivo Sobre Tasks é um software livre e de código aberto licenciado sob a Licença Pública Geral GNU v3.0 Extensão Dashclock diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 6208c1e17..ba5b1f718 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -464,8 +464,6 @@ Обновить покупки Подписаться Подробнее - Счёт невозможен. Убедитесь, что приложение Google Play настроено правильно - Оплата невозможна. Проверьте ваше устройство. О программе Tasks является свободным программным обеспечением с открытым исходным кодом, лицензированным под GNU General Public License v3.0 Расширение для Dashclock diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 774199ce6..814fb9d28 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -442,9 +442,6 @@ Obnoviť nákupy Prihlásiť sa Podrobnosti - Platba nedostupná. Uistite sa, že aplikácia -Google Play je správne nastavená - Platba nedostupná. Skontrolujte svoje zariadenie. O Úlohy je bezplatný softvér s otvoreným kódom pod GNU Public Licence v3.0 Rozšírenie Dashclock diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index 337843d0d..553522588 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -446,8 +446,6 @@ Uppdatera inköp Prenumerera Mer info - Faktureringen är inte tillgänglig. Kontrollera att Google Play-appen har rätt inställning - Faktureringen är inte tillgänglig. Kontrollera din enhet. Om Tasks är Libre Open-Source programvara, licensierad under GNU General Public License v 3.0 DashClock extension diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index f51706eb5..c0621e4e9 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -448,8 +448,6 @@ Satın alımları yenile Abone ol Daha çok bilgi - Faturalama kullanılamıyor. Google Play uygulamanızın doğru kurulduğundan emin olun - Faturalama kullanılabilir değil. Lütfen aygıtınızı denetleyin. Hakkında Tasks özgür açık kaynaklı yazılımdır, GNU Genel Kamu Lisansı sürüm 3.0 altında lisanslanmıştır Dashclock eklentisi diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index d981325e5..46c7d82ed 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -461,8 +461,6 @@ Оновити покупки Підписатися Більше інформації - Оплата недоступна. Перевірте налаштування Google Play - Оплата недоступна. Перевірте ваш пристрій. Про Tasks Tasks є програмою з відкритим кодом з ліцензією GNU General Public License v3.0 Розширення Dashclock diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index d9b516fff..ca1c4a62e 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -428,8 +428,6 @@ 刷新购买 订购 更多信息 - 帐单不可用。请确保你的Google Play应用已正确设置 - 帐单不可用。请检查你的设备。 关于 Tasks是遵循GNU通用公共许可证v3.0许可证的开源软件 Dashclock扩展 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 39c67ff87..1ff9b7e77 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -480,9 +480,6 @@ File %1$s contained %2$s.\n\n Upgrade subscription Cancel subscription More info - Billing unavailable. Make sure your Google Play app - is set up correctly - Billing unavailable. Please check your device. About Tasks is libre open-source software, licensed under the GNU General Public License v3.0 Dashclock extension