unity程序转成微信小游戏以后File.WriteAllTextFile.ReadAllText由于路径问题不生效。

这个时候需要采用微信自己的存储路径来把用户信息保存下来。

private void LoadPlayerData()

{

#if UNITY_EDITOR || UNITY_ANDROID || UNITY_IOS

if (File.Exists(filePath))

{

playerDataString = File.ReadAllText(filePath);

m_PlayerData = CMSimpleJson.CMSimpleJson.DeserializeObject<PlayerData>(playerDataString);

}

else

{

m_PlayerData = new PlayerData();

WritePlayerData();

Analysis.Instance.TrackRegist("regist");

}

#elif UNITY_WEBGL

playerDataString = fs.ReadFileSync(WX.env.USER_DATA_PATH +"/*.txt", "utf-8");//*文件名字

if (playerDataString != "")

{

m_PlayerData = CMSimpleJson.CMSimpleJson.DeserializeObject<PlayerData>(playerDataString);

}

else

{

m_PlayerData = new PlayerData();

WritePlayerData();

}

#endif

}

private void WritePlayerData()

{

string playerData = CMSimpleJson.CMSimpleJson.SerializeObject(m_PlayerData);

#if UNITY_EDITOR || UNITY_ANDROID || UNITY_IOS

string filePath = Path.Combine(Constants.DATA_PATH, Constants.GAMESAVE_PATH);

File.WriteAllText(filePath, playerData);

#elif UNITY_WEBGL

WXFileSystemManager fs = WX.GetFileSystemManager();

fs.WriteFileSync(WX.env.USER_DATA_PATH +"/*.txt", playerData, "utf-8");

#endif

}

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐