Unity在记录某个变量存储在本地时,最常使用的是PlayerPrefs方法,可以存整数,字符串等几种变量存在本地。
例如:
读取某个存储的值:
PlayerPrefs.GetInt(“DrawBookOpenTime”, 0);
记录某个值:
PlayerPrefs.SetInt(“DrawBookOpenTime”, openTimes);
额外扩展一下:这个值存在了哪里?
在Mac系统上,存储在~/Library/PlayerPrefs文件夹,名为unity.[company name].[product name].plist,这里company和product名是在Project Setting中设置的,相同的plist用于在编辑器中运行的工程和独立模式 (打开Find,按住Option键,点击“前往 →“资源库”,就可以找到Preferences文件夹。).
在Windows系统上,存在了注册表中。存储在注册表的 HKCU\Software[company name][product name]键下(打开“运行”输入regedit打开注册表),这里company和product名是在Project Setting中设置的。
Android上:apk安装在内置flash存储器上时,
PlayerPrefs的位置是\data\data\com.company.product\shared_prefs
com.company.product.xml
apk安装在内置SD卡存储器上时,
PlayerPrefs的位置是/sdcard/Android/data/com.company.product\shared_prefs
com.company.product.xml
Ios上:/Apps/ your app’s folder /Library/Preferences/ your app’s .plist
如果你发现在某些手机上,一般是android上,这个函数无法存储某个值,那就可以使用
PlayerPrefs.Save();
函数来手动存储一下。