Class MethodCall

java.lang.Object
io.flutter.plugin.common.MethodCall

public final class MethodCall extends Object
Command object representing a method call on a MethodChannel.
  • Field Details

    • method

      public final String method
      The name of the called method.
    • arguments

      public final Object arguments
      Arguments for the call.

      Consider using arguments() for cases where a particular run-time type is expected. Consider using argument(String) when that run-time type is Map or JSONObject.

  • Constructor Details

    • MethodCall

      public MethodCall(@NonNull String method, @Nullable Object arguments)
      Creates a MethodCall with the specified method name and arguments.
      Parameters:
      method - the method name String, not null.
      arguments - the arguments, a value supported by the channel's message codec. Possibly, null.
  • Method Details

    • arguments

      @Nullable public <T> T arguments()
      Returns the arguments of this method call with a static type determined by the call-site.
      Type Parameters:
      T - the intended type of the arguments.
      Returns:
      the arguments with static type T
    • argument

      @Nullable public <T> T argument(@NonNull String key)
      Returns a String-keyed argument of this method call, assuming arguments is a Map or a JSONObject. The static type of the returned result is determined by the call-site.
      Type Parameters:
      T - the intended type of the argument.
      Parameters:
      key - the String key.
      Returns:
      the argument value at the specified key, with static type T, or null, if such an entry is not present.
      Throws:
      ClassCastException - if arguments can be cast to neither Map nor JSONObject.
    • hasArgument

      public boolean hasArgument(@NonNull String key)
      Returns whether this method call involves a mapping for the given argument key, assuming arguments is a Map or a JSONObject. The value associated with the key, as returned by argument(String), is not considered, and may be null.
      Parameters:
      key - the String key.
      Returns:
      true, if arguments is a Map containing key, or a JSONObject with a mapping for key.
      Throws:
      ClassCastException - if arguments can be cast to neither Map nor JSONObject.