您的商店可能会提供不适合跨平台购买流程的其他功能,例如在 Apple 商店上刷新应用收据的功能。
您应该创建一个定义扩展功能的接口,该接口本身实现IStoreExtension
接口
/// <summary>
/// Functionality specific to my store.
/// </summary>
public interface IMyExtensions : IStoreExtension
{
// Hypothetical method for a store that provides User IDs.
String GetUserStoreId();
}
应用程序通过IExtensionProvider
请求扩展功能。当它们这样做时,Unity IAPUnity 应用内购买的缩写
请参阅词汇表首先尝试将活动商店实现强制转换为请求的类型。
如果该强制转换失败,Unity IAP 将提供通过商店模块已通过RegisterExtension
提供的任何已注册实例,或者如果未提供任何实例,则提供null。
即使在不受支持的平台上运行,模块也应为其定义的扩展接口提供实例,以避免强制应用程序开发人员使用平台相关的编译。