instance property

The instance containing the platform-specific in_app_purchase functionality.

Returns null by default.

To implement additional functionality extend 3 with the platform-specific functionality, and when the plugin is registered, set the InAppPurchasePlatformAddition.instance with the new addition implementation instance.

Example implementation might look like this:

class InAppPurchaseMyPlatformAddition extends InAppPurchasePlatformAddition {
  Future<void> myPlatformMethod() {}
}

The following snippet shows how to register the InAppPurchaseMyPlatformAddition:

class InAppPurchaseMyPlatformPlugin {
  static void registerWith(Registrar registrar) {
    // Register the platform-specific implementation of the idiomatic
    // InAppPurchase API.
    InAppPurchasePlatform.instance = InAppPurchaseMyPlatformPlugin();

    // Register the [InAppPurchaseMyPlatformAddition] containing the
    // platform-specific functionality.
    InAppPurchasePlatformAddition.instance = InAppPurchaseMyPlatformAddition();
  }
}

Implementation

static InAppPurchasePlatformAddition? get instance => _instance;
void instance=(InAppPurchasePlatformAddition? instance)

Sets the instance to a desired InAppPurchasePlatformAddition implementation.

The instance should not be a type of InAppPurchasePlatform.

Implementation

static set instance(InAppPurchasePlatformAddition? instance) {
  assert(instance is! InAppPurchasePlatform);
  _instance = instance;
}