Unity/C#-是否可以通过EnityFramework将Azure(云)数据库连接到Unity游戏?
我有一个需要云数据库的Unity游戏。(您可以从游戏内部连接到数据库。) 它不需要任何疯狂的东西。大多数情况下,只需在表中读写简单的列,还可以进行简单的登录 这是否可以使用实体框架在Unity中实现 如果没有,是否有解决办法?(例如,改用MySQL) 请让我知道 谢谢,Unity/C#-是否可以通过EnityFramework将Azure(云)数据库连接到Unity游戏?,c#,mysql,entity-framework,azure,unity3d,C#,Mysql,Entity Framework,Azure,Unity3d,我有一个需要云数据库的Unity游戏。(您可以从游戏内部连接到数据库。) 它不需要任何疯狂的东西。大多数情况下,只需在表中读写简单的列,还可以进行简单的登录 这是否可以使用实体框架在Unity中实现 如果没有,是否有解决办法?(例如,改用MySQL) 请让我知道 谢谢, Benji以下是使用的解决方法。基本步骤是: 添加到项目中 在中创建Firebase项目 从Firebase控制台下载配置文件。Unity3D的文件可能是以下一个或两个文件:GoogleService-Info.plist(用
Benji以下是使用的解决方法。基本步骤是:
- 添加到项目中
- 在中创建Firebase项目李>
- 从Firebase控制台下载配置文件。Unity3D的文件可能是以下一个或两个文件:GoogleService-Info.plist(用于iOS)、Google-services.json(用于Android)
using Firebase;
using Firebase.Unity.Editor;
public class MyScript: MonoBehaviour {
void Start() {
// Set this before calling into the realtime database.
FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://xyz.firebaseio.com/");
// Get the root reference location of the database.
DatabaseReference reference = FirebaseDatabase.DefaultInstance.RootReference;
}
}
例如,数据的格式如下所示。
将数据写入数据库:
private void writeNewUser(string userId, string name, string email) {
User user = new User(name, email);
string json = JsonUtility.ToJson(user);
reference.Child("users").Child(userId).SetRawJsonValueAsync(json);
}
读取数据:
reference.GetReference("users")
.GetValueAsync().ContinueWith(task => {
if (task.IsFaulted) {
}
else if (task.IsCompleted) {
// Do something with snapshot...
}
});
更酷的是Firebase支持用户身份验证(即登录)等,这对于Unity3D开发人员来说非常方便
关于如何将Unity3D与Firebase链接的教程是,尽管它没有使用Firebase数据库,但作为示例,Firebase消息传递可能会对您有所帮助。以下是使用的解决方法。基本步骤是:
- 添加到项目中
- 在中创建Firebase项目李>
- 从Firebase控制台下载配置文件。Unity3D的文件可能是以下一个或两个文件:GoogleService-Info.plist(用于iOS)、Google-services.json(用于Android)
using Firebase;
using Firebase.Unity.Editor;
public class MyScript: MonoBehaviour {
void Start() {
// Set this before calling into the realtime database.
FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://xyz.firebaseio.com/");
// Get the root reference location of the database.
DatabaseReference reference = FirebaseDatabase.DefaultInstance.RootReference;
}
}
例如,数据的格式如下所示。
将数据写入数据库:
private void writeNewUser(string userId, string name, string email) {
User user = new User(name, email);
string json = JsonUtility.ToJson(user);
reference.Child("users").Child(userId).SetRawJsonValueAsync(json);
}
读取数据:
reference.GetReference("users")
.GetValueAsync().ContinueWith(task => {
if (task.IsFaulted) {
}
else if (task.IsCompleted) {
// Do something with snapshot...
}
});
更酷的是Firebase支持用户身份验证(即登录)等,这对于Unity3D开发人员来说非常方便
关于如何将Unity3D与Firebase链接的教程是,尽管它没有使用Firebase数据库,但作为示例,Firebase消息传递可能会对您有所帮助。Firebase developer here。谢谢你的插拔,大卫
您可以在此处找到更多文档,包括使用Firebase实时数据库和Unity的指南。谢谢你的插拔,大卫
您可以找到更多文档,包括使用Firebase实时数据库和Unity的指南谢谢您的回答,是的,如果您需要实时/实时数据,Firebase是一个非常好的解决方案。(就像多人在线游戏中的玩家位置) 然而,如果你需要一个简单的东西,有一个更好的(免费)方法。(如保存玩家的高分并显示) (至少这是我真正需要的,以下是我所做的) 步骤1)创建您的数据库(Azure或其他) 步骤2)创建网站/应用程序,托管它,然后连接数据库 步骤3)将API“端点”添加到应用程序中。(与数据库交互) 步骤4)使用Unity的“WWW”类与端点交互(生成RESTful get/post) 就这样!
对我来说,它就像一个符咒!(也很快!)谢谢您的回答,是的,如果您需要实时/实时数据,Firebase是一个非常好的解决方案。(就像多人在线游戏中的玩家位置) 然而,如果你需要一个简单的东西,有一个更好的(免费)方法。(如保存玩家的高分并显示) (至少这是我真正需要的,以下是我所做的) 步骤1)创建您的数据库(Azure或其他) 步骤2)创建网站/应用程序,托管它,然后连接数据库 步骤3)将API“端点”添加到应用程序中。(与数据库交互) 步骤4)使用Unity的“WWW”类与端点交互(生成RESTful get/post) 就这样!
对我来说,它就像一个符咒!(速度也相当快!)您如何防止有人对您的应用程序进行反编译以获取应用程序的API凭据,例如您的应用程序机密?这样,他们就可以调用您的API并可能窃取数据。Firebase内置了一个安全模型,支持第三方身份验证的验证规则,允许您完全控制哪些用户可以访问您数据库的不同部分。您如何防止有人对您的应用进行反编译以获取应用的API凭据,例如您的应用机密?这样,他们就可以调用您的API并可能窃取数据。Firebase内置了一个安全模型,支持第三方身份验证的验证规则,让您完全控制哪些用户可以访问数据库的不同部分。