The SDL forums have moved to discourse.libsdl.org.
This is just a read-only archive of the previous forums, to keep old links working.


SDL Forum Index
SDL
Simple Directmedia Layer Forums
In-App Purchases
ruler501


Joined: 14 Aug 2014
Posts: 26
Location: Dallas, Texas
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.
In-App Purchases
arosian


Joined: 22 Oct 2013
Posts: 13
Not really related to SDL is it? On Sep 20, 2014 10:32 PM, "ruler501" wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

ruler501


Joined: 14 Aug 2014
Posts: 26
Location: Dallas, Texas
Not especially so just in that this is an SDL app and both are attempts at cross-platform code.
In-App Purchases
Pallav Nawani


Joined: 19 May 2011
Posts: 122
Location: Dehradun, India
I doubt that there is a cross-platform way. You would need to code for both iOS and Android separately. The way I did it was to create an in-app purchase interface class & then made platform specific derived classes. The iOS specific class tapped into the Objective C API and the Android specific class used JNI to call google's API.


It was a tedious and sometimes non-obvious process, but it worked.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Sun, Sep 21, 2014 at 8:02 AM, ruler501 wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

In-App Purchases
M. Gerhardy
Guest

Could you maybe share the code? Maybe a third party lib could unify that in the sdl way. Am 22.09.2014 07:23 schrieb "Pallav Nawani":
Quote:
I doubt that there is a cross-platform way. You would need to code for both iOS and Android separately. The way I did it was to create an in-app purchase interface class & then made platform specific derived classes. The iOS specific class tapped into the Objective C API and the Android specific class used JNI to call google's API.


It was a tedious and sometimes non-obvious process, but it worked.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Sun, Sep 21, 2014 at 8:02 AM, ruler501 wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org





_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Re: In-App Purchases
ruler501


Joined: 14 Aug 2014
Posts: 26
Location: Dallas, Texas
I'd be willing to put some time in to try and make this have a cross platform API if it is possible, I'd need to see the code before deciding that though

M. Gerhardy wrote:
Could you maybe share the code? Maybe a third party lib could unify that in the sdl way. Am 22.09.2014 07:23 schrieb "Pallav Nawani":
Quote:
I doubt that there is a cross-platform way. You would need to code for both iOS and Android separately. The way I did it was to create an in-app purchase interface class & then made platform specific derived classes. The iOS specific class tapped into the Objective C API and the Android specific class used JNI to call google's API.


It was a tedious and sometimes non-obvious process, but it worked.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Sun, Sep 21, 2014 at 8:02 AM, ruler501 wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org





_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

In-App Purchases
Pallav Nawani


Joined: 19 May 2011
Posts: 122
Location: Dehradun, India
Okay, I will share the code. However, the code might be tied to our game engine, and it might need to modified quite a bit.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Mon, Sep 22, 2014 at 12:18 PM, M. Gerhardy wrote:
Quote:

Could you maybe share the code? Maybe a third party lib could unify that in the sdl way. Am 22.09.2014 07:23 schrieb "Pallav Nawani":
Quote:
I doubt that there is a cross-platform way. You would need to code for both iOS and Android separately. The way I did it was to create an in-app purchase interface class & then made platform specific derived classes. The iOS specific class tapped into the Objective C API and the Android specific class used JNI to call google's API.


It was a tedious and sometimes non-obvious process, but it worked.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Sun, Sep 21, 2014 at 8:02 AM, ruler501 wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org





_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org



_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Re: In-App Purchases
ruler501


Joined: 14 Aug 2014
Posts: 26
Location: Dallas, Texas
Thank you, and I'll see what we can do to tidy it up for you and make it more of a library
Pallav Nawani wrote:
Okay, I will share the code. However, the code might be tied to our game engine, and it might need to modified quite a bit.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Mon, Sep 22, 2014 at 12:18 PM, M. Gerhardy wrote:
Quote:

Could you maybe share the code? Maybe a third party lib could unify that in the sdl way. Am 22.09.2014 07:23 schrieb "Pallav Nawani":
Quote:
I doubt that there is a cross-platform way. You would need to code for both iOS and Android separately. The way I did it was to create an in-app purchase interface class & then made platform specific derived classes. The iOS specific class tapped into the Objective C API and the Android specific class used JNI to call google's API.


It was a tedious and sometimes non-obvious process, but it worked.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Sun, Sep 21, 2014 at 8:02 AM, ruler501 wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org





_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org



_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

In-App Purchases
Pallav Nawani


Joined: 19 May 2011
Posts: 122
Location: Dehradun, India
As Promised, here is the In-App Purchase Code:
https://dl.dropboxusercontent.com/u/38460079/InAppPurchaseCode.zip



I have tried a bit to make it clear & self contained, however I am sure that some changes will be needed, esp. in the Android code. I will be out of station from Today till 29th September, so I will not be able to answer any questions during that time.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Tue, Sep 23, 2014 at 12:01 PM, Pallav Nawani wrote:
Quote:
Okay, I will share the code. However, the code might be tied to our game engine, and it might need to modified quite a bit.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Mon, Sep 22, 2014 at 12:18 PM, M. Gerhardy wrote:
Quote:

Could you maybe share the code? Maybe a third party lib could unify that in the sdl way. Am 22.09.2014 07:23 schrieb "Pallav Nawani":
Quote:
I doubt that there is a cross-platform way. You would need to code for both iOS and Android separately. The way I did it was to create an in-app purchase interface class & then made platform specific derived classes. The iOS specific class tapped into the Objective C API and the Android specific class used JNI to call google's API.


It was a tedious and sometimes non-obvious process, but it worked.

Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Sun, Sep 21, 2014 at 8:02 AM, ruler501 wrote:
Quote:
I'm looking for a cross-platform(iOS and Android) way to process and verify in-app purchases. Is this possible? If not what is the best way to do it for each of those two platforms, note I'm using C++ not C.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org





_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org



_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org




In-App Purchases
Martin Felis
Guest

Thanks for sharing the code! Highly appreciated!

On 26.09.2014 07:51, Pallav Nawani wrote:
Quote:
As Promised, here is the In-App Purchase Code:
https://dl.dropboxusercontent.com/u/38460079/InAppPurchaseCode.zip

I have tried a bit to make it clear & self contained, however I am sure
that some changes will be needed, esp. in the Android code. I will be
out of station from Today till 29th September, so I will not be able to
answer any questions during that time.

*Pallav Nawani*
*IronCode Gaming Private Limited*
Website: http://www.ironcode.com
Twitter: http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: *9997478768*

On Tue, Sep 23, 2014 at 12:01 PM, Pallav Nawani
<mailto:> wrote:

Okay, I will share the code. However, the code might be tied to our
game engine, and it might need to modified quite a bit.

*Pallav Nawani*
*IronCode Gaming Private Limited*
Website: http://www.ironcode.com
Twitter: http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: *9997478768*

On Mon, Sep 22, 2014 at 12:18 PM, M. Gerhardy
<mailto:> wrote:

Could you maybe share the code? Maybe a third party lib could
unify that in the sdl way.

Am 22.09.2014 07:23 schrieb "Pallav Nawani"
<mailto:>:

I doubt that there is a cross-platform way. You would need
to code for both iOS and Android separately. The way I did
it was to create an in-app purchase interface class & then
made platform specific derived classes. The iOS specific
class tapped into the Objective C API and the Android
specific class used JNI to call google's API.

It was a tedious and sometimes non-obvious process, but it
worked.

*Pallav Nawani*
*IronCode Gaming Private Limited*
Website: http://www.ironcode.com
Twitter: http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: *9997478768*

On Sun, Sep 21, 2014 at 8:02 AM, ruler501
<mailto:> wrote:

__
I'm looking for a cross-platform(iOS and Android) way to
process and verify in-app purchases. Is this possible?
If not what is the best way to do it for each of those
two platforms, note I'm using C++ not C.

_______________________________________________
SDL mailing list
<mailto:
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org



_______________________________________________
SDL mailing list
<mailto:
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


_______________________________________________
SDL mailing list
<mailto:
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org





_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org
ruler501


Joined: 14 Aug 2014
Posts: 26
Location: Dallas, Texas
Thanks for the code, it is greatly appreciated.

It does seem to be missing a few headers though(XAppBase.h, misc/XF_Log.h, os/xf_os_android_jni.h) otherwise it seems to be working great, and though I'm not sure if we could make a library out of it, because of the android complications I think I could write some scripts to make it seem almost like a plug and play library.
ruler501


Joined: 14 Aug 2014
Posts: 26
Location: Dallas, Texas
ruler501 wrote:
Thanks for the code, it is greatly appreciated.

It does seem to be missing a few headers though(XAppBase.h, misc/XF_Log.h, os/xf_os_android_jni.h) otherwise it seems to be working great, and though I'm not sure if we could make a library out of it, because of the android complications I think I could write some scripts to make it seem almost like a plug and play library.


I managed to edit it so it would compile, but I'm not certain my edits were correct, what is mClassPath = pApp->mJavaClassPath; supposed to do? I just assumed it returned the path of the main package in my code.

Also does XFOsAndroidManageLocalRef aLocalRef(aEnv); do anything? It seems the value was never used so I commented out those lines.

I also had to remove most of the logging since that header was missing.
In-App Purchases
Alexander Chaliovski
Guest

Thanks a lot for the code Smile

On Fri, Sep 26, 2014 at 5:28 PM, ruler501 wrote:
Quote:



ruler501 wrote:

Thanks for the code, it is greatly appreciated.

It does seem to be missing a few headers though(XAppBase.h, misc/XF_Log.h, os/xf_os_android_jni.h) otherwise it seems to be working great, and though I'm not sure if we could make a library out of it, because of the android complications I think I could write some scripts to make it seem almost like a plug and play library.




I managed to edit it so it would compile, but I'm not certain my edits were correct, what is mClassPath = pApp->mJavaClassPath; supposed to do? I just assumed it returned the path of the main package in my code.

Also does XFOsAndroidManageLocalRef aLocalRef(aEnv); do anything? It seems the value was never used so I commented out those lines.

I also had to remove most of the logging since that header was missing.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

In-App Purchases
Pallav Nawani


Joined: 19 May 2011
Posts: 122
Location: Dehradun, India
Those other headers are not required, you can simply remove them.
ClassPath is the path for the main activity, like:


mClassPath  = "com/ironcode/droid/PahelikaSecretLegends/PahelikaSecretLegends";


basically used to call the methods defined in the game's activity via JNI.


XFOsAndroidManageLocalRef aLocalRef(aEnv); 

is used to ensure that JNI doesn't garbage collect local variables we create via JNI before we are done using them. I am not quite sure whether this works at all though, I just had it as a safety measure.





Pallav Nawani
IronCode Gaming Private Limited
Website: http://www.ironcode.com
Twitter:  http://twitter.com/Ironcode_Gaming
Facebook: http://www.facebook.com/Ironcode.Gaming
Mobile: 9997478768


On Fri, Sep 26, 2014 at 9:58 PM, ruler501 wrote:
Quote:



ruler501 wrote:

Thanks for the code, it is greatly appreciated.

It does seem to be missing a few headers though(XAppBase.h, misc/XF_Log.h, os/xf_os_android_jni.h) otherwise it seems to be working great, and though I'm not sure if we could make a library out of it, because of the android complications I think I could write some scripts to make it seem almost like a plug and play library.




I managed to edit it so it would compile, but I'm not certain my edits were correct, what is mClassPath = pApp->mJavaClassPath; supposed to do? I just assumed it returned the path of the main package in my code.

Also does XFOsAndroidManageLocalRef aLocalRef(aEnv); do anything? It seems the value was never used so I commented out those lines.

I also had to remove most of the logging since that header was missing.


_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org