BrandonWhitton's Forum Posts

  • I agree totally! Trying to get things fixed is like banging your head against a brick wall. I’ve come to realise that C3 is fine if you are a hobbyist making games for yourself, but if you actually release apps for other people it is not fit for that purpose. There are just too many critical bugs to make C3 a reliable development environment. This is particularly the case with the C3 run time when it comes to iOS development. I’ve come across so many big bugs that I’ve now moved all my development efforts to Swift rather than C3. Swift gives you absolute control over every aspect of your development. Any bugs are of your making rather than being from the dev environment you are using! I kept a subscription to C3 for 2 years but for me it is time to move on to something more professional and reliable.

  • Since using the latest build I have found that I can no longer export for iOS. The error log indicates that the mobile advert component is the problem. If I remove this component from my project I can export to iOS just fine, but when I put it back in the build fails again. I can’t help but think that this is related to the updating of this component in the latest build. This is quite annoying when you have an app ready to upload to the App Store but then find you can no longer export the project!

  • No problem!

  • You firstly need to set up the subscription in App Store Connect. Once you have done this you will do something similar to the image below within your app to purchase a subscription:

    What I'm doing above is when a user clicks on an image of a button I initiate the purchase of the subscription (ie. MobileMasterIAP -> Subscribe Product "SubscriptionID"). I then check if the subscription has succeeded (ie. MobileMasterIAP -> Subscription Succeeded - this has another condition which identifies the specific ID of the subscription that has been purchased.). I then run through a series of actions that occur when the subscription has been successful. In the case of my app, I change the image of the button from one that says "Subscribe" to "Subscribed" and then I set a variable which unlocks content in my app.

  • I would assume so. I haven't actually used the ad plugin yet though. However the IAP plugin is comprehensive and has all the functionality you would require. I would assume the ad plugin will be just as comprehensive.

  • You cannot do this natively in Construct 3. The Construct 3 IAP plugin lacks this functionality (as well as being bug ridden!) and as such I can't recommend using it. I have recent purchased the Mobile Master IAP plugin, https://chadorirebornxd.itch.io/mobile-master-monetization, which also come bundled with a plugin for displaying adds. This sells for $39.99 USD. It is worth every cent though. It works well, is very easy to use, and is well supported by its developer. This plugin has the ability to implement subscriptions. It would be well worth having a look at if you want to implement subscriptions in your app.

  • The Mobile Master IAP works really well and is easy to use. I've swapped out the native IAP plugin in favor of this in one of my apps. I've even added a subscription option to the app to give my users additional choice in how they access content. This could not have been easier. The fact that the native IAP plugin lacks subscription functionality is a glaring omission in its functionality. I highly recommend buying the Mobile Master IAP plugin for anyone who needs a reliable way to monetize their apps.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Well it seems like there is zero interest in fixing what is an obvious problem. For anyone who stumbles across this and is looking for a solution the Mobile Master IAP plugin looks promising https://chadorirebornxd.itch.io/mobile-master-monetization. This also has the ability to handle subscriptions and most importantly the developer looks to support his product by fixing bugs promptly! I'm intending to buy this and if it works well I'll update all my apps to use this.

  • Just to add some further information to this. I have found out that minification when building a project affects whether the "Has product" in the IAP plugin works or not. I have always used minification when building projects. Whilst trying to trouble shoot the issues with the IAP plugin I thought of ways to get around using the native IAP plugin. I'm aware that someone sells an IAP plugin for Construct 2 and 3 and I was looking at the store page for this. It was then that a comment jumped out at me about this other plugin allowing minification and I wondered whether this may be affecting things at all. I know I was just grasping at straws but minification does seem to have some impact in some way on how the official IAP plugin works.

    If I use minification the "Has product" fails to work at all. However, if I don't minify during the build process it does have some impact on whether "Has product" works when the app is live. What I have found is that when you have the app installed on your iPhone you need to go through the following steps to eventually get the "Has product" to work:

    1. Purchase the IAP.
    2. When you restart the app the "Has product" should detect the IAP has been purchased when the splash screen is visible (see the image in my original post to see how I have set this up) - Unfortunately it does not detect the purchase no matter how many times you restart the app. The purchases you have made remain unlocked and available though.
    3. Delete the app.
    4. Reinstall the app.
    5. Run the app again, it still won't detect that a purchase has been made. The content you previously purchased is no longer available to you as the app cannot detect that it has been purchased.
    6. Purchase the IAP again. The App Store will tell you that you have already purchased the content and it will ask whether you wish to get it again for free. Click Ok. You now have access to the content that you previously purchased.
    7. Restart the app again.
    8. "Has product" now detects that a purchase has been made and works as expected!!!!

    The above should be indicative that there are some issues with the way the IAP plugin works. Given that another user complained about "Has Product" not working in December 2018 and logged a Bug for this I don't know why it still hasn't been fixed. This is an issue that would affect all people monetising their apps in the App Store with this plugin. Surely this is reason enough to give fixing it some level of priority.

    For now though I am telling anyone who complains about not being able to access the content they have purchased that they will need to "repurchase" the content for free from within the app. It is not an ideal solution, or a permanent fix, but it is all we have until someone on the development team investigates the issue and fixes this bug.

  • Just a bit of background to this issue. I have a number of live apps in the Apple App Store. I have numerous people purchase IAP in these apps every month. A few day ago I received an email stating that a user had purchased one of my IAP, it had worked for a while and was now not working. He had tried to restore the purchases but the restore button wasn't doing anything. I've been offering this individual support and have been investigating the issue.

    The image above is not from the app the user is having issues with, it's actually from another app that I'm currently working on. It does however exhibit the same problems that the app in question has. The image above shows some of the code associated with my splash screen. One of the things I do in my apps is to check whether IAP have been previously purchased while the splash screen is being shown. If they have been purchased I set a variable that will unlock the required parts of the app.

    I can successfully perform a purchase of IAP and it will unlock the required parts of my app. These stay unlocked even when the app is opened and closed multiple times. The problem occurs if the app is later deleted. When it is reinstalled it does not detect that IAP has previously been purchased. The App Store knows that this Non Consumable IAP has been previously purchased because it tells you if you attempt to repurchase.

    The problem seems to be that when I call - Has Product"ProductID" - it is not actually querying the App Store to determine whether the product has previously been purchased. I know that product registration has completed successfully because the price of the IAP is returned from the App Store and written to a variable and then is shown on the purchase page of the app. But the check I put in to verify whether "Has Product" is executing (TXT_PURCHASECHECK - Set text to "Purchased") is never displayed. This check, along with previously purchased IAP remaining locked, indicates that the "Has Product" is failing to properly execute.

    This is a major problem to me. It potentially will cost me sales and will certainly result in unhappy customers who are not always getting what they have paid for. I've commented on a similar bug report from December 2018 (https://github.com/Scirra/Construct-3-bugs/issues/2440)that reports the same issue. I don't know whether anyone is actively working on this issue. I know that Nepeo wrote the IAP plugin. Maybe construct.net/en/users/253158/nepeo can help with this?

    It would be really good to resolve this as it appears to be a bug that is not just affecting me. I'm tearing my hair out at the moment over this issue and am becoming increasingly frustrated. Any help anyone can provide would be very much appreciated.

  • I have been using sprites for buttons, however I have just had an app rejected from the App Store for doing this. So it looks like I’m going to have to start using the default button and will have to modify it’s appearance using CSS.

  • https://itunes.apple.com/us/app/manifestation-magick-pro/id1441746654?mt=8

    This is my second app. My first app was a game (Hector the Protector). This app combines a system of medieval magick with modern manifestation techniques. It won't be everyone's cup of tea, but for my target audience it should hopefully prove popular.

  • Yes, it's working fine. I've tested extensively and have had no further problems with the IAP.

  • Some days I wonder about myself. MobileIAP.ProductPrice(MyIAP_ID) should do the trick.

  • I'm currently developing an app with IAP for IOS. The IAP functions correctly and I am able to purchase the IAP, and unlock content in my app once the IAP is purchased. My one difficulty is in obtaining the local price for an IAP. I've been trying to use "ProductPrice(ProductID)" as is detailed in the Construct 3 manual. I'm obviously doing something wrong because I cannot get this working.

    Please note that I've exported my app for IOS as an xcode project. I've then sent it through to App Store Connect and have then put it on my phone with Test Flight.

    What I've tried to do is use - MobileIAP -> On store registration success -> System -> Set Global Variable to"ProductPrice(MyIAP_ID)"

    I've then tried to set a text control on another layout to the value held by this global variable. All this does is display "ProductPrice(MyIAP_ID)" in the text control rather than the localized IAP price. I'm sure I'm setting things up incorrectly, but it is difficult to know what to do when I can find no expanded documentation or examples for how to do what should be a rather simple task in Construct 3.

    If anybody could provide suggestions or examples on how to get a local currency for an IAP in Construct 3 I would be incredibly grateful.

    Cheers

    Brandon