0.6.11 • Published 2 years ago

com.didabu.core.unity v0.6.11

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

Didabu

Installtion

修改Packages目录下的manifest.json文件,增加scopedRegistries节(如果没有的话),然后增加以下仓库配置:

  "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)

    "com.didabu.core.unity": "ssh://git@github.com/didabu/unity-core.git#upm_dev",

开发环境(aliyun)

    "com.didabu.core.unity": "ssh://git@code.aliyun.com/didabu/unity-core.git#upm_dev",

正式环境

    "com.didabu.core.unity": "1.0.0",

初始化

在网站创建App后,设置好参数,然后下载参数json文件,命名为didabu-config.json放置到Assets/Resources文件夹中(如果更新App版本时,最好同时更新json文件),调用Didabu.Application.Init方法初始化Didabu:

Didabu.Application.Init("YOUR_DIDABU_APP_ID","YOUR_APP_DEV_KEY");

沙箱环境

开发过程中设置沙箱环境为true,正式环境设置为false:

//开发环境
Didabu.Application.IsSandbox = true;
//正式环境
Didabu.Application.IsSandbox = false;

日志等级

//设置日志级别
Didabu.Application.LogLevel = LogLevel.Debug;
//获取日志组件
var logger = IocContainer.Resolve<ILogger>();
logger.LogDebug("Test log.");

或者继承自MogafaBase(MogafaMonoBehaviourBase),可以在类中直接使用Logger来记录日志

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);
    }
}

选择HttpClient

Didabu提供两种内置的HttpClient供选择,一种是.net提供的HttpClient,另外一种是Unity提供WebRequest,通过以下方式来选择:

//选择.net提供的HttpClient
Didabu.Application.UseDefaultHttpClient();

//选择unity的WebRequest
Didabu.Application.UseUnityWebRequestHttpClient();

Features

资产操作

var assetCode = "0301";

//增加资产
Didabu.Application.AddAsset(assetCode, 500);
//减少资产
Didabu.Application.SubAsset(assetCode, 100);
//获取资产
var assetValue = Didabu.Application.GetAsset(assetCode);
//获取资产排行榜

用户行为操作

var behaviourCode = "7001";
//记录用户行为次数
var times = await Didabu.Application.AddBehaviour(behaviourCode, 1);
//获取用户行为次数
var behaviourCode = await Didabu.Application.GetBehaviour(behaviourCode);

App数据操作

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);

AB分组操作

if(Didabu.Application.IsAbGroup("ABGroup", "A"))
{
    //如果ABGroup分组为A,则作相应处理
}