123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496 |
- using UnityEngine;
- using System.Collections;
- using System.Collections.Generic;
- using System.Runtime.InteropServices;
- using System.Text;
- using System;
- namespace anysdk {
- public enum ToolBarPlace
- {
- kToolBarTopLeft = 1,/**< enum the toolbar is at topleft. */
- kToolBarTopRight,/**< enum the toolbar is at topright. */
- kToolBarMidLeft,/**< enum the toolbar is at midleft. */
- kToolBarMidRight,/**< enum the toolbar is at midright. */
- kToolBarBottomLeft,/**< enum the toolbar is at bottomleft. */
- kToolBarBottomRight,/**< enum the toolbar is at bottomright. */
- } ;
- public enum UserActionResultCode
- {
- kInitSuccess = 0,/**< enum value is callback of succeeding in initing sdk. */
- kInitFail,/**< enum value is callback of failing to init sdk. */
- kLoginSuccess,/**< enum value is callback of succeeding in login.*/
- kLoginNetworkError,/**< enum value is callback of network error*/
- kLoginNoNeed,/**< enum value is callback of no need login.*/
- kLoginFail,/**< enum value is callback of failing to login. */
- kLoginCancel,/**< enum value is callback of canceling to login. */
- kLogoutSuccess,/**< enum value is callback of succeeding in logout. */
- kLogoutFail,/**< enum value is callback of failing to logout. */
- kPlatformEnter,/**< enum value is callback after enter platform. */
- kPlatformBack,/**< enum value is callback after exit antiAddiction. */
- kPausePage,/**< enum value is callback after exit pause page. */
- kExitPage,/**< enum value is callback after exit exit page. */
- kAntiAddictionQuery,/**< enum value is callback after querying antiAddiction. */
- kRealNameRegister,/**< enum value is callback after registering realname. */
- kAccountSwitchSuccess,/**< enum alue is callback of succeeding in switching account. */
- kAccountSwitchFail,/**< enum value is callback of failing to switch account. */
- kOpenShop,/**< enum value is callback of open the shop. */
- kAccountSwitchCancel,/**< enum value is callback of canceling to switch account. */
- kGameExitPage,/**< enum value is callback of no channel exit page. */
- kUserExtension = 50000 /**< enum value is extension code . */
-
-
- } ;
- public class AnySDKUser
- {
- private static AnySDKUser _instance;
-
- public static AnySDKUser getInstance() {
- if( null == _instance ) {
- _instance = new AnySDKUser();
- }
- return _instance;
- }
- /**
- @brief User login
- */
- public void login()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKUser_nativeLogin ();
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- @brief User login
- if the process of logining need to know the param of server_id ,
- you can use the function
- and if you must change oauthloginserver, you can add the param of oauthLoginServer
- @param server_id
- @param oauthLoginServer
- */
- [Obsolete("Please use Resources.login(Dictionary<string,string> info) instead")]
- public void login(string serverID,string authLoginServer = "")
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- AnySDKUser_nativeLoginWithParam (serverID,authLoginServer);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- @brief User login
- if the process of logining need to know the parameters ,
- you can use the function
- @param the parameters
- */
- public void login(Dictionary<string,string> info)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- string sInfo = AnySDKUtil.dictionaryToString (info);
- Debug.Log("login " + sInfo);
- AnySDKUser_nativeLoginWithMap (sInfo);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- @brief Get user ID
- @return If user logined, return value is userID;
- else return value is empty string.
- */
- public string getUserID()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- StringBuilder userID = new StringBuilder();
- userID.Capacity = AnySDKUtil.MAX_CAPACITY_NUM;
- AnySDKUser_nativeGetUserID (userID);
- return userID.ToString();
- #else
- Debug.Log("This platform does not support!");
- return "";
- #endif
- }
- /**
- @brief Check whether the user logined or not
- @return If user logined, return value is true;
- else return value is false.
- */
- public bool isLogined()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- return AnySDKUser_nativeIsLogined ();
- #else
- Debug.Log("This platform does not support!");
- return false;
- #endif
- }
- /**
- @brief Check function the plugin support or not
- @param the name of plugin
- @return if the function support ,return true
- else retur false
- */
- public bool isFunctionSupported (string functionName)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- return AnySDKUser_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)
- AnySDKUser_nativeSetDebugMode (bDebug);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- @brief set pListener The callback object for user 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.User, gameObject, functionName);
- #elif UNITY_IOS
- string gameObjectName = gameObject.gameObject.name;
- AnySDKUser_nativeSetListener(gameObjectName,functionName);
- #else
- Debug.Log("This platform does not support!");
- #endif
- }
- /**
- @brief get plugin id
- @return the plugin id
- */
- public string getPluginId()
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- StringBuilder pluginlId = new StringBuilder();
- pluginlId.Capacity = AnySDKUtil.MAX_CAPACITY_NUM;
- AnySDKUser_nativeGetPluginId (pluginlId);
- return pluginlId.ToString();
- #else
- Debug.Log("This platform does not support!");
- return "";
- #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;
- AnySDKUser_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;
- AnySDKUser_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);
- AnySDKUser_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> param
- *@return void
- */
- public void callFuncWithParam(string functionName, List<AnySDKParam> param = null)
- {
- #if !UNITY_EDITOR &&( UNITY_ANDROID || UNITY_IOS)
- if (param == null)
- {
- AnySDKUser_nativeCallFuncWithParam (functionName, null, 0);
- } else {
- AnySDKUser_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 AnySDKUser_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 AnySDKUser_nativeCallIntFuncWithParam (functionName, null, 0);
- } else {
- return AnySDKUser_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 AnySDKUser_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 AnySDKUser_nativeCallFloatFuncWithParam (functionName, null, 0);
-
- } else {
- return AnySDKUser_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 AnySDKUser_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 AnySDKUser_nativeCallBoolFuncWithParam (functionName, null, 0);
-
- } else {
- return AnySDKUser_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;
- AnySDKUser_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)
- {
- AnySDKUser_nativeCallStringFuncWithParam (functionName, null, 0,value);
-
- } else {
- AnySDKUser_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 AnySDKUser_RegisterExternalCallDelegate(IntPtr functionPointer);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeLogin();
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeSetListener(string gameName, string functionName);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeLoginWithParam(string serverID, string authLoginServer);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeLoginWithMap(string info);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeGetUserID(StringBuilder userID);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern bool AnySDKUser_nativeIsLogined();
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern bool AnySDKUser_nativeIsFunctionSupported(string functionName);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeSetDebugMode(bool bDebug);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeGetPluginId(StringBuilder pluginID);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeGetPluginVersion(StringBuilder version);
-
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeGetSDKVersion(StringBuilder version);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeCallFuncWithParam(string functionName, AnySDKParam[] param,int count);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern int AnySDKUser_nativeCallIntFuncWithParam(string functionName, AnySDKParam[] param,int count);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern float AnySDKUser_nativeCallFloatFuncWithParam(string functionName, AnySDKParam[] param,int count);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern bool AnySDKUser_nativeCallBoolFuncWithParam(string functionName, AnySDKParam[] param,int count);
- [DllImport(AnySDKUtil.ANYSDK_PLATFORM)]
- private static extern void AnySDKUser_nativeCallStringFuncWithParam(string functionName, AnySDKParam[] param,int count,StringBuilder value);
- }
- }
|