CodelessIAP を使ってIAP Buttonから定期購入のテスト購入まではできました。
GooglePlayの設定の定期購入から、
テスト定期購入したものの解約の手続きもできました。
https://docs.unity3d.com/ja/2020.3/Manual/UnityIAPValidatingReceipts.html
このページの ローカル検証>難解化 まではできました。
■ローカル検証をする、基本的な流れが全くわかりません。
レシートを取得>SubscriptionManagerクラスを使って、レシートの中身を確認
という感じでしょうか?
はじめの、「レシートを取得」のやり方が、わかりません。
IAPDemo.csの
Debug.Log("利用可能なアイテム:");
1 foreach (var item in controller.products.all) { 2 if (item.availableToPurchase) { 3 Debug.Log(string.Join(" - ", 4 new[] 5 { 6 item.metadata.localizedTitle, 7 item.metadata.localizedDescription, 8 item.metadata.isoCurrencyCode, 9 item.metadata.localizedPrice.ToString(), 10 item.metadata.localizedPriceString, 11 item.transactionID, 12 item.receipt 13 }));
この部分で、購入済みのレシートが取得されているのでしょうか?
その数行下に
if (item.receipt != null) { if (item.definition.type == ProductType.Subscription) { if (checkIfProductIsAvailableForSubscriptionManager(item.receipt)) { string intro_json = (introductory_info_dict == null || !introductory_info_dict.ContainsKey(item.definition.storeSpecificId)) ? null : introductory_info_dict[item.definition.storeSpecificId]; SubscriptionManager p = new SubscriptionManager(item, intro_json); SubscriptionInfo info = p.getSubscriptionInfo();
とあり、item.receiptが取得されていれば、
SubscriptionInfo info = p.getSubscriptionInfo();
Debug.Log("製品ID: " + info.getProductId());
のように
ここまでこれれば、レシートの中身が確認できるのですが。
あなたの回答
tips
プレビュー