【问题标题】:Unity WebGL - accessing StreamingAssets folder from build uploaded in LMS /ServerUnity WebGL - 从上传到 LMS /Server 的构建访问 StreamingAssets 文件夹
【发布时间】:2016-08-30 13:45:22
【问题描述】:

我无法访问上传到 LMS 服务器的 WebGL 构建文件 StreamingAssets 文件夹,我将这些文件保存在 StreamingAssets 文件夹中以更新它以备将来使用。按照统一手册中给出的说明,在编辑器中工作正常,但直接构建运行和在 LMS 中它不起作用。

http://docs.unity3d.com/ScriptReference/Application-streamingAssetsPath.html

在论坛上发布,他们要求遵循手册,但它不起作用。请在此处找到附加的脚本以获取更多详细信息。检查游戏开始时调用的名为'userDetailsXmlPath'的协程函数。

public string filePath = Application.streamingAssetsPath + "/UserDetails.xml";
public string result = "";

IEnumerator userDetailsXmlPath() 
{
    print (filePath);

    if (filePath.Contains ("://") || filePath.Contains (":///")) {
        WWW www = new WWW (filePath);
        yield return www;
        result = www.text;

        print (result);
        FetchUserDetails ();
    } else {
        result = File.ReadAllText (filePath);

        print (result);
        FetchUserDetails ();
    }
}

public void FetchUserDetails()
{
    XmlDocument userXml1 = new XmlDocument ();
//  userXml1.Load(Application.streamingAssetsPath + "/UserDetails.xml");
//  userXml1.Load(Application.dataPath + "js/UserDetails 1.xml");
//  userXml1.LoadXml(userXml.text);

    userXml1.LoadXml(result);


    XmlNodeList userList = userXml1.GetElementsByTagName ("user");

    foreach(XmlNode userValue in userList)
    {
        XmlNodeList userContent = userValue.ChildNodes;
        objUser = new Dictionary<string, string>();

        foreach(XmlNode value in userContent)
        {
            objUser.Add (value.Name, value.InnerText);
        }

        userFullDetails.Add (objUser);

        userCountInXml = userList.Count;

        userId = new string[userList.Count];
        questionSetOfUser = new string[userList.Count];
    }

    AssignUserXmlValuesToArray ();
}

请帮我解决这个问题。

【问题讨论】:

    标签: unity3d scorm unity-webgl


    【解决方案1】:

    使用 WWW 类 https://docs.unity3d.com/ScriptReference/Application-streamingAssetsPath.html 访问 StreamingAssets 路径文件夹

    public string filePath = Application.streamingAssetsPath + "/UserDetails.xml";
             public string result = "";
       
       void Awake () 
       { 
       filePath = Application.streamingAssetsPath + "/UserDetails.xml"; 
       }
       
       void Start () 
       { 
       StartCoroutine(userDetailsXmlPath() );
       }
       
             IEnumerator userDetailsXmlPath() 
             {
                 print (filePath);
         
                 if (filePath.Contains ("://") || filePath.Contains (":///")) {
                     WWW www = new WWW (filePath);
                     yield return www;
                     result = www.text;
         
                     print (result);
                     FetchUserDetails ();
                 } else {
                     result = File.ReadAllText (filePath);
         
                     print (result);
                     FetchUserDetails ();
                 }
             }
         
             public void FetchUserDetails()
             {
                 XmlDocument userXml1 = new XmlDocument ();
         
                 userXml1.LoadXml(result);
         
         
                 XmlNodeList userList = userXml1.GetElementsByTagName ("user");
         
                 foreach(XmlNode userValue in userList)
                 {
                     XmlNodeList userContent = userValue.ChildNodes;
                     objUser = new Dictionary<string, string>();
         
                     foreach(XmlNode value in userContent)
                     {
                         objUser.Add (value.Name, value.InnerText);
                     }
         
                     userFullDetails.Add (objUser);
         
                     userCountInXml = userList.Count;
         
                     userId = new string[userList.Count];
                     questionSetOfUser = new string[userList.Count];
                 }
         
                 AssignUserXmlValuesToArray ();
             }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-16
      • 1970-01-01
      相关资源
      最近更新 更多