![]() |
Solucionar error en el componente tInAppPurchase
En la última versión de Rad Studio 10.3.3 se produce un error al utilizar el componente tInAppPurchase en Android de 64 bits, cuando el usuario pulsa sobre la app para comprar una suscripción. Una forma de capturar el error en este componente sería desde el evento OnError: PROCEDURE TFPublicidad.InAppPurchase1Error(Sender: TObject; ErrorKind: TFailureKind; CONST ErrorMessage: STRING); BEGIN IF ErrorKind = TFailureKind.ProductsRequest THEN BEGIN Memo2.Lines.Add(' ERROR al solicitar los productos ' + ErrorMessage); END; IF ErrorKind = TFailureKind.Purchase THEN BEGIN Memo2.Lines.Add(' ERROR en la compra ' + ErrorMessage); END; END; En caso de que se la compra del producto online sea correcta hay que tratarla desde el evento OnPurchaseCompleted, de la siguiente forma: PROCEDURE TFPublicidad.InAppPurchase1PurchaseCompleted(Sende r: TObject; CONST ProductID: STRING; NewTransaction: Boolean); BEGIN Memo2.Lines.Add('*** ' + ProductID + ' EL Producto ha sido comprado'); IF ItemAComprar1 = ProductID THEN showmessage ('se ha comprado el producto 1'); IF ItemAComprar2 = ProductID THEN showmessage ('se ha comprado el producto 2'); END; tInAppPurchase se usa para proporcionar acceso a la app a los servicios de pago de Google Play o de App Store, que permiten vender contenido digital, en forma de suscripciones o compra de productos. El problema es que se omitió cambiar un tipo de datos "Cardinal" (mismo tamaño en todas las plataformas) a "NativeUInt" (específico de la plataforma). Esto se logra utilizando el tipo tFmxHandle. Para resolver este problema hay que : - Acceder al archivo FMX.Helpers.Android.pas Está en C: \ Archivos de programa (x86) \ Embarcadero \ Studio \ 20.0 \ source \ fmx - Copiar el archivo y pegarlo en la carpeta del proyecto - Después hay que cambiar la línea nº 250 de esa unit y donde dice: FTimerHandle: Cardenal; cambiarlo por FTimerHandle: tFmxHandle; Aquí tienen una imagen del código Referencia: ![]() También te puede interesar: ![]() ![]() ![]() ![]() Suscribirse : ![]() ![]() ![]() ![]() http://feeds.feedburner.com/~r/Delph...~4/Qz0IHHxH3jc ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz