android - 在unity3D android中本地保存大量数据的最佳方法?

标签 android database unity3d

<分区>

我正在开发一款 2D 游戏,稍后将用作摊位上的广告 Activity ,我需要存储用户信息、姓名、号码、电子邮件和分数。那里的数据可能超过数千个条目。在 unity5 中实现它的最好和免费的方法是什么?游戏将部署在安卓上。

最佳答案

注意 - 不要出于任何原因使用“StreamWriter”。

只需使用简单的 File.Write 命令即可。

这是Unity中常见的误解!

关于这个话题,一个糟糕的示例代码在 www 上传播了很多年。只需使用 File.Write


对于本页的问题,“几千”个词条根本算不了什么。

请注意,例如:您应用中的任何小图标图像都会使您的姓名/地址数据的大小完全相形见绌!

(1) 非常容易保存一个文本文件:

// IO crib sheet..
// filePath = Application.persistentDataPath+"/"+fileName;
// check if file exists System.IO.File.Exists(f)
// write to file File.WriteAllText(f,t)
// delete the file if needed File.Delete(f)
// read from a file File.ReadAllText(f)

仅此而已。

   string currentText = File.ReadAllText(filePath);

注意......

// filePath = Application.persistentDataPath+"/"+fileName;
// YOU MUST USE "Application.persistentDataPath"
// YOU CANNOT USE ANYTHING ELSE/
// NOTHING OTHER THAN "Application.persistentDataPath" WORKS/
// ALL OTHER OPTIONS FAIL ON ALL PLATFORMS/
// YOU CAN >ONLY< USE Application.persistentDataPath IN UNITY.

以您想要的任何方式存储信息,可能是 JSON 或 csv。

在 Unity 中使用 Json 非常容易,stackoverflow 上有数百个示例。

示例 https://stackoverflow.com/a/38535392/294884

(2) 一旦你说了 100 万件元素。可以学习使用本地SQL数据库,非常值得学习。按照 Łukasz Motyczka 在评论中所说的去做。

(3) 永远不要使用 PlayerPrefs - 它更难也更困惑!

关于android - 在unity3D android中本地保存大量数据的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35936710/

相关文章:

Android 更大且始终可见的 WebView 滚动条

javascript - Phonegap/Cordova facebook 登录在已连接时无法正常工作

android - 如何使序列化字符串转换为字符串数组?

ruby-on-rails - 我应该如何向用户呈现成本字段并将其存储在数据库中?

php - MySQL:标记系统

c# - Unity Animator Inspector 中的错误。看不到任何值

javascript - 使变量可在函数外部访问

php - 使用连接表进行 codeigniter 搜索

c# - 统一二维 : Get pixel of color of Raw Image

c# - 在其他对象上显示 2D 对象 (Unity)