读书人

uinty3d 归档

发布时间: 2012-11-05 09:35:12 作者: rapoo

uinty3d 存档

可以用系统自带PlayerPrefs的来存取数据。存储可以在各个Scene里面读取。


存储目录:

Mac OS X 下PlayerPrefs 存在 ~/Library/Preferences 目录, 文件名格式如下: unity.[company name].[product name].plist, 其中 company name 和 product names 是在 Project Settings 中设置的.

如何去:到你名字下面,按键command+shift+G, 然后输入Library/Preferences就可以了


Windows 下, PlayerPrefs 存在注册表里面 HKCU\Software\[company name]\[product name] , 其中 company name 和 product names 是在 Project Setting 中设置的. 不过在我的XP系统里面,因为company name和 product name,所以显示的都是乱码,直接开始->运行->输入:regedit 启动注册表,搜索你存储的键值就可以了。


代码如下:


using UnityEngine;
using System.Collections;


//created by lancer li at 2012
public class SaveManager {
//keys
public const string KEY_USER_ID = "key_uid";
public const string KEY_USER_NAME = "key_name";
public const string KEY_ACCOUNT = "key_account";
public const string KEY_PASSWORD = "key_password";
public const string KEY_SESSION = "key_session";
public const string KEY_PLATFORM = "key_platform";

public static void SaveUserInfo(int uid, int platform, string account, string password){
SaveUserID(uid);
SavePlatform(platform);
SaveAccount(account);
SavePassword(password);
}


public static void SaveUserID(int uid){
PlayerPrefs.SetInt(KEY_USER_ID, uid);
}

public static int GetUserId(){
return PlayerPrefs.GetInt(KEY_USER_ID);
}


public static void SavePlatform(int platform){
PlayerPrefs.SetInt(KEY_PLATFORM, platform);
}

public static int GetPlatform(){
return PlayerPrefs.GetInt(KEY_PLATFORM);
}


public static void SaveAccount(string account){
PlayerPrefs.SetString(KEY_ACCOUNT, account);
}

public static string GetAccount(){
return PlayerPrefs.GetString(KEY_PASSWORD);
}


public static void SavePassword(string password){
PlayerPrefs.SetString(KEY_PASSWORD, password);
}

public static string GetPassword(){
return PlayerPrefs.GetString(KEY_PASSWORD);
}


public static void SaveSession(string session){
PlayerPrefs.SetString(KEY_SESSION, session);
}

public static string GetSession(){
return PlayerPrefs.GetString(KEY_SESSION);
}
}

读书人网 >移动开发

热点推荐