123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519 |
- using UnityEngine;
- using System.Collections;
- using System.Collections.Generic;
- using System.Runtime.InteropServices;
- using System.Text;
- using System;
- namespace anysdk {
- public enum AdsResultCode
- {
- kAdsReceived = 0, /**< enum the callback: the ad is received is at center. */
-
- kAdsShown, /**< enum the callback: the advertisement dismissed. */
- kAdsDismissed, /**< enum the callback: the advertisement dismissed. */
-
- kPointsSpendSucceed, /**< enum the callback: the points spend succeed. */
- kPointsSpendFailed, /**< enum the callback: the points spend failed. */
-
-
-
- kNetworkError, /**< enum the callback of Network error at center. */
- kUnknownError, /**< enum the callback of Unknown error. */
- kOfferWallOnPointsChanged, /**< enum the callback of Changing the point of offerwall. */
- kRewardedVideoWithReward,/**< enum the callback of receive the reward of rewardedvideo. */
- kInAppPurchaseFinished,/**< enum the callback of finishing IAP ad. */
- kAdsClicked,/**< enum the callback of the advertisement clicked. */
- kAdsExtension = 40000 /**< enum value is extension code . */
- } ;
- /** @brief AdsPos enum, with inline docs */
- public enum AdsPos
- {
- kPosCenter = 0,/**< enum the toolbar is at center. */
- kPosTop,/**< enum the toolbar is at top. */
- kPosTopLeft,/**< enum the toolbar is at topleft. */
- kPosTopRight,/**< enum the toolbar is at topright. */
- kPosBottom,/**< enum the toolbar is at bottom. */
- kPosBottomLeft,/**< enum the toolbar is at bottomleft. */
- kPosBottomRight,/**< enum the toolbar is at bottomright. */
- };
- /** @brief AdsType enum, with inline docs */
- public enum AdsType
- {
- AD_TYPE_BANNER = 0,/**< enum value is banner ads . */
- AD_TYPE_FULLSCREEN,/**< enum value is fullscreen ads . */
- AD_TYPE_MOREAPP,/**< enum value is moreapp ads . */
- AD_TYPE_OFFERWALL,/**< enum value is offerwall ads . */
- AD_TYPE_REWARDEDVIDEO,/**< enum value is rewarded video ads . */
- AD_TYPE_NATIVEEXPRESS,/**< enum value is Native express ads . */
- AD_TYPE_NATIVEADVANCED,/**< enum value is Native advanced ads . */
- } ;
- public class AnySDKAds
- {
-
- private static AnySDKAds _instance;
-
- public static AnySDKAds getInstance() {
- if( null == _instance ) {
- _instance = new AnySDKAds();
- }
- return _instance;
- }
-
- /**
- *
- * @Title: showAds
- * @Description: show ad with the type and idx
- * @param @param adsType the type of ad
- * @param @param idx
- * @return void
- */
- public void showAds(AdsType adsType, int idx = 1)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKAds_nativeShowAds (adsType,idx);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- *
- * @Title: hideAds
- * @Description: hide ad with the type and idx
- * @param @param adsType the type of ad
- * @param @param idx
- * @return void
- */
- public void hideAds(AdsType adsType, int idx = 1)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKAds_nativeHideAds (adsType,idx);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- - *
- - * @Title: preloadAds
- - * @Description: preload ad with the type and idx
- - * @param @param adsType the type of ad
- - * @param @param idx
- - * @return void
- - */
-
- public void preloadAds(AdsType adsType, int idx = 1)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKAds_nativePreloadAds (adsType,idx);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- *
- * @Title: queryPoints
- * @Description: query the ponits in the type of offerwall
- * @param @return
- * @return float
- */
- public float queryPoints()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- return AnySDKAds_nativeQueryPoints ();
- #else
- Debug.Log("This platform does not support!");
- return 0;
- #endif
- }
- /**
- *
- * @Title: spendPoints
- * @Description: spend the ponits in the type of offerwall
- * @param @param points
- * @return void
- */
- public void spendPoints (int points)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKAds_nativeSpendPoints (points);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- *
- * @Title: isAdTypeSupported
- * @Description: does the plugin support the type of ad
- * @param @param adsType
- * @param @return
- * @return boolean
- */
- public bool isAdTypeSupported(AdsType adType)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- return AnySDKAds_nativeIsAdTypeSupported (adType);
- #else
- Debug.Log("This platform does not support!");
- return false;
- #endif
-
- }
- /**
- @brief Check function the plugin support or not
- */
-
- public bool isFunctionSupported (string functionName)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- return AnySDKAds_nativeIsFunctionSupported (functionName);
- #else
- Debug.Log("This platform does not support!");
- return false;
- #endif
- }
- /**
- * set debugmode for plugin
- *
- */
- [Obsolete("This interface is obsolete!",false)]
- public void setDebugMode(bool bDebug)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKAds_nativeSetDebugMode (bDebug);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- @brief set pListener The callback object for ads result
- @param the MonoBehaviour object
- @param the callback of function
- */
- public void setListener(MonoBehaviour gameObject,string functionName)
- {
- #if !UNITY_EDITOR && UNITY_ANDROID
- AnySDKUtil.registerActionCallback (AnySDKType.Ads, gameObject, functionName);
- #elif UNITY_IOS
- string gameObjectName = gameObject.gameObject.name;
- AnySDKAds_nativeSetListener(gameObjectName,functionName);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- * Get Plugin version
- *
- * @return string
- */
- public string getPluginVersion()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- StringBuilder version = new StringBuilder();
- version.Capacity = AnySDKUtil.MAX_CAPACITY_NUM;
- AnySDKAds_nativeGetPluginVersion (version);
- return version.ToString();
- #else
- Debug.Log("This platform does not support!");
- return "";
- #endif
- }
- /**
- * Get Sdk version
- *
- * @return string
- */
- public string getSDKVersion()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- StringBuilder version = new StringBuilder();
- version.Capacity = AnySDKUtil.MAX_CAPACITY_NUM;
- AnySDKAds_nativeGetSDKVersion (version);
- return version.ToString();
- #else
- Debug.Log("This platform does not support!");
- return "";
- #endif
- }
-
- /**
- *@brief methods for reflections
- *@param function name
- *@param AnySDKParam* param
- *@return void
- */
- public void callFuncWithParam(string functionName, AnySDKParam param)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- List<AnySDKParam> list = new List<AnySDKParam> ();
- list.Add (param);
- AnySDKAds_nativeCallFuncWithParam(functionName, list.ToArray(),list.Count);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param List<AnySDKParam> params
- *@return void
- */
- public void callFuncWithParam(string functionName, List<AnySDKParam> param = null)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- if (param == null)
- {
- AnySDKAds_nativeCallFuncWithParam (functionName, null, 0);
-
- } else {
- AnySDKAds_nativeCallFuncWithParam (functionName, param.ToArray (), param.Count);
- }
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param AnySDKParam param
- *@return int
- */
- public int callIntFuncWithParam(string functionName, AnySDKParam param)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- List<AnySDKParam> list = new List<AnySDKParam> ();
- list.Add (param);
- return AnySDKAds_nativeCallIntFuncWithParam(functionName, list.ToArray(),list.Count);
- #else
- Debug.Log("This platform does not support!");
- return -1;
- #endif
- }
-
- /**
- *@brief methods for reflections
- *@param function name
- *@param List<AnySDKParam> param
- *@return int
- */
- public int callIntFuncWithParam(string functionName, List<AnySDKParam> param = null)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- if (param == null)
- {
- return AnySDKAds_nativeCallIntFuncWithParam (functionName, null, 0);
-
- } else {
- return AnySDKAds_nativeCallIntFuncWithParam (functionName, param.ToArray (), param.Count);
- }
- #else
- Debug.Log("This platform does not support!");
- return -1;
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param AnySDKParam param
- *@return float
- */
- public float callFloatFuncWithParam(string functionName, AnySDKParam param)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- List<AnySDKParam> list = new List<AnySDKParam> ();
- list.Add (param);
- return AnySDKAds_nativeCallFloatFuncWithParam(functionName, list.ToArray(),list.Count);
- #else
- Debug.Log("This platform does not support!");
- return 0;
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param List<AnySDKParam> param
- *@return float
- */
- public float callFloatFuncWithParam(string functionName, List<AnySDKParam> param = null)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- if (param == null)
- {
- return AnySDKAds_nativeCallFloatFuncWithParam (functionName, null, 0);
-
- } else {
- return AnySDKAds_nativeCallFloatFuncWithParam (functionName, param.ToArray (), param.Count);
- }
- #else
- Debug.Log("This platform does not support!");
- return 0;
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param AnySDKParam param
- *@return bool
- */
- public bool callBoolFuncWithParam(string functionName, AnySDKParam param)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- List<AnySDKParam> list = new List<AnySDKParam> ();
- list.Add (param);
- return AnySDKAds_nativeCallBoolFuncWithParam(functionName, list.ToArray(),list.Count);
- #else
- Debug.Log("This platform does not support!");
- return false;
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param List<AnySDKParam> param
- *@return bool
- */
- public bool callBoolFuncWithParam(string functionName, List<AnySDKParam> param = null)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- if (param == null)
- {
- return AnySDKAds_nativeCallBoolFuncWithParam (functionName, null, 0);
-
- } else {
- return AnySDKAds_nativeCallBoolFuncWithParam (functionName, param.ToArray (), param.Count);
- }
- #else
- Debug.Log("This platform does not support!");
- return false;
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param AnySDKParam param
- *@return string
- */
- public string callStringFuncWithParam(string functionName, AnySDKParam param)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- List<AnySDKParam> list = new List<AnySDKParam> ();
- list.Add (param);
- StringBuilder value = new StringBuilder();
- value.Capacity = AnySDKUtil.MAX_CAPACITY_NUM;
- AnySDKAds_nativeCallStringFuncWithParam(functionName, list.ToArray(),list.Count,value);
- return value.ToString ();
- #else
- Debug.Log("This platform does not support!");
- return "";
- #endif
- }
- /**
- *@brief methods for reflections
- *@param function name
- *@param List<AnySDKParam> param
- *@return string
- */
- public string callStringFuncWithParam(string functionName, List<AnySDKParam> param = null)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- StringBuilder value = new StringBuilder();
- value.Capacity = AnySDKUtil.MAX_CAPACITY_NUM;
- if (param == null)
- {
- AnySDKAds_nativeCallStringFuncWithParam (functionName, null, 0,value);
-
- } else {
- AnySDKAds_nativeCallStringFuncWithParam (functionName, param.ToArray (), param.Count,value);
- }
- return value.ToString ();
- #else
- Debug.Log("This platform does not support!");
- return "";
- #endif
- }
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM,CallingConvention=CallingConvention.Cdecl)]
- private static extern void AnySDKAds_RegisterExternalCallDelegate(IntPtr functionPointer);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeSetListener(string gameName, string functionName);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeShowAds(AdsType adsType, int idx = 1);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeHideAds(AdsType adsType, int idx = 1);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativePreloadAds(AdsType adsType, int idx = 1);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern float AnySDKAds_nativeQueryPoints();
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeSpendPoints(int points);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern bool AnySDKAds_nativeIsAdTypeSupported(AdsType adsType);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern bool AnySDKAds_nativeIsFunctionSupported(string functionName);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeSetDebugMode(bool bDebug);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeGetPluginVersion(StringBuilder version);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeGetSDKVersion(StringBuilder version);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeCallFuncWithParam(string functionName, AnySDKParam[] param,int count);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern int AnySDKAds_nativeCallIntFuncWithParam(string functionName, AnySDKParam[] param,int count);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern float AnySDKAds_nativeCallFloatFuncWithParam(string functionName, AnySDKParam[] param,int count);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern bool AnySDKAds_nativeCallBoolFuncWithParam(string functionName, AnySDKParam[] param,int count);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKAds_nativeCallStringFuncWithParam(string functionName, AnySDKParam[] param,int count,StringBuilder value);
- }
-
- }
|