@mshuraih you can edit your posts by hovering the mouse over you it and in the top right corner you will see a little cog. Click on it and you can edit your post up to 24 hrs from the first time you posted it.
The stuff just came out. I know @Braydon_SFX and myself who do the majority of the videos here like to provide accurate methods and info. That takes a few days to try stuff out and come up with solid methods to demonstrate. Plus we have regular lives too. We do this for free in our spare time.
I am testing on an adhoc build on my iPad. I have successfully done the first step of getting the data into the table via the IAP-Request Purchase Data behavior. So I can correctly get my non-consumable IAP correctly classified as unpurchased.
Next I trigger the Buy action. Nothing seems to happen. What is supposed to happen? I wait for ever and nothing changes. The unpurchased value remains the same - I thought it should change to 'pending'. The user is not prompted to log in.
What am I doing wrong?
EDIT: I found the problem. Someone else might have the same issue so here's the scoop:
The old IAP behaviors in GameSalad use the IAP Reference Name. The new IAP behavior uses the Product ID. Check iTunes Connect to get the value you need. Don't just copy form your old IAP behavior like I did :-)
@JTT4056 said:
I am struggling..so any help appreciated!!
I am testing on an adhoc build on my iPad. I have successfully done the first step of getting the data into the table via the IAP-Request Purchase Data behavior. So I can correctly get my non-consumable IAP correctly classified as unpurchased.
Next I trigger the Buy action. Nothing seems to happen. What is supposed to happen? I wait for ever and nothing changes. The unpurchased value remains the same - I thought it should change to 'pending'. The user is not prompted to log in.
What am I doing wrong?
EDIT: I found the problem. Someone else might have the same issue so here's the scoop:
The old IAP behaviors in GameSalad use the IAP Reference Name. The new IAP behavior uses the Product ID. Check iTunes Connect to get the value you need. Don't just copy form your old IAP behavior like I did :-)
It was always the product ID or do you mean the Apple ID of the IAP. The product ID is what you assign it, the Apple ID is a 9 digit number. When I submitted to Amazon I used my Product SKU. Please be sure to use the proper terminology when providing solutions or this causes confusion among users.
Braydon_SFXMember, Sous Chef, Bowlboy SidekickPosts: 9,273
edited September 2014
@The_Gamesalad_Guru said: That takes a few days to try stuff out and come up with solid methods to demonstrate. Plus we have regular lives too. We do this for free in our spare time.
Okay got it worked out and tested video for iOS coming in about an hour! Feel free to load me up on likes,awesomes et... Yes @Braydon_SFX I am shameless
@The_Gamesalad_Guru said:
It was always the product ID or do you mean the Apple ID of the IAP. The product ID is what you assign it, the Apple ID is a 9 digit number. When I submitted to Amazon I used my Product SKU. Please be sure to use the proper terminology when providing solutions or this causes confusion among users.
To clarify: I am talking about Apple and in iTunes Connect it is the IAP Product ID which worked for me.
@The_Gamesalad_Guru said:
Okay got it worked out and tested video for iOS coming in about an hour! Feel free to load me up on likes,awesomes et... Yes Braydon_SFX I am shameless
@JTT4056 said:
Hi, I have 2 questions about the new in-app behaviors.
If I don't want to show the name or the price of the IAP in my app, do I need to do the Request Purchase Data behavior? Or can I just go straight to the Buy Item behavior when a user wants to buy?
If I already know that a user has purchased an IAP, can I populate column 5 of the PurchaseTable myself?
Thanks,
Janine
1) No, you do not need to call Request Purchase Data. I'm not sure if your app will get rejected or not for having IAP without showing the price, though.
2) You can fill it in, if you want to give the player a "head start" from connecting to the internet, but you should still call Restore Items. a) the player may have bought something on another device, and b) Apple, at least, requires the user to be able to manually restore their purchases.
The Request Purchase Data forcing an early login is quite unfortunate.
I understand that this behaviour was probably made to do quite a few things for the sake of simplicity, bundling some calls which require a login, like the state of non-consumables.
But, as you enter the shop, you really only want to retrieve product description and price, which does not require you to be logged in.
Is there a chance that the two functionalities - 1 Request localized info (SKProductsRequest) and 2 Request Purchase Data - can be split into two behaviours. Even at the expense of needing two tables as opposed to one?
This would avoid the early and possibly unnerving login request.
The Request Purchase Data forcing an early login is quite unfortunate.
I understand that this behaviour was probably made to do quite a few things for the sake of simplicity, bundling some calls which require a login, like the state of non-consumables.
But, as you enter the shop, you really only want to retrieve product description and price, which does not require you to be logged in.
Is there a chance that the two functionalities - 1 Request localized info (SKProductsRequest) and 2 Request Purchase Data - can be split into two behaviours. Even at the expense of needing two tables as opposed to one?
This would avoid the early and possibly unnerving login request.
Totally agree with you Hopscotch, I fear the early log-in may scare a potential customer away. Hopefully GS can implement this, maybe they had to get this RC out quick.
EDIT: "Request Purchase Data" retrieves the information wether you login or cancel so it is not required at this point for the action to function. Having the login in the "Buy Item" action makes I think more sense.
That should already be in the code behind the scenes? What you have to do is make the key and put it in google play under the services tab, just like Amazon. See link below on how to make the key and setup IAPs on google play developer.
@The_Gamesalad_Guru said:
That should already be in the code behind the scenes? What you have to do is make the key and put it in google play under the services tab, just like Amazon. See link below on how to make the key and setup IAPs on google play developer.
I have already read and tried it and couldn't get it to work. I just went back and gave it another go but no joy. Have you been able to get it to work?
@The_Gamesalad_Guru said:
Okay got it worked out and tested video for iOS coming in about an hour! Feel free to load me up on likes,awesomes et... Yes Braydon_SFX I am shameless
Republish your game with the license key supplied by Google.
Upload your game again. Make sure it goes to the "alpha" tab.
Create a Google Group for your testers, even if the only tester is you.
Send out invitations to the testers.
Respond to the invitation.
Send out the link to the app.
Activate the link. Once the app is available, it can be downloaded from the store. This can be hours from when you upload it. The app will appear in the "all" section of "my apps" in the store.
The Request Purchase Data forcing an early login is quite unfortunate.
I understand that this behaviour was probably made to do quite a few things for the sake of simplicity, bundling some calls which require a login, like the state of non-consumables.
But, as you enter the shop, you really only want to retrieve product description and price, which does not require you to be logged in.
Is there a chance that the two functionalities - 1 Request localized info (SKProductsRequest) and 2 Request Purchase Data - can be split into two behaviours. Even at the expense of needing two tables as opposed to one?
This would avoid the early and possibly unnerving login request.
It was more to do with being able to show the full currency and price in a dialog before the purchase. So 'unlock all levels for just £0.69' for GBP or 'unlock all levels for just $0.99' for USD, etc
After discussing this with the team, we're going to add attributes for: country code, OS being used, and OS version being used. This may come out as a patch to 0.12 if we can't get it out for the initial release.
@stevej said:
After discussing this with the team, we're going to add attributes for: country code, OS being used, and OS version being used. This may come out as a patch to 0.12 if we can't get it out for the initial release.
I could hug you for this! But please supply Country Code AS WELL AS Device language setting! Both are necessary as they may be different.
Someone may have a different language selected from the country they are in. This is vital for good/professional localization of the description as @zenoah indicated.
The Country code is vital for Price localization, as this is legally supposed to be displayed in the currency of the country, irrespective of the language setting.
This does NOT however solve the problem of the early login request. Immediately confronting the user with a login to their apple account as they enter our shop page, before they have even selected any purchase or seen what is available, is terrible.
I am sure that most will cancel the login out of mistrust and dump the app.
Please don't implement IAPs in this broken fashion, which could (dare I say, will) cause damage to the developers reputation.
If there is a pending purchase from a previous session Apple will request a login to complete the pending purchase. This will happen when we initialize the purchase queue at the beginning of the app. This is most to time what is happening when you see the log in panel requesting a password at start up. In the sand box you can clear out the pending purchase queue.
We will look into seeing what we can do for the login required to get purchase information.
We did some test with the login issue. Seems most of it has to do with pending transactions. If you have a purchase id in iTunes connect that you do not handle in game any more and the user has a pending transaction for that id you will get the log in request until the game handles the transaction for the id at every game start.
We will be releasing a final release candidate today and the final release should come out tomorrow (as long as no critical bugs are found)
Comments
I have one and so does @The_Gamesalad_Guru - However, because of this new change in iOS 8, we're going to have to redo the videos.
My GameSalad Academy Courses! ◦ Check out my quality templates! ◦ Add me on Skype: braydon_sfx
thanks for the tips
thanks Braydon I meant for the new iOS8 IAP .. thnks again
@mshuraih you can edit your posts by hovering the mouse over you it and in the top right corner you will see a little cog. Click on it and you can edit your post up to 24 hrs from the first time you posted it.
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
The stuff just came out. I know @Braydon_SFX and myself who do the majority of the videos here like to provide accurate methods and info. That takes a few days to try stuff out and come up with solid methods to demonstrate. Plus we have regular lives too. We do this for free in our spare time.
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
I am struggling..so any help appreciated!!
I am testing on an adhoc build on my iPad. I have successfully done the first step of getting the data into the table via the IAP-Request Purchase Data behavior. So I can correctly get my non-consumable IAP correctly classified as unpurchased.
Next I trigger the Buy action. Nothing seems to happen. What is supposed to happen? I wait for ever and nothing changes. The unpurchased value remains the same - I thought it should change to 'pending'. The user is not prompted to log in.
What am I doing wrong?
EDIT: I found the problem. Someone else might have the same issue so here's the scoop:
The old IAP behaviors in GameSalad use the IAP Reference Name. The new IAP behavior uses the Product ID. Check iTunes Connect to get the value you need. Don't just copy form your old IAP behavior like I did :-)
thanks @Braydon_SFX
It was always the product ID or do you mean the Apple ID of the IAP. The product ID is what you assign it, the Apple ID is a 9 digit number. When I submitted to Amazon I used my Product SKU. Please be sure to use the proper terminology when providing solutions or this causes confusion among users.
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
True. Alot of people forget this.
My GameSalad Academy Courses! ◦ Check out my quality templates! ◦ Add me on Skype: braydon_sfx
Okay got it worked out and tested video for iOS coming in about an hour! Feel free to load me up on likes,awesomes et... Yes @Braydon_SFX I am shameless
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
To clarify: I am talking about Apple and in iTunes Connect it is the IAP Product ID which worked for me.
YOU'RE DA MAN!!!
twitter.com/RoShamBoFighter
facebook.com/RoshamboFighter
1) No, you do not need to call Request Purchase Data. I'm not sure if your app will get rejected or not for having IAP without showing the price, though.
2) You can fill it in, if you want to give the player a "head start" from connecting to the internet, but you should still call Restore Items. a) the player may have bought something on another device, and b) Apple, at least, requires the user to be able to manually restore their purchases.
We're working on it.
You bad, bad person.
My GameSalad Academy Courses! ◦ Check out my quality templates! ◦ Add me on Skype: braydon_sfx
Beat you to it....lol
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
@stevej to the team working on the tutorial, thank you!!!!!!
When the Android IAP is tested out, is someone going to do a Windows to GooglePlay tutorial ? that would be A W E S O M E !!!!
@stevej , @BlackCloakGS
The Request Purchase Data forcing an early login is quite unfortunate.
I understand that this behaviour was probably made to do quite a few things for the sake of simplicity, bundling some calls which require a login, like the state of non-consumables.
But, as you enter the shop, you really only want to retrieve product description and price, which does not require you to be logged in.
Is there a chance that the two functionalities - 1 Request localized info (SKProductsRequest) and 2 Request Purchase Data - can be split into two behaviours. Even at the expense of needing two tables as opposed to one?
This would avoid the early and possibly unnerving login request.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
Totally agree with you Hopscotch, I fear the early log-in may scare a potential customer away. Hopefully GS can implement this, maybe they had to get this RC out quick.
^ +1
EDIT: "Request Purchase Data" retrieves the information wether you login or cancel so it is not required at this point for the action to function. Having the login in the "Buy Item" action makes I think more sense.
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
@stevej @BlackCloakGS can someone give us some information on Google Play IAP. How do we add Billing Permissions to the APK?
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
That should already be in the code behind the scenes? What you have to do is make the key and put it in google play under the services tab, just like Amazon. See link below on how to make the key and setup IAPs on google play developer.
http://developer.android.com/google/play/billing/billing_admin.html
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
I have already read and tried it and couldn't get it to work. I just went back and gave it another go but no joy. Have you been able to get it to work?
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
Nice! thank you!! where will you post it
That's done by us. Google Play IAP is annoyingly tricky to set up and test. We're creating a detailed write-up, but the "short" version is:
Simple!
The problem is that when > @zenoah said:
After discussing this with the team, we're going to add attributes for: country code, OS being used, and OS version being used. This may come out as a patch to 0.12 if we can't get it out for the initial release.
I could hug you for this! But please supply Country Code AS WELL AS Device language setting! Both are necessary as they may be different.
Someone may have a different language selected from the country they are in. This is vital for good/professional localization of the description as @zenoah indicated.
The Country code is vital for Price localization, as this is legally supposed to be displayed in the currency of the country, irrespective of the language setting.
This does NOT however solve the problem of the early login request. Immediately confronting the user with a login to their apple account as they enter our shop page, before they have even selected any purchase or seen what is available, is terrible.
I am sure that most will cancel the login out of mistrust and dump the app.
Please don't implement IAPs in this broken fashion, which could (dare I say, will) cause damage to the developers reputation.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
If there is a pending purchase from a previous session Apple will request a login to complete the pending purchase. This will happen when we initialize the purchase queue at the beginning of the app. This is most to time what is happening when you see the log in panel requesting a password at start up. In the sand box you can clear out the pending purchase queue.
We will look into seeing what we can do for the login required to get purchase information.
We did some test with the login issue. Seems most of it has to do with pending transactions. If you have a purchase id in iTunes connect that you do not handle in game any more and the user has a pending transaction for that id you will get the log in request until the game handles the transaction for the id at every game start.
We will be releasing a final release candidate today and the final release should come out tomorrow (as long as no critical bugs are found)