onResultListener method

Future<void> onResultListener({
  1. EventHandlerActivityResult? activityResult,
  2. EventHandlerRequestPermissionsResult? requestPermissionsResult,
})

android onActivityResult 监听 onRequestPermissionsResult 监听

Implementation

Future<void> onResultListener({
  EventHandlerActivityResult? activityResult,
  EventHandlerRequestPermissionsResult? requestPermissionsResult,
}) async {
  if (!isAndroid) return;
  if (activityResult != null) {
    await Internal.curiosityChannel.invokeMethod<dynamic>('onActivityResult');
  }

  if (requestPermissionsResult != null) {
    await Internal.curiosityChannel
        .invokeMethod<dynamic>('onRequestPermissionsResult');
  }
  Internal.curiosityChannel.setMethodCallHandler((MethodCall call) async {
    final Map<dynamic, dynamic> argument =
        call.arguments as Map<dynamic, dynamic>;
    switch (call.method) {
      case 'onActivityResult':
        if (activityResult != null) {
          activityResult(AndroidActivityResult.formJson(argument));
        }
        break;
      case 'onRequestPermissionsResult':
        if (requestPermissionsResult != null) {
          requestPermissionsResult(
              AndroidRequestPermissionsResult.formJson(argument));
        }
        break;
    }
  });
}