1
私はGoogle Daydream(モバイルVRプラットフォーム)用のゲームを作成しています。エディタとターゲットビルドでデータをロードして保存するために、別のコードを使用します。保存My機能は、次のようになります。プラットフォーム依存のコンパイルが機能しないのはなぜですか?
public void SaveData() {
XmlSerializer serializer = new XmlSerializer(typeof(ItemDatabase));
FileStream stream;
#if UNITY_ANDROID
stream = new FileStream(Application.persistentDataPath + "/game_data.xml", FileMode.Create);
serializer.Serialize(stream, gameDB);
stream.Close();
Debug.Log("Data Saved[Android]");
#endif
#if UNITY_EDITOR
stream = new FileStream(Application.dataPath + "/StreamingAssets/XML/game_data.xml" , FileMode.Create);
serializer.Serialize(stream, gameDB);
stream.Close();
Debug.Log("Data Saved[Editor]");
#endif
}
私はアンドロイドとエディタので、両方の部分が実行されているため、両方のログを取得し、エディタでそれを実行する場合。これは、Unityがスマートフォンをエミュレートしているためです(エディタでゲームをプレイするたびに「VRDevice daydreamはエディタモードではサポートされていませんので、ターゲットデバイス上で実行してください」と表示されます)?