com.didabu.core.unity
Version:
Didabu Unity Core
125 lines (118 loc) • 3.57 kB
Markdown
修改Packages目录下的manifest.json文件,增加scopedRegistries节(如果没有的话),然后增加以下仓库配置:
```json
"scopedRegistries": [
{
"name": "npmjs",
"url": "https://registry.npmjs.org",
"scopes": [
"com.onesignal",
"com.modesttree.zenject",
"com.applovin.max.unity",
"com.mogafa",
"com.didabu",
"com.bugly.unity",
"com.facebook.unity"
]
}
]
```
在dependencies下添加:
开发环境(Github)
```json
"com.didabu.core.unity": "ssh://git@github.com/didabu/unity-core.git#upm_dev",
```
开发环境(aliyun)
```json
"com.didabu.core.unity": "ssh://git@code.aliyun.com/didabu/unity-core.git#upm_dev",
```
正式环境
```json
"com.didabu.core.unity": "0.2.2",
```
在网站创建App后,设置好参数,然后下载参数json文件,放置到Resources中(如果更新App版本时,最好同时更新json文件),调用Didabu.Application.Init方法初始化Didabu:
```csharp
Didabu.Application.Init("YOUR_DIDABU_APP_ID","YOUR_APP_DEV_KEY");
```
开发过程中设置沙箱环境为true,正式环境设置为false:
```csharp
//开发环境
Didabu.Application.IsSandbox = true;
//正式环境
Didabu.Application.IsSandbox = false;
```
```csharp
//设置日志级别
Didabu.Application.LogLevel = LogLevel.Debug;
//获取日志组件
var logger = IocContainer.Resolve<ILogger>();
logger.LogDebug("Test log.");
```
或者继承自MogafaBase(MogafaMonoBehaviourBase),可以在类中直接使用Logger来记录日志
```csharp
public class TestClass : MogafaBase //MogafaMonoBehaviourBase
{
public void TestMethod()
{
Logger.LogDebug("Enter TestMethod.");
}
public async void SaveDataTest()
{
await LocalStorage.SetString("testname1", "testvalue");
await LocalStorage.SetInt("testname2", 100);
await LocalStorage.SetLong("testname3", 1000L);
await LocalStorage.SetFloat("testname4", 0.01f);
}
}
```
Didabu提供两种内置的HttpClient供选择,一种是.net提供的HttpClient,另外一种是Unity提供WebRequest,通过以下方式来选择:
```csharp
//选择.net提供的HttpClient
Didabu.Application.UseDefaultHttpClient();
//选择unity的WebRequest
Didabu.Application.UseUnityWebRequestHttpClient();
```
```csharp
var assetCode = "0301";
//增加资产
Didabu.Application.AddAsset(assetCode, 500);
//减少资产
Didabu.Application.SubAsset(assetCode, 100);
//获取资产
var assetValue = Didabu.Application.GetAsset(assetCode);
//获取资产排行榜
```
```csharp
var behaviourCode = "7001";
//记录用户行为次数
var times = await Didabu.Application.AddBehaviour(behaviourCode, 1);
//获取用户行为次数
var behaviourCode = await Didabu.Application.GetBehaviour(behaviourCode);
```
```csharp
var appDataCode = "5001";
//记录app数据
Didabu.Application.SetAppData(appDataCode, "00:02.635");
//获取app数据
var appData = Didabu.Application.GetAppData(appDataCode);
//获取app数据的排行榜
List<AppDataLeaderboardDto> leaderboards = await Didabu.Application.GetAppDataLeaderboard(appDataCode);
//倒序获取app数据排行榜
leaderboards = await Didabu.Application.GetAppDataLeaderboard(appDataCode, true);
```
```csharp
if(Didabu.Application.IsAbGroup("ABGroup", "A"))
{
//如果ABGroup分组为A,则作相应处理
}
```