Unity 数据读取|(六)PlayerPrefs解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: Unity 数据读取|(六)PlayerPrefs解析


1. 前言

PlayerPrefs是Unity内置的一个静态类,可以用于存储一些简单的数据类型:int ,string ,float。可以用它来做成计分板这类需要可持续化存储的小地方。

2. 存储位置

  • Mac OS X:存储在~/Library/PlayerPrefs文件夹,名为unity.[company name].[product name].plist,这里company和product名是在project Setting中设置的
  • windows:playerPrefs被存储在注册的HKCU\Software[company name][product name]键下,这里company和product名是在project setting中设置的。
  • Android:数据存储(持久化)在设备上。数据保存在SharedPreferences中。/data/data/包名/shared_prefs/pkg-name.xml
  • IOS:/Library/Preferences/[应用ID].plist

3. 优缺点

  • 优点:
  • 简单易用:PlayerPrefs提供了易于使用的API,使得存储和读取数据变得简单。
  • 持久化存储:PlayerPrefs可以持久化存储玩家的数据,即使应用程序关闭后也可以在下次启动时恢复数据。
  • 跨平台支持:PlayerPrefs在不同平台上的存储位置不同,但都提供了统一的API,使得跨平台开发变得更加容易。
  • 缺点:
  • 数据类型限制:PlayerPrefs只能存储字符串、整数、浮点数和布尔值等基本数据类型,对于复杂的数据结构需要自行处理。
  • 不适合大量数据的存储:PlayerPrefs不适合存储大量数据,因为所有的数据都会被存储在同一个文件中,可能会导致读写速度变慢。
  • 不安全:PlayerPrefs存储的数据可以被其他玩家或者恶意软件修改,因此不适合存储敏感信息。
  • 重复工作量多
  • 程序崩溃,数据无法保存
  • Key值同名,数据会被覆盖

3. 使用方法

  • SetInt(string key, int value):保存整型数据;
  • GetInt(string key, int defaultValue):读取整形数据;
  • SetFloat(string key, float value):保存浮点型数据;
  • GetFlost(string key, float defaultValue):读取浮点型数据;
  • SetString(string key, string value):保存字符串型数据;
  • GetString(string key, string defaultValue):读取字符串型数据;
  • PlayerPrefs.DeleteKey (key : string):删除指定数据;
  • PlayerPrefs.DeleteAll() :删除全部键 ;
  • PlayerPrefs.HasKey (key : string):判断数据是否存在的方法;
  • PlayerPrefs.Save():保存,避免崩溃数据未保存;
//存储整型数据
PlayerPrefs.SetInt("score",99); 
//存储浮点型数据
PlayerPrefs.SetFloat("level",1.11f); 
//存储字符串数据
PlayerPrefs.SetString("name","张三");
//取出key为"score"的整型数据
int intVal = PlayerPrefs.GetInt("score"); 
//取出key为"level"的浮点型数据
float floatVal = PlayerPrefs.GetFloat("level"); 
//获取key为"name"的字符串数据
string strVal = PlayerPrefs.GetString("name");
//删除所有存储数据
PlayerPrefs.DeleteAll();
//删除key为"score"的数据
PlayerPrefs.DeleteKey("score");
//查找是否存在key为"score"的数据
bool exist = PlayerPrefs.HasKey("score")
相关文章
|
1月前
|
人工智能 自然语言处理 前端开发
SpringBoot + 通义千问 + 自定义React组件:支持EventStream数据解析的技术实践
【10月更文挑战第7天】在现代Web开发中,集成多种技术栈以实现复杂的功能需求已成为常态。本文将详细介绍如何使用SpringBoot作为后端框架,结合阿里巴巴的通义千问(一个强大的自然语言处理服务),并通过自定义React组件来支持服务器发送事件(SSE, Server-Sent Events)的EventStream数据解析。这一组合不仅能够实现高效的实时通信,还能利用AI技术提升用户体验。
161 2
|
19天前
|
自然语言处理 数据可视化 前端开发
从数据提取到管理:合合信息的智能文档处理全方位解析【合合信息智能文档处理百宝箱】
合合信息的智能文档处理“百宝箱”涵盖文档解析、向量化模型、测评工具等,解决了复杂文档解析、大模型问答幻觉、文档解析效果评估、知识库搭建、多语言文档翻译等问题。通过可视化解析工具 TextIn ParseX、向量化模型 acge-embedding 和文档解析测评工具 markdown_tester,百宝箱提升了文档处理的效率和精确度,适用于多种文档格式和语言环境,助力企业实现高效的信息管理和业务支持。
3941 3
从数据提取到管理:合合信息的智能文档处理全方位解析【合合信息智能文档处理百宝箱】
|
9天前
|
存储 分布式计算 Java
存算分离与计算向数据移动:深度解析与Java实现
【11月更文挑战第10天】随着大数据时代的到来,数据量的激增给传统的数据处理架构带来了巨大的挑战。传统的“存算一体”架构,即计算资源与存储资源紧密耦合,在处理海量数据时逐渐显露出其局限性。为了应对这些挑战,存算分离(Disaggregated Storage and Compute Architecture)和计算向数据移动(Compute Moves to Data)两种架构应运而生,成为大数据处理领域的热门技术。
27 2
|
15天前
|
JavaScript API 开发工具
<大厂实战场景> ~ Flutter&鸿蒙next 解析后端返回的 HTML 数据详解
本文介绍了如何在 Flutter 中解析后端返回的 HTML 数据。首先解释了 HTML 解析的概念,然后详细介绍了使用 `http` 和 `html` 库的步骤,包括添加依赖、获取 HTML 数据、解析 HTML 内容和在 Flutter UI 中显示解析结果。通过具体的代码示例,展示了如何从 URL 获取 HTML 并提取特定信息,如链接列表。希望本文能帮助你在 Flutter 应用中更好地处理 HTML 数据。
93 1
|
1月前
|
数据采集 XML 前端开发
Jsoup在Java中:解析京东网站数据
Jsoup在Java中:解析京东网站数据
|
15天前
|
JSON 前端开发 JavaScript
API接口商品详情接口数据解析
商品详情接口通常用于提供特定商品的详细信息,这些信息比商品列表接口中的信息更加详细和全面。以下是一个示例的JSON数据格式,用于表示一个商品详情API接口的响应。这个示例假定API返回一个包含商品详细信息的对象。
|
28天前
|
API
Vue3组件通信全解析:利用props、emit、provide/inject跨层级传递数据,expose与ref实现父子组件方法调用
Vue3组件通信全解析:利用props、emit、provide/inject跨层级传递数据,expose与ref实现父子组件方法调用
357 0
|
28天前
|
前端开发 算法 JavaScript
无界SaaS模式深度解析:算力算法、链接力、数据确权制度
私域电商的无界SaaS模式涉及后端开发、前端开发、数据库设计、API接口、区块链技术、支付和身份验证系统等多个技术领域。本文通过简化框架和示例代码,指导如何将核心功能转化为技术实现,涵盖用户管理、企业店铺管理、数据流量管理等关键环节。
|
1月前
|
JSON JavaScript API
商品详情数据接口解析返回的JSON数据(API接口整套流程)
商品详情数据接口解析返回的JSON数据是API接口使用中的一个重要环节,它涉及从发送请求到接收并处理响应的整个流程。以下是一个完整的API接口使用流程,包括如何解析返回的JSON数据:
|
1月前
|
消息中间件 监控 关系型数据库
MySQL数据实时同步到Elasticsearch:技术深度解析与实践分享
在当今的数据驱动时代,实时数据同步成为许多应用系统的核心需求之一。MySQL作为关系型数据库的代表,以其强大的事务处理能力和数据完整性保障,广泛应用于各种业务场景中。然而,随着数据量的增长和查询复杂度的提升,单一依赖MySQL进行高效的数据检索和分析变得日益困难。这时,Elasticsearch(简称ES)以其卓越的搜索性能、灵活的数据模式以及强大的可扩展性,成为处理复杂查询需求的理想选择。本文将深入探讨MySQL数据实时同步到Elasticsearch的技术实现与最佳实践。
74 0

推荐镜像

更多