public static void PayForCommodity(CommodityData data) { string orderId = data.orderId; string productId = data.ItemID.ToString(); string productName = data.BasicData.Name; string payDescription = data.BasicData.Description; float exchangeRatio = RmbYuan2NdBean; if (data.currency == CurrencyType.RmbYuan) { exchangeRatio = RmbYuan2NdBean; } else if (data.currency == CurrencyType.RmbJiao) { exchangeRatio = 0.1f * RmbYuan2NdBean; } else if (data.currency == CurrencyType.RmbFen) { exchangeRatio = 0.01f * RmbYuan2NdBean; } float productPrice = exchangeRatio * data.currPrice; float productOriginalPrice = exchangeRatio * data.originalPrice; int productCnt = data.BasicData.Count; productPrice *= productCnt; productOriginalPrice *= productCnt; HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndUniPayAysn", orderId, productId, productName, productPrice, productOriginalPrice, productCnt, payDescription); }
public static void PayForCommodity(CommodityData data) { string roleName = Globals.Instance.MGameDataManager.MActorData.BasicData.Name; int level = Globals.Instance.MGameDataManager.MActorData.BasicData.Level; float exchangeRatio = RmbYuan2Mibi; if (data.currency == CurrencyType.RmbYuan) { exchangeRatio = RmbYuan2Mibi; } else if (data.currency == CurrencyType.RmbJiao) { exchangeRatio = 0.1f * RmbYuan2Mibi; } else if (data.currency == CurrencyType.RmbFen) { exchangeRatio = 0.01f * RmbYuan2Mibi; } float productPrice = exchangeRatio * data.currPrice; float productOriginalPrice = exchangeRatio * data.originalPrice; int productCnt = data.BasicData.Count; productPrice *= productCnt; productOriginalPrice *= productCnt; int mibi = (int)Mathf.CeilToInt(productPrice); HelpUtil.AndroidNativeCallStatic(JavaClassUnity2MiSDK, "miUniPayOnline", data.orderId, mibi); }
/** * * @param allowContinuousPay * @param amount * @param serverId * @param roleId * @param roleName * @param grade * @param customInfo 充值自定义信息,此信息作为充值订单的附加信息,充值过程中不作任何处理,仅用于游戏设置自助信息,比如游戏自身产生的订单号、玩家角色、游戏模式等。 * 如果设置了自定义信息,UC在完成充值后,调用充值结果回调接口向游戏服务器发送充值结果时将会附带此信息,游戏服务器需自行解析自定义信息。 * 如果不需设置自定义信息,将此参数置为空字符串即可。 * @return * */ // /// <summary> /// 执行充值下单操作,此操作会调出充值界面。 /// </summary> /// <param name="allowContinuousPay">设置是否允许连接充值,true表示在一次充值完成后在充值界面中可以继续下一笔充值,false表示只能进行一笔充值即返回游戏。</param> /// <param name="amount">充值金额。默认为0,如果不设或设为0,充值时用户从充值界面中选择或输入金额;如果设为大于0的值,表示固定充值金额,不允许用户选择或输入其它金额。</param> /// <param name="serverId">当前充值的游戏服务器(分区)标识,此标识即UC分配的游戏服务器ID</param> /// <param name="roleId">当前充值用户在游戏中的角色标识</param> /// <param name="roleName">当前充值用户在游戏中的角色名称</param> /// <param name="grade">当前充值用户在游戏中的角色等级</param> /// <param name="customInfo"> /// 充值自定义信息,此信息作为充值订单的附加信息,充值过程中不作任何处理,仅用于游戏设置自助信息,比如游戏自身产生的订单号、玩家角色、游戏模式等。 /// 如果设置了自定义信息,UC在完成充值后,调用充值结果回调接口向游戏服务器发送充值结果时将会附带此信息,游戏服务器需自行解析自定义信息。 /// 如果不需设置自定义信息,将此参数置为空字符串即可。 /// </param> public static void pay(bool allowContinuousPay, float amount, int serverId, string roleId, string roleName, string grade, string customInfo) { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "pay", allowContinuousPay, amount, serverId, roleId, roleName, grade, customInfo); }
public static bool IsGuestLogined() { // status // 0: not login // 1: account logined // 2: geust logined // int status = HelpUtil.AndroidNativeCallStatic <int>(JavaClassUnity2NdSDK, "ndGetLoginStatus"); Debug.Log("ndGetLoginStatus == " + status); return(status == 2); }
/// <summary> /// 初始化SDK /// </summary> /// <param name="debugMode">是否联调模式, false=连接SDK的正式生产环境,true=连接SDK的测试联调环境</param> /// <param name="loglevel"> /// 日志级别: /// 0=错误信息级别,记录错误日志, /// 1=警告信息级别,记录错误和警告日志, /// 2=调试信息级别,记录错误、警告和调试信息,为最详尽的日志级别 /// </param> /// <param name="cpId">游戏合作商ID,该ID由UC游戏中心分配,唯一标识一个游戏合作商</param> /// <param name="gameId">游戏ID,该ID由UC游戏中心分配,唯一标识一款游戏</param> /// <param name="serverId">游戏服务器(游戏分区)标识,由UC游戏中心分配</param> /// <param name="serverName">游戏服务器(游戏分区)名称</param> /// <param name="enablePayHistory">是否启用支付查询功能</param> /// <param name="enableLogout">是否启用用户切换功能</param> public static void initSDK(bool debugMode, int loglevel, int cpId, int gameId, int serverId, string serverName, bool enablePayHistory, bool enableLogout) { print("call initSDK...."); HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "initSDK", debugMode, loglevel, cpId, gameId, serverId, serverName, enablePayHistory, enableLogout); }
public static void EnterNdUserFeedback() { HelpUtil.AndroidNativeCallStatic <int>(JavaClassUnity2NdSDK, "ndUserFeedback"); }
public static void EnterNdPauseApp() { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndPauseApp"); }
public static void EnterNdGameBBS() { HelpUtil.AndroidNativeCallStatic <int>(JavaClassUnity2NdSDK, "ndEnterAppBBS"); }
public static void EnterNdGameZone() { HelpUtil.AndroidNativeCallStatic <int>(JavaClassUnity2NdSDK, "ndEnterAppCenter", AppId); }
/// <summary> /// 提交游戏扩展数据,在登录成功以后可以调用。具体的数据种类和数据内容定义,请参考SDK开发参考文档。 /// </summary> /// <param name="dataType">数据种类</param> /// <param name="dataStr">数据内容,是一个 JSON 字符串。</param> public static void submitExtendData(string dataType, string dataStr) { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "submitExtendData", dataType, dataStr); }
public static bool IsLogined() { return(HelpUtil.AndroidNativeCallStatic <bool>(JavaClassUnity2NdSDK, "ndIsLogined")); }
public static void Login() { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndLogin"); }
/// <summary> /// 返回用户登录后的会话标识,此标识会在失效时刷新,游戏在每次需要使用该标识时应从SDK获取 /// </summary> /// <returns>用户登录会话标识</returns> public static string getSid() { return(HelpUtil.AndroidNativeCallStatic <string>(SDK_JAVA_CLASS, "getSid")); }
/// <summary> /// 调用SDK的用户登录 /// 注意:需要支持游戏老账号(游戏自身账号)登录时(enableGameAccount=true),需要在 Android 项目的 Java 代码中编写用户登录验证的逻辑(GameUserLoginOperation 类的 process 方法中)。 /// </summary> /// <param name="enableGameAccount">是否允许使用游戏老账号(游戏自身账号)登录</param> /// <param name="gameAccountTitle"> /// 游戏老账号(游戏自身账号)的账号名称,如“三国号”、“风云号”等。 /// 如果 enableGameAccount 为false,此参数的值设为空字符串即可。 /// </param> public static void login(bool enableGameAccount, string gameAccountTitle) { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "login", enableGameAccount, gameAccountTitle); }
/// <summary> /// 设置屏幕方向(0=竖屏,1=横屏),默认为竖屏(0)。 /// </summary> /// <param name="orientation">屏幕方向,0=竖屏,1=横屏,Constants 中定义了用到的常量。</param> public static void setOrientation(int orientation) { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "setOrientation", orientation); }
/// <summary> /// 退出SDK,游戏退出前必须调用此方法,以清理SDK占用的系统资源。如果游戏退出时不调用该方法,可能会引起程序错误。 /// </summary> public static void exitSDK() { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "exitSDK"); }
/// <summary> /// 获取当前登录用户的UC会员信息,包括:状态、有效期、特权等,结果从回调中获取。 /// </summary> public static void getUCVipInfo() { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "getUCVipInfo"); }
/// <summary> /// 当前登录用户是否UC会员,结果从回调中获取。 /// </summary> public static void isUCVip() { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "isUCVip"); }
public static void EnderUserSettings() { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndEnterUserSetting", 0); }
/// <summary> /// 退出当前登录的账号 /// </summary> public static void logout() { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "logout"); }
public static void CloseSDK() { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndCloseSDK"); }
public static string GetUserUniqId() { return(HelpUtil.AndroidNativeCallStatic <string>(JavaClassUnity2NdSDK, "ndGetUserUniqId")); }
public static void Logout(bool cancelAutoLogin) { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndLogout", cancelAutoLogin); }
/// <summary> /// 进入某一特定SDK界面 /// </summary> /// <param name="business">界面业务参数,用于调用目标业务UI。具体的业务参数请参考SDK开发参考文档。</param> public static void enterUI(string business) { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "enterUI", business); }
public static void GuestRegister() { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndGuestRegister"); }
/// <summary> /// 设置日志级别 /// </summary> /// <param name="logLevel"> /// 0=错误信息级别,记录错误日志, /// 1=警告信息级别,记录错误和警告日志, /// 2=调试信息级别,记录错误、警告和调试信息,为最详尽的日志级别。 /// Constants 中定义了用到的常量。 /// </param> public static void setLogLevel(int logLevel) { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "setLogLevel", logLevel); }
public static void AppVersionUpdate() { HelpUtil.AndroidNativeCallStatic(JavaClassUnity2NdSDK, "ndAppVersionUpdate"); }
/// <summary> /// 进入九游社区(个人中心) /// </summary> public static void enterUserCenter() { HelpUtil.AndroidNativeCallStatic(SDK_JAVA_CLASS, "enterUserCenter"); }
public static void OpenCharge() { HelpUtil.AndroidNativeCallStatic <int>(JavaClassUnity2NdSDK, "ndEnterRecharge"); }
public static void EnterNdPlatform() { HelpUtil.AndroidNativeCallStatic <int>(JavaClassUnity2NdSDK, "ndEnterPlatform"); }