##Releases The latest build is always available [here] (https://github.com/onepf/OpenIAB/releases).
##About
Supporting in-app purchases for different platforms and stores is not a simple process. The developer has to study new API for each new store that he/she wants to use in an application.
OpenIAB plugin enables Unity developers to reduce integration and maintenance time. The plugin uses one common interface for 3 mobile platforms: Android, iOS and Windows Phone 8. It’s based on OpenIAB library developed by One Platform Foundation team.
OpenIAB plugin comes with full source code under Apache 2.0 license.
Supported Stores:
Android:
- Google Play
- Amazon Appstore (only for Android < 5.0)
- Yandex.Store
- Samsung Apps
- Nokia Store
- SlideMe
- Appland
- Aptoide
- AppMall
iOS: Apple Store
Windows phone 8: Windows Phone Store
##Version The current version is 0.9.8.4.
##Tutorial For a comprehensive tutorial, Check-out the complete turorial on master here.
##Sample project You can check out this sample project here.
##How to build plugin
Plugin build view Gradle. You no need to download binary package of gradle tools, only requirements
is installed JDK version 1.6 or great and setup JAVA_HOME environment variable.
Before build plugin you must:
- Install Unity, start it and accept license agreement.
- Unity must be closed while build is running.
For build project you must run from terminal in unity_plugin
directory of project
../gradlew clean buildPlugin
On Windows run
..\gradlew.bat clean buildPlugin
If build was successfully, you can find output unitypackage file in directory
unity_plugin/build/outputs
Build tools search unity by default path for OS. If you change default path, you need to set
path unityExecutable
property in gradle.properties
file.
##Options Create Options object.
var options = new Options();
Set store search strategy.
options.storeSearchStrategy = SearchStrategy.INSTALLER_THEN_BEST_FIT;
Set available stores to restrict the set of stores to check.
options.availableStoreNames = new string[] { OpenIAB_Android.STORE_GOOGLE, OpenIAB_Android.STORE_YANDEX };
Set preferred store names (works only for store search strategy OpenIabHelper.Options.SEARCH_STRATEGY_BEST_FIT
and OpenIabHelper.Options.SEARCH_STRATEGY_INSTALLER_THEN_BEST_FIT
).
options.prefferedStoreNames = new string[] { OpenIAB_Android.STORE_GOOGLE, OpenIAB_Android.STORE_YANDEX };
Set store keys.
options.storeKeys = new Dictionary<string, string> { {OpenIAB_Android.STORE_GOOGLE, "publicKey"} };
Set verifying mode (applicable only for Google Play, Appland, Aptoide, AppMall, SlideMe, Yandex.Store).
options.verifyMode = OptionsVerifyMode.VERIFY_SKIP;
Init with specified options.
OpenIAB.init(options);
##Suggestions/Questions We seek to constantly improve our project and give Unity developers more power when working with in-app purchases. We are open to any comments and suggestions you may have regarding the additional features to be implemented in our plugin.
If you know about issues we missed, please let us know in
Issues on GitHub: https://github.com/onepf/OpenIAB/issues
or by email: [email protected]
If you detect some issues with integration into your project, please let us know in http://stackoverflow.com/questions/ask/advice?
When you post a question on stackoverlow, mark your post with the following tags
“in-app purchase”, “unity3d”, “openiab”. It will help you to get a faster response
from our community.
##License The source code of the OpenIAB Unity plugin and OpenIAB library are available under the terms of the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
The OpenIAB API specification and the related texts are available under the terms of the Creative Commons Attribution 2.5 license: http://creativecommons.org/licenses/by/2.5/