Поиск сообщества
Показаны результаты для тегов 'InAppPurchase'.
Найдено: 1 результат
-
Добрый день. У кого-то есть опыт с InAppPurchase в xe7 для Android ? Информации в интернете очень мало. Нужна помощь. Прочитав документацию и доступную в Интернете информацию я смог настроить тестовое приложение, тестовые аккаунты для покупки и тестовые "товары". Покупку можно совершить. Однако после надписи про успешную проплату приложение зависает на несколько секунд после чего либо просто вылетает, либо рестартует. После этого товар уже считает купленным, однаком consume не работает, IsProductPurchased всегда возвращает false, RestorePurchasedProducts не вызывает PurchaseCompleted (как я понял по документации - должен). Ниже приведен код type TShopForm = class(TForm) Button1: TButton; Button2: TButton; Memo1: TMemo; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure InAppPurchaseError (Sender: TObject; ErrorKind: TFailureKind; const ErrorMessage: string); procedure InAppPurchaseCompleted(Sender: TObject; const ProductID: string; NewTransaction: Boolean); procedure InAppProductsRequestResponse(Sender: TObject; const Products: TIAPProductList; const InvalidProductIDs: TStrings); procedure InAppPurchaseSetupComplete(Sender: TObject); private FInAppPurchase: TInAppPurchase; { Private declarations } public { Public declarations } end; var ShopForm: TShopForm; implementation const testp='test13'; procedure mlog(s: string); begin ShopForm.Memo1.Lines.Add(s); end; procedure TShopForm.Button1Click(Sender: TObject); begin FInAppPurchase.PurchaseProduct(testp); end; procedure TShopForm.InAppPurchaseSetupComplete(Sender: TObject); begin mlog('setup complete'); end; procedure TShopForm.InAppProductsRequestResponse(Sender: TObject; const Products: TIAPProductList; const InvalidProductIDs: TStrings); begin mlog('ProductsRequestResponse'); end; procedure TShopForm.InAppPurchaseError(Sender: TObject; ErrorKind: TFailureKind; const ErrorMessage: string); begin mlog('error '+ErrorMessage); end; procedure TShopForm.InAppPurchaseCompleted(Sender: TObject; const ProductID: string; NewTransaction: Boolean); begin mlog('Purchase '+ProductID); end; procedure InAppConsumeCompleted(Sender: TObject; const ProductID:string); begin mlog('!consume '+ProductID); end; procedure TShopForm.FormCreate(Sender: TObject); begin FInAppPurchase:=TInAppPurchase.Create(self); FInAppPurchase.ApplicationLicenseKey:='MI....'; FInAppPurchase.ProductIDs.Add(testp); FInAppPurchase.OnSetupComplete:=InAppPurchaseSetupComplete; FInAppPurchase.OnProductsRequestResponse:=InAppProductsRequestResponse; FInAppPurchase.OnError:=InAppPurchaseError; FInAppPurchase.OnPurchaseCompleted:=InAppPurchaseCompleted; FInAppPurchase.SetupInAppPurchase; end; Может кто-то хоть подскажет в какую сторону копать. Или покажет работающий код. Или какие-то аналоги компоненту InAppPurchase посоветует. Буду очень благодарен.