Haegar Posted April 12 Report Share Posted April 12 Hallo *, immer noch habe ich ein Problem mit dem Wiederherstellen der Käufe unter Android. Die nachfolgende Lösung funktioniert, aber leider nicht immer! In diesem Beispiel wird nach einem Beleg gefragt und, wenn Google true zurückgibt, das Item mit meiner Funktion EnableDisableItem(int i, bool o) als gekauft / noch nicht gekauft markiert. Ein true für einen Beleg gibt es aber vermutlich nur dann, wenn der Kauf auch unwiderruflich abgeschlossen wurde. Manchmal kann das aber dauern und daher kann beim Wiederherstellen in Ausnahmefällen vorerst false zurückgegeben werden: public void Start() { var builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance()); IAPConfigurationHelper.PopulateConfigurationBuilder(ref builder, ProductCatalog.LoadDefaultCatalog()); UnityPurchasing.Initialize(this, builder); } public void OnInitialized(IStoreController controller, IExtensionProvider extensions) { m_StoreController = controller; m_GooglePlayStoreExtensions = extensions.GetExtension<IGooglePlayStoreExtensions>(); } public void RestoreButton() { int i; var catalog = ProductCatalog.LoadDefaultCatalog(); i = 0; foreach (var productAll in catalog.allProducts) { Product productTemp = m_StoreController.products.WithID(productAll.id); if (productTemp != null && productTemp.hasReceipt) EnableDisableItem(i, true); else EnableDisableItem(i, false); i++; } } Es soll aber eine andere Möglichkeit geben mithilfe von: m_GooglePlayStoreExtensions.RestoreTransactions(OnRestore); das funktioniert bei mir aber nicht (mit und ohne IAPListener). Hat jemand von euch ebenfalls einen Button zum Käufe Wiederherstellen (Android, unter iOS gibt’s keinerlei Probleme)? Falls ja bitte ich um Tipps. Vielen Dank Ulrich Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.