I receive the above error message in the following code.
import 'package:flutter/services.dart';
import 'dart:io'; // for File
import 'package:file_picker/file_picker.dart'; // for FilePickerResultfile_picker: ^5.2.2
typedef OnRewardListener = void Function(num quantity, String? uid);
typedef SurveyAvailableListener = void Function(int? survey);
typedef RewardCenterOpenedListener = void Function();
typedef RewardCenterClosedListener = void Function();
class RapidoReach {
static RapidoReach get instance => _instance;
final MethodChannel _channel;
static final RapidoReach _instance = RapidoReach.private(
const MethodChannel('rapidoreach'),
);
RapidoReach.private(MethodChannel channel) : _channel = channel {
_channel.setMethodCallHandler(_platformCallHandler);
}
static OnRewardListener? _onRewardListener;
static SurveyAvailableListener? _surveyAvailableListener;
static RewardCenterOpenedListener? _rewardCenterOpenedListener;
static RewardCenterClosedListener? _rewardCenterClosedListener;
Future<void> init({String? apiToken, String? userId}) async {
assert(apiToken != null && apiToken.isNotEmpty);
return _channel.invokeMethod(
"init", <String, dynamic>{"api_token": apiToken, "user_id": userId});
}
Future<void> show({String? placementID}) {
return _channel
.invokeMethod("show", <String, dynamic>{"placementID": placementID});
}
Future _platformCallHandler(MethodCall call) async {
debugPrint(
"RapidoReach _platformCallHandler call ${call.method} ${call.arguments}");
switch (call.method) {
case "onReward":
_onRewardListener!(call.arguments); //Here is the error, in call.arguments
break;
case "rapidoReachSurveyAvailable":
_surveyAvailableListener!(call.arguments);
break;
case "onRewardCenterOpened":
_rewardCenterOpenedListener!();
break;
case "onRewardCenterClosed":
_rewardCenterClosedListener!();
break;
default:
debugPrint('Unknown method ${call.method}');
}
}
void setOnRewardListener(OnRewardListener? onRewardListener) =>
_onRewardListener = onRewardListener;
void setSurveyAvaiableListener(
SurveyAvailableListener? surveyAvailableListener) =>
_surveyAvailableListener = surveyAvailableListener;
void setRewardCenterOpened(
RewardCenterOpenedListener? rewardCenterOpenedListener) =>
_rewardCenterOpenedListener = rewardCenterOpenedListener;
void setRewardCenterClosed(
RewardCenterClosedListener? rewardCenterClosedListener) =>
_rewardCenterClosedListener = rewardCenterClosedListener;
}
What can I do about it?