我在构建apk文件后在aandroid上读取文件时遇到问题。当我尝试读取数据时:
*罐:文件:///数据/应用/ 应用程序名称 /base.apk!/assets/Levels/level0.xml,*
游戏会粉碎并显示错误消息: URI方案必须以字母开头,并且必须包含字母,数字,' +',' - '或'。'字符
以下是抛出异常的代码的一部分:
void start()
{
//some part of code
level = Level.loadLevel(Path.Combine(Application.streamingAssetsPath , Path.Combine("Levels", "level0.xml")));
//some part of code
}
public static Level loadLevel(string filePath)
{
Level result = new Level();
XmlDocument doc = new XmlDocument();
doc.Load(filePath);
//some part of code
}
答案 0 :(得分:0)
由于文件包含在压缩的.jar文件中,因此您必须使用Unity WWW类来读取它们。它应该是这样的:
public IEnumerator loadLevel(string filePath)
{
WWW www = new WWW(filePath);
yield return www;
XmlDocument doc = new XmlDocument();
doc.LoadXml(www.text);
[...]
}
希望这有帮助,