コード例 #1
0
    public void SaveUsersDataInDeviceAsJsonFile(List <User> userList)
    {
        UsersList_JSON testJson = new UsersList_JSON();

        testJson.Users = new List <User_JSON>();
        foreach (User user in userList)
        {
            testJson.Users.Add(
                new User_JSON(
                    UserId: user.UserId,
                    NickName: user.NickName,
                    IsLocal: user.IsLocal,
                    PersonalData: new PersonalData(
                        name: user.PersonalData.Name,
                        age: user.PersonalData.Age,
                        startingWeight: user.PersonalData.StartingWeight,
                        startingHeight: user.PersonalData.StartingHeight,
                        birthday: user.PersonalData.Birthday,
                        gender: user.PersonalData.Gender,
                        listOfWeights: user.PersonalData.ListOfWeights
                        ),
                    AvatarId: user.AvatarId
                    )
                );
        }

        string json = JsonUtility.ToJson(testJson);

        File.WriteAllText(Application.persistentDataPath + $"/Users.json", json);
    }
コード例 #2
0
    void Start()
    {
        if (needUpdateButtonsLogic)
        {
            if (File.Exists(Application.persistentDataPath + $"/Users.json"))
            {
                string         loadedText_usersData   = File.ReadAllText(Application.persistentDataPath + $"/Users.json");
                UsersList_JSON fetchedusersfromdevice = JsonUtility.FromJson <UsersList_JSON>(loadedText_usersData);
                print(fetchedusersfromdevice.Users.Count + " = number of local users");
                if (fetchedusersfromdevice.Users.Count < maxNumberOfLocalAccounts)
                {
                    CreateLocalAccount_Button.SetActive(true);
                }
                else
                {
                    CreateLocalAccount_Button.SetActive(false);
                }
            }
            else
            {
                CreateLocalAccount_Button.SetActive(false);
            }

            needUpdateButtonsLogic = false;
        }
    }
コード例 #3
0
    public List <User> FetchUsersDataFromDevice()
    {
        string loadedText_usersData = "";

        if (!File.Exists(Application.persistentDataPath + $"/Users.json"))
        {
            List <User> defaultUsers = User.GetTestUsersList();
            SaveUsersDataInDeviceAsJsonFile(defaultUsers);
            loadedText_usersData = File.ReadAllText(Application.persistentDataPath + "/Users.json");
        }
        else
        {
            loadedText_usersData = File.ReadAllText(Application.persistentDataPath + "/Users.json");
        };
        UsersList_JSON fetchedusersfromdevice = JsonUtility.FromJson <UsersList_JSON>(loadedText_usersData);

        List <User> users = new List <User>();

        foreach (User_JSON user in fetchedusersfromdevice.Users)
        {
            users.Add(
                new User(
                    user._userId,
                    user._nickName,
                    user._isLocal,
                    new PersonalData(
                        user._personalData.Name,
                        user._personalData.Age,
                        user._personalData.StartingWeight,
                        user._personalData.StartingHeight,
                        user._personalData.Birthday,
                        user._personalData.Gender,
                        user._personalData.ListOfWeights
                        ),
                    user._avatarId
                    )
                );
        }

        return(users);
    }