mirror of
https://github.com/d4rken-org/capod.git
synced 2026-09-16 11:16:12 -04:00
feat(upgrade): Explain a pending Google Play payment on the upgrade screen
A user whose payment Play is still processing now gets an explanation instead of a screen that keeps selling them the upgrade they already bought. - New PendingPurchaseCard, rendered above the ownership/acquisition split so it reaches every audience: the acquisition buyer, the owner switching products, and the grace user (whose offers box is hidden entirely during a young episode) — all three have their purchase actions locked and need the same explanation. - Loaded.hasPendingPurchase is SKU-agnostic: the subscription and the one-time purchase are alternatives, so a pending payment for either one disables both offers and the ownership switch button. Restore stays enabled — re-checking with Play is the useful action here. - Both purchase paths now run the same pre-purchase gate (verifyPurchaseStateNow, bounded): a pending payment answers with the informational PurchasePending dialog instead of launching a flow Play would reject. The subscription path previously launched unverified, and its gate also blocks on an owned upgrade (RestoreSucceeded) and on a still-renewing subscription (SubscriptionStillRenewing), so a stale screen can't sell Pro to someone who already owns it. - restorePurchase() reports a found-but-unpaid purchase as PurchasePending rather than RestoreFailed, whose copy asserts a completed check and steers toward multi-account troubleshooting and support. - A PendingPurchaseBillingException from a launch maps to the same dialog. - SubscriptionCheckFailed becomes PurchaseCheckFailed (both paths use it now); its string is replaced by upgrade_screen_purchase_check_failed_message and the translated entries of the old key are removed, along with the already-orphaned upgrade_screen_sub_check_failed_title, so ExtraTranslation lint stays quiet.
This commit is contained in:
@@ -46,8 +46,6 @@
|
||||
<string name="upgrade_screen_owned_iap_purchase_note">Bu ayrı bir satınalmadır — abunəliyinizi ləğv etmir və ya geri ödəmir. Eyni Google hesabından istifadə edin.</string>
|
||||
<string name="upgrade_screen_sub_still_renewing_title">Abunəlik hələ də aktivdir</string>
|
||||
<string name="upgrade_screen_sub_still_renewing_message">Abunəliyiniz hələ də yenilənməyə təyin edilib. Əvvəlcə onu Google Play-də ləğv edin, sonra birdəfəlik satınalmaya keçin. Bu yaxınlarda ləğv etmisiniz? Google Play-ə bir az vaxt verin və yenidən cəhd edin.</string>
|
||||
<string name="upgrade_screen_sub_check_failed_title">Abunəlik yoxlaması uğursuz oldu</string>
|
||||
<string name="upgrade_screen_sub_check_failed_message">Abunəlik statusunuz Google Play ilə yoxlanıla bilmədi. İkiqat satınalmanın qarşısını almaq üçün bir az sonra yenidən cəhd edin.</string>
|
||||
<string name="upgrade_screen_grace_title">Satınalmanız təsdiqlənir</string>
|
||||
<string name="upgrade_screen_grace_body_short">Google Play hələ satınalmanızı təsdiqləməyib. Pro hələ də aktivdir — heç bir əməliyyat lazım deyil.</string>
|
||||
<string name="upgrade_screen_grace_body">Google Play bir müddətdir satınalmanızı təsdiqləməyib. Pro hələ də aktivdir. Onlayn olduğunuzdan və satınalma üçün istifadə edilən Google hesabı ilə daxil olduğunuzdan əmin olun, sonra bərpa etməyi sınayın.</string>
|
||||
|
||||
Reference in New Issue
Block a user