이전것
1편 http://greenon.tistory.com/140
2편 http://greenon.tistory.com/141
3편 http://greenon.tistory.com/entry/unity3d-c-Xm_읽기
이 문제는 1,2,3편 즉 평범한 xml읽기를 했는데
안드로이드에서 안될때, apk파일의 압축을 풀으면 xml파일이 멀쩡히 있고
내 pc에서는 읽히지만 남의 pc에서는 안 읽어질때의 해결책입니다.
strFile = "Map_data.xml";
strFilePath = Application.persistentDataPath + "/" + strFile;
XmlData = new XmlDocument();
if (Application.platform == RuntimePlatform.Android )
{
wwwUrl = new WWW("jar:file://" + Application.dataPath + "!/assets/" + strFile);
//File.WriteAllBytes(strFilePath, wwwUrl.bytes);
XmlData.LoadXml(wwwUrl.text.Trim());
}
else
{
strFilePath = Application.streamingAssetsPath + "/" + strFile;
XmlData.Load(strFilePath);
}
XmlchilNODE = XmlData.DocumentElement;
과거 3편까지는 url로 얻은 경로의 파일을 strFilePath 위치에 복사 했지만
파일은 확인되나 복사가 안되서...
플렛폼이 안드로이드 일 때는 XmlData.LoadXml(wwwUrl.text.Trim()); 해버리는걸로 수정 하니 되네요.
발생 원인은 전혀 모르겠습니다.
저처럼 3주 씩이나 고민 하지 말라고 적어요.
4.2.0f4로 엡데이트 하면서 갑자기 저만 안된 것이라 거의 필요 없는 정보인듯 하지만요.
꺼이 꺼이...
에러님...
덕분에 온갖 로드 방법에 대해서 심도 깊게 공부 했습니다.
PC는 그냥 persistent 하지말고 streaming(이게 맞나?) 아무튼 하면 되요.