/** 获取用户的档案*/ public string getPlayerParam(string paramName) { try { #if !UNITY_EDITOR && !LOCALARCHIVES && UNITY_ANDROID using (AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) { using (AndroidJavaObject jo = jc.GetStatic <AndroidJavaObject>("currentActivity")) { return(jo.Call <string>("getPlayerParam", paramName)); } } #else //由于取消加密系统,为了适应之前的旧系统 //首先,从新文件读取内容,如果未读取到,则从旧文件读取内容 //首先以加密的方式从旧文件读取内容,如果未读取到,则以未加密的 //方式从旧文件读取,如果都读取失败,则为失败 using (UniDataFileReader reader = new UniDataFileReader()) { if (!reader.Open(UniGameResources.ConnectPath("new_gamecenter_", paramName, ".txt"), false)) { if (!reader.Open(UniGameResources.ConnectPath("gamecenter_", paramName, ".txt"), true)) { if (!reader.Open(UniGameResources.ConnectPath("gamecenter_", paramName, ".txt"), false)) { return(""); } } } string ret = reader.reader.ReadString(); reader.Close(); return(ret); } #endif //UNITY_ANDROID } catch (System.Exception ex) { return(""); } }
/** 在与游戏中心连接完成并登陆成功后进行下面函数的访问*/ /** 获取用户的积分*/ public int getPlayerScore() { try { #if !UNITY_EDITOR && !LOCALARCHIVES && UNITY_ANDROID using (AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) { using (AndroidJavaObject jo = jc.GetStatic <AndroidJavaObject>("currentActivity")) { return(jo.Call <int>("getPlayerScore")); } } #else //由于取消加密系统,为了适应之前的旧系统 //首先,从新文件读取内容,如果未读取到,则从旧文件读取内容 //首先以加密的方式从旧文件读取内容,如果未读取到,则以未加密的 //方式从旧文件读取,如果都读取失败,则为失败 using (UniDataFileReader reader = new UniDataFileReader()) { if (!reader.Open("new_gamecenter_playerscore.txt", false)) { if (!reader.Open("gamecenter_playerscore.txt", true)) { if (!reader.Open("gamecenter_playerscore.txt", false)) { return(0); } } } int ret = reader.reader.ReadInt32(); reader.Close(); return(ret); } #endif //UNITY_ANDROID } catch (System.Exception ex) { return(0); } }