本演示项目在Unity for Android Build中启用部分华为HMS和AGC服务,对应的类和函数的名称和用法相同。
您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

45 行
1.5 KiB

using System;
using System.Collections.Generic;
using UnityEngine;
namespace HuaweiService.CloudFunction {
public delegate void CompleteCallback<T> (T o);
public delegate void CompleteCallback (String result);
public class FunctionCompleteListener<T> : OnCompleteListener {
public CompleteCallback<T> callback;
public FunctionCompleteListener (CompleteCallback<T> cb) {
callback = cb;
}
public override void onComplete (Task task) {
if (task.isSuccessful ()) {
FunctionResult result = new FunctionResult ();
result.obj = task.getValue ();
string str = result.getValue ();
if (callback != null) {
Type type = typeof (T);
T val = JsonSerializer.FromJson<T> (str);
callback.Invoke (val);
}
}
}
}
public class FunctionCompleteListener : OnCompleteListener {
public CompleteCallback callback;
public FunctionCompleteListener (CompleteCallback cb) {
callback = cb;
}
public override void onComplete (Task task) {
if (task.isSuccessful ()) {
FunctionResult result = new FunctionResult ();
result.obj = task.getValue ();
string str = result.getValue ();
if (callback != null) {
callback.Invoke (str);
}
}
}
}
}