Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

Preface : 

  1. GooglePlayServices version must be at least 8.1.
  2. The Plugin contains Appoxee Android SDK version 2.6.1 .
  3. The Plugin Contains Appoxee iOS SDK version 4.0.

 

Integration Instructions : 

Phase 1
  1. Download the Appoxee Android Unity Plugin Zip file for the Download Page.
  2. Extract the zip file to path : UnityProjectName/Assets
  3. For Android Only : Replace in AndroidManifest.xml the "YOUR_PACKAGE_NAME" placeholder to your reverse-domain package name as you set in the Unity IDE
  4. Verify that this is the directory structure and content after extracting : 
    1. UnityProjectName/Assets/PluginsAppoxeePlugin/AppoxeeAndroidBridgeAppoxeePlugin.cs 
    2. UnityProjectName/Assets/PluginsAppoxeePlugin/IAppoxeeCallable.cs 
    3. UnityProjectName/Assets/Plugins/Android/appoxee-sdk.jar 
    4. UnityProjectName/Assets/Plugins/Android/appoxee-unity-plugin.jar 
    5. UnityProjectName/Assets/Plugins/Android/AppoxeeSDK/AndroidManifest.xml 
    6. UnityProjectName/Assets/Plugins/Android/AppoxeeSDK/project.properties 
    7. UnityProjectName/Assets/Plugins/Android/AppoxeeSDK/libs 
    8. UnityProjectName/Assets/Plugins/Android/AppoxeeSDK/res 
    9. UnityProjectName/Assets/Plugins/Android/google-play-services_lib 
    10. UnityProjectName/Assets/Plugins/ios/AppoxeePlugin.h + m
    11. UnityProjectName/Assets/Plugins/ios/AppoxeePluginDelegate.h + m
    12. UnityProjectName/Assets/Plugins/ios/UnityAppController+AppoxeeUnity.h + m
    13. UnityProjectName/Assets/Plugins/ios/AppoxeeSDK.framework

  5. Open your Unity project.
Phase 2
  1. Your MainCameraScript class must implement IAppoxeeCallable in order to receive the results of the API calls.

  2. Your MainCameraScript class should hold a member of the AppoxeeAndroidBridge AppoxeePlugin in order to use the different API calls after initializing it, using the Factory method.
  3. In order to initialise the Appoxee Unity Bridge, call AppoxeeAndroidBridgeAppoxeePlugin.CreateAppoxeeAndroidBridgeCreateAppoxeeUnityBridge() , passing it your gameObject, Your SDK Key & Secret Key. Do so in your onEnableonStart() method.

    Warning
    titleSDK Key & Secret - Do Not Confuse Platforms!

     

    Make sure the Key & Secret under your iOS Application in the Appoxee Dashboard is used for your iOS Unity App.

    Make sure the Key & Secret under your Android Application in the Appoxee Dashboard is used for your Android Unity App.

    Do not mix between them!
  4. In your onStart() method, call AppoxeeReportActivate() in order to signal  to the SDK that the App is now in foreground. This is crucial for analytics.
  5. In your onDestroy() method, call AppoxeeReportBackground() in order to signal to the SDK that the App is now in background, This is crucial for analytics.
  6. Android Users - Please Note : if your AppoxeeAndroidBridge your AppoxeePlugin member is NULL after calling the Factory method, the appoxee-unity-plugin.jar is MISSING, thus resulting a crash on each API call.
  7. The following code snippet shows the MainCameraScript class as step 1 - 5 explain : 

    Code Block
    languagec#
    titleInit AppoxeeAndroidBridge
    linenumberstrue
    using UnityEngine;
    using System;
    ...
    public class MainCameraScript : MonoBehaviour,IAppoxeeCallable<String> {
    ...
    	private AppoxeeAndroidBridgeAppoxeePlugin AppoxeePluginunityBridge; //Keep as field/member in order to use the API. if Null, API calls will cause a crash in runtime.
    ...
    	void Start OnEnable() {
    
    		if (AppoxeePluginunityBridge == null) {
    			AppoxeePluginunityBridge = AppoxeeAndroidBridgeAppoxeePlugin.CreateAppoxeeAndroidBridgeCreateAppoxeeUnityBridge(this, "YOUR_SDK_KEY", "YOUR_SECRET_KEY");
    		}
    	}
    ...
    	void Start () {
    		// AppoxeePlugin.AppoxeeReportActivate () must be called to report that the app was activated, crucial for analytics
    		if (AppoxeePlugin != null) 
    			AppoxeePlugin.AppoxeeReportActivate ();#if UNITY_ANDROID
    				unityBridge.ReportActivation();
    			#endif
    		}
    	}
    ...
    	void OnDestroy() {
    		// AppoxeePlugin.AppoxeeReportBackground () must be called to report that the app was deactivated, crucial for analytics
    		if (AppoxeePlugin != null) 
    			AppoxeePlugin.AppoxeeReportBackground ();	#if UNITY_ANDROID
    				unityBridge.ReportDeactivation();
    			#endif
    	}
    ...
    }
  8. API Samples can be seen in the following link

...