# 快速入门-Unity3D
## 简介
DroiBaaS 对于 Unity3D 开发人员提供提供方便使用的 C# 函数库。让 Unity3D 程序开发人员也可以使用最简单的方式存取云端数据库以及相关的线上功能。
## 快速入门
### 环境需求
- Unity3D 5.4以上环境
> 由于 Unity3D 5.4提供的 UnityWebRequest 不支持 gzip 压缩。当开发人员使用5.4版时,Droi CoreSDK 将不会开启 gzip 传输。不开启压缩的结果会造成数据传输量大增。
### SDK安装步骤
由于 Droi CoreSDK for Unity3D 是使用 C# 搭配 Native Plugins 编写而成,除了 DLL 外, 您必须引入对应平台的 Native Plugins。
开发人员可以依照以下的步骤将 Droi CoreSDK for Unity3D 增加至原工程之中
1. 下载 [Droi CoreSDK for Unity3D](https://www.droibaas.com/Index/download.html)
2. 直接将文件导入至原来的工程之中
> 针对 iOS xcode project, 可使用 Assets/Editor/Droi/DroiBuildPostprocessor.cs 自动设定以下参数
- Linked Framworks and Libraries 新增 ***libz.tbd***
- Build Settings->Other Linker Flags 加入 ***-ObjC***
> 导出 iOS 工程时, 若 backend language 选择 il2cpp, 也需加入 Assets/Editor/Droi/link.xml 避免 strip Droi CoreSDK
### 测试Droi CoreSDK for Unity3D
在使用任何功能之中,你需要先至[DroiBaaS官网](http://www.droibaas.com)申请账号并创建一个新的应用,得到 app id 以供测试使用。使用如下的代码,新增一条数据至云端数据库
``` csharp
// 初始化CoreSDK,其中applicationId为申请到的唯一码
DroiCore.initializeCore("applicationId");
// 新增一条数据,表格名称为ScoreTable
DroiObject score = new DroiObject("ScoreTable");
score.put("name", "John");
score.put("score", 99);
// 使用Coroutine方式储存数据
StartCoroutine(score.saveCoroutine(((bool res, DroiError error) =>
{
if (error.isOk())
Debug.Log("saveData OK");
})));
```
### 其他功能:
- [数据服务Unity3D开发指南](https://www.droibaas.com/html/doc_24722.html)
- [云代码Unity3D开发指南](https://www.droibaas.com/html/doc_24723.html)
- [用户管理Unity3D开发指南](https://www.droibaas.com/html/doc_24727.html)
### 切换到生产环境上线
DroiBaaS 的开发方式如下图

沙盒环境:项目上线前的调试测试模式
生产环境:项目正式上线对外提供服务的模式
DroiBaaS 上的 App 项目提供沙盒和生产两种环境,两种环境下数据不互通,避免了调试和测试对正式版本的数据污染。同时利于 App 的持续发布,开发者在正式版本上线前都可以先经过沙盒环境调试并测试完成后再切换到生产环境。
具体切换方式:
Web控制台->应用管理中心->应用设置->设置详情
