1.1.2 (47): fix subscription purchase button fallback

Remove legacy CONSUMABLE fallback from monthlyProduct — when the
subscription fails to load, the UI now shows the retry state instead
of silently offering the legacy one-time product for purchase.
Legacy purchasers retain access via hasActiveSubscription() as before.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
alexandrev-tibco
2026-05-21 19:58:57 +02:00
parent 89b35dc4ae
commit d09e8a7bee
16 changed files with 25 additions and 37 deletions
+2 -2
View File
@@ -860,7 +860,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = MealMood/Resources/MealMood.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
CURRENT_PROJECT_VERSION = 46;
CURRENT_PROJECT_VERSION = 47;
DEVELOPMENT_TEAM = 2825Q76T7H;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = MealMood/Resources/Info.plist;
@@ -965,7 +965,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = MealMood/Resources/MealMood.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
CURRENT_PROJECT_VERSION = 46;
CURRENT_PROJECT_VERSION = 47;
DEVELOPMENT_TEAM = 2825Q76T7H;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = MealMood/Resources/Info.plist;
+2 -2
View File
@@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.1.1</string>
<string>1.1.2</string>
<key>CFBundleVersion</key>
<string>46</string>
<string>47</string>
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-1549720748100858~9985112590</string>
<key>ITSAppUsesNonExemptEncryption</key>
+1 -7
View File
@@ -120,13 +120,7 @@ final class StoreManager: ObservableObject {
if let match = products.first(where: { $0.id == Self.monthlyProductId && $0.type == .autoRenewable }) {
return match
}
if let match = products.first(where: { $0.type == .autoRenewable }) {
return match
}
if let match = products.first(where: { $0.id == Self.legacyOneTimeProductId }) {
return match
}
return products.first
return products.first(where: { $0.type == .autoRenewable })
}
var debugProductIds: [String] { productIds }
+2 -2
View File
@@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>XPC!</string>
<key>CFBundleShortVersionString</key>
<string>1.1.1</string>
<string>1.1.2</string>
<key>CFBundleVersion</key>
<string>46</string>
<string>47</string>
<key>NSExtension</key>
<dict>
<key>NSExtensionPointIdentifier</key>
+1 -1
View File
@@ -1 +1 @@
NEU in 1.1.0: Premium ist jetzt ein Monatsabo. Bestehende Einmalkäufer behalten ihren vollen Zugang automatisch.
MealMood Premium: unbegrenzte Gerichte, Planung & Export für 2,99 €/Monat. Bestehende Einmalkäufer behalten ihren vollen Zugang automatisch.
+2 -3
View File
@@ -1,4 +1,3 @@
Neu in Version 1.1.0:
Korrekturen in Version 1.1.2:
Premium ist jetzt ein monatliches Abo — unbegrenzte Gerichte, Planung und Export für 2,99 €/Monat.
• Bestehende Einmalkäufer behalten ihren vollen Zugang automatisch — keine Aktion erforderlich.
Fehler behoben, bei dem die Premium-Abonnement-Schaltfläche auf einigen Geräten nicht korrekt angezeigt wurde.
+1 -1
View File
@@ -1 +1 @@
NEW in 1.1.0: Premium is now a monthly subscription. Existing lifetime purchasers keep full access automatically.
MealMood Premium: unlimited dishes, weekly planning & export for $2.99/month. Existing lifetime purchasers keep full access automatically.
+2 -3
View File
@@ -1,4 +1,3 @@
New in 1.1.0:
Fixes in 1.1.2:
Premium is now a monthly subscription — unlimited dishes, planning, and export for $2.99/month.
• Existing lifetime purchasers keep full access automatically, no action needed.
Fixed an issue where the Premium subscription button would not appear correctly on some devices, preventing users from subscribing.
+1 -1
View File
@@ -1 +1 @@
NUEVO en 1.1.0: Premium ahora es una suscripción mensual. Los compradores previos conservan su acceso completo automáticamente.
MealMood Premium: platos ilimitados, planificación y exportación por 2,99 €/mes. Los compradores previos conservan su acceso completo automáticamente.
+2 -3
View File
@@ -1,4 +1,3 @@
Novedades en 1.1.0:
Correcciones en 1.1.2:
Premium ahora es una suscripción mensual — platos ilimitados, planificación y exportación por 2,99 €/mes.
• Los usuarios con compra única previa conservan el acceso completo de forma automática.
Solucionado un problema por el que el botón de suscripción Premium no aparecía correctamente en algunos dispositivos, impidiendo realizar la compra.
+1 -1
View File
@@ -1 +1 @@
NOUVEAU v1.1.0 : Premium est désormais un abonnement mensuel. Les acheteurs existants conservent automatiquement leur accès complet.
MealMood Premium : plats illimités, planification et export pour 2,99 €/mois. Les acheteurs existants conservent automatiquement leur accès complet.
+2 -3
View File
@@ -1,4 +1,3 @@
Nouveautés dans la version 1.1.0 :
Correctifs dans la version 1.1.2 :
Premium est désormais un abonnement mensuel — plats illimités, planification et export pour 2,99 €/mois.
• Les utilisateurs ayant effectué un achat unique conservent automatiquement leur accès complet.
Correction d'un problème où le bouton d'abonnement Premium ne s'affichait pas correctement sur certains appareils.
+1 -1
View File
@@ -1 +1 @@
NOVITÀ v1.1.0: Premium è ora un abbonamento mensile. Gli acquirenti precedenti mantengono automaticamente l'accesso completo.
MealMood Premium: piatti illimitati, pianificazione ed esportazione a 2,99 €/mese. Gli acquirenti precedenti mantengono automaticamente l'accesso completo.
+2 -3
View File
@@ -1,4 +1,3 @@
Novità nella versione 1.1.0:
Correzioni nella versione 1.1.2:
Premium è ora un abbonamento mensile — piatti illimitati, pianificazione ed esportazione a 2,99 €/mese.
• Gli utenti con acquisto singolo precedente mantengono automaticamente l'accesso completo.
Risolto un problema per cui il pulsante di abbonamento Premium non veniva visualizzato correttamente su alcuni dispositivi.
+1 -1
View File
@@ -1 +1 @@
NOVIDADE 1.1.0: Premium agora é uma assinatura mensal. Compradores anteriores mantêm o acesso completo automaticamente.
MealMood Premium: pratos ilimitados, planejamento e exportação por R$ 2,99/mês. Compradores anteriores mantêm o acesso completo automaticamente.
+2 -3
View File
@@ -1,4 +1,3 @@
Novidades na versão 1.1.0:
Correções na versão 1.1.2:
Premium agora é uma assinatura mensal — pratos ilimitados, planejamento e exportação por R$ 2,99/mês.
• Usuários com compra única anterior mantêm o acesso completo automaticamente.
Corrigido um problema em que o botão de assinatura Premium não aparecia corretamente em alguns dispositivos.