我刚刚完成构建我的安卓游戏,当我尝试在Android上播放时。什么都没有产生。我认为它与我的文件有关,该文件负责保存所有实例化的位置。请帮我解决这个问题。
public class DataHolder : MonoBehaviour
{
public static DataHolder dataholder;
public MazeData currentmaze;
void Awake()
{
if (dataholder == null)
{
dataholder = this;
}
else
{
Destroy(this.gameObject);
}
string directory = Application.dataPath + "/LevelData/"; ;
int number =Convert.ToInt32(SceneManager.GetActiveScene().name) -1;
if (File.Exists(directory + "/Level_" + number.ToString() + "/Level_" + number.ToString() + ".dat"))
{
BinaryFormatter binary = new BinaryFormatter();
FileStream file = File.Open(directory + "/Level_" + number.ToString() + "/Level_" + number.ToString() + ".dat", FileMode.Open);
MazeData _level = (MazeData)binary.Deserialize(file);
currentmaze = _level;
file.Close();
}
}
}
答案 0 :(得分:0)
我会尝试使用Application.persistentDataPath代替您的目录。我相信这是您通常希望存储保存文件的地方,因为Application.dataPath
会返回Android上apk的文件路径。
E.g。更改此行string directory = Application.dataPath + "/LevelData/"; ;
到string directory = Application.persistentDataPath + "/LevelData/";