您可以用 Adjust SDK 记录 App Store 的订阅,并验证这些订阅是否有效。用户购买订阅后,创建一个包含细节的 ADJAppStoreSubscription
实例。
1. 实例化订阅对象{#instantiate-a-subscription-object}
- (nullable id)initWithPrice:(nonnull NSDecimalNumber *)price
currency:(nonnull NSString *)currency
transactionId:(nonnull NSString *)transactionId;
要开始设置,先创建一个包含订阅购买细节的订阅对象。为此,请使用 initWithPrice
方法初始化一个 ADJAppStoreSubscription
对象。传递以下参数:
参数 | 数据类型 | 描述 |
---|
price | NSDecimalNumber | 订阅价格 |
currency | NSString | 订阅使用的币种。此信息格式为 priceLocale 对象的 currencyCode 。 |
transactionId | NSString | 您的交易 ID |
let subscription = ADJAppStoreSubscription(
transactionId: transactionId
ADJAppStoreSubscription *subscription = [[ADJAppStoreSubscription alloc] initWithPrice:price
transactionId:transactionId];
记录购买日期
- (void)setTransactionDate:(nonnull NSDate *)transactionDate;
您可以记录用户购买订阅的日期。SDK 会返回该数据用于报告。请使用时间戳调用 setTransactionDate
方法,记录该信息。
guard let subscription = ADJAppStoreSubscription(
transactionId: transactionId) else { return }
subscription.setTransactionDate(transactionDate)
ADJAppStoreSubscription *subscription = [[ADJAppStoreSubscription alloc] initWithPrice:price
transactionId:transactionId];
[subscription setTransactionDate:transactionDate];
记录购买地区
- (void)setSalesRegion:(nonnull NSString *)salesRegion;
您可以记录用户购买订阅的地区。为此,请在订阅对象上调用 setSalesRegion
方法并将国家代码作为 NSString
传递。此信息格式需为 Storefront
对象的 countryCode
。
guard let subscription = ADJAppStoreSubscription(
transactionId: transactionId) else { return }
subscription.setSalesRegion(salesRegion)
ADJAppStoreSubscription *subscription = [[ADJAppStoreSubscription alloc] initWithPrice:price
transactionId:transactionId];
[subscription setSalesRegion:salesRegion];
添加回传参数
- (void)addCallbackParameter:(nonnull NSString *)key value:(nonnull NSString *)value;
您可以向订阅对象附加回传参数。SDK 会将这些参数附加至您的回传 URL。要添加回传参数,请在订阅对象上调用 addCallbackParameter
方法。多次调用该方法可添加多个回传参数。
guard let subscription = ADJAppStoreSubscription(
transactionId: transactionId) else { return }
subscription.addCallbackParameter("key1", value: "value1")
subscription.addCallbackParameter("key2", value: "value2")
ADJAppStoreSubscription *subscription = [[ADJAppStoreSubscription alloc] initWithPrice:price
transactionId:transactionId];
[subscription addCallbackParameter:@"key1" value:@"value1"];
[subscription addCallbackParameter:@"key2" value:@"value2"];
添加合作伙伴参数
- (void)addPartnerParameter:(nonnull NSString *)key value:(nonnull NSString *)value;
您可以向订阅对象附加合作伙伴参数。用户购买订阅时,SDK 会将这些参数发送至 Adjust 服务器。Adjust 服务器会将此信息转发至您的合作伙伴。要添加合作伙伴参数,请在您的订阅对象上调用addPartnerParameter
方法。多次调用该方法可添加多个合作伙伴参数。
guard let subscription = ADJAppStoreSubscription(
transactionId: transactionId) else { return }
subscription.addParameterParameter("key1", value: "value1")
subscription.addParameterParameter("key2", value: "value2")
ADJAppStoreSubscription *subscription = [[ADJAppStoreSubscription alloc] initWithPrice:price
transactionId:transactionId];
[subscription addParameterParameter:@"key1" value:@"value1"];
[subscription addParameterParameter:@"key2" value:@"value2"];
+ (void)trackAppStoreSubscription:(nonnull ADJAppStoreSubscription *)subscription;
设置好订阅对象后,您就可以使用 Adjust SDK 将其发送给 Adjust 了。将已完成对象传送至 trackAppStoreSubscription
方法,以记录用户订阅购买。
guard let subscription = ADJAppStoreSubscription(
transactionId: transactionId) else { return }
subscription.setTransactionDate(transactionDate)
subscription.setSalesRegion(salesRegion)
// Add callback parameters
subscription.addCallbackParameter("key1", value: "value1")
subscription.addCallbackParameter("key2", value: "value2")
// Add partner parameters
subscription.addPartnerParameter("key1", value: "value1")
subscription.addCallbackParameter("key2", value: "value2")
Adjust.trackAppStoreSubscription(subscription)
ADJAppStoreSubscription *subscription = [[ADJAppStoreSubscription alloc] initWithPrice:price
transactionId:transactionId
[subscription setTransactionDate:transactionDate];
[subscription setSalesRegion:salesRegion];
/// Add callback parameters
[subscription addCallbackParameter:@"key1" value:@"value1"];
[subscription addCallbackParameter:@"key2" value:@"value2"];
/// Add partner parameters
[subscription addPartnerParameter:@"key1" value:@"value1"];
[subscription addPartnerParameter:@"key2" value:@"value2"];
[Adjust trackAppStoreSubscription:subscription];