addTimApiValueCallback2Map static method

void addTimApiValueCallback2Map(
  1. String userData,
  2. ApiCallback callback
)

注册一个自定义的 ApiCallback 到 _apiCallbackMap。

用于 closure 内部需要做额外加工后再 complete 自己 completer 的场景。 调用方必须自己保证两点:

  1. 在 closure 的第一行写 if (completer.isCompleted) return; 防止重复 complete。
  2. 在 add 之后立即手挂 whenComplete 清理:
    NativeLibraryManager.addTimApiValueCallback2Map(userData, handleApiCallback);
    completer.future.whenComplete(() => NativeLibraryManager.removeTimCallbackFromMap(userData));
    

Implementation

static void addTimApiValueCallback2Map(String userData, ApiCallback callback) {
  _apiCallbackMap[userData] = callback;
}