ViewPay-iOS-SDK 1.8.0

ViewPay-iOS-SDK 1.8.0

Thibaut LE LEVIERLudovic OllagnierRALAIVAO Eugène 维护。



  • Thibaut LE LEVIER,Philipe ROCTON 和 RALAIVAO Eugène 编写

ViewPay iOS SDK: 引导指南

本指南旨在帮助您在iOS应用程序中将ViewPay SDK设置为SwiftObjective-C。为了提醒,Viewpay是一种基于广告注意力的微支付解决方案,允许用户通过观看广告解锁优质内容。Viewpay旨在替代其他解锁优质内容的方式,而不应安装为付费墙的唯一选项。

以下是一个使用Viewpay解锁文章的示例

sample

先决条件

  • 使用 Xcode 13.0 或更高版本
  • 兼容 iOS 10.0 或更高版本

SDK 安装

Cocoapods (推荐)

为了简化外部库的安装和更新,我们建议使用Cocoapods

在您的 Podfile 文件中添加 SDK 参考资料

pod 'ViewPay-iOS-SDK'

然后,运行命令 pod install

为了保持SDK更新,请在每次更新您应用程序之前运行命令 pod update

手动安装

如果您不想使用Cocoapods,您可以手动安装SDK

  • 通过以下链接下载SDK的最新版本:ViewPay.zip
  • 解压缩归档文件
  • 将文件 ViewPay.xcframework 拖动到您的项目中,选择“目的地:如有必要则复制项目”选项,并将文件添加到项目的主要目标中。
  • 遵循Google开发者门户上的说明,下载和安装ViewPay使用的最新版本Google IMA SDK

SDK初始化

为了让SDK运行,您必须尽快在应用程序生命周期中初始化SDK。

  • 首先,在应用程序的 ApplicationDelegate 标题中导入SDK,在 class 声明之前
    • Swift 中导入 import ViewPay
    • Objective-C 中导入 #import <ViewPay/ViewPay.h>
  • 然后,在 application:didFinishLaunchingWithOptions: 方法中,使用以下方式使用ViewPay给您提供的ID初始化SDK
    • Swift 中 ViewPay.setAccountID("<votre_ID>")
    • Objective-C 中 [ViewPay setAccountID:@"<votre_ID>"];

检查活动可用性

SDK初始化后,使用SDK的第一个步骤是在合适的时机检查一个或多个活动的可用性

为此,您需要调用 checkVideoWithContentCategory:andCallback: 方法。

如果回调返回成功,则可以更新界面(例如显示按钮)以提示用户在观看视频时进行“支付”交易。

Swift 版本

ViewPay.checkVideo(withContentCategory: nil) { (success, error) in
	if (success) {
		// Des campagnes sont disponibles
		// Faites apparaitre le bouton dans votre paywall permettant à l'utilisateur d'accèder à son contenu via ViewPay.
	}
	else {
		// Aucune campagne n'est disponible. Vos autres alternatives de payement sont toujours proposées à votre utilisateur.
	}   
}

Objective-C 版本

[ViewPay checkVideoWithContentCategory:nil
		andCallback:^(BOOL success, NSError *error) {
			if (success) {
				// Des campagnes sont disponibles.
				// Faites apparaitre le bouton dans votre paywall permettant à l'utilisateur d'accèder à son contenu via ViewPay.
			}
			else {
				// Aucune campagne n'est disponible. Vos autres alternatives de payement sont toujours proposées à votre utilisateur.
			} 
}];

展示广告以获取内容

通过调用方法 checkVideoWithContentCategory:andCallback: 的回调,您可以知道是否有广告可用于通过 ViewPay 验证交易。

当用户通过在支付墙中点击按钮选择 Viewpay 时,下一步是向用户展示 AdSelector ViewPay,以便他们选择和观看一个视频广告。

为此,您需要调用方法 presentAdWithCallback:

Swift 中

ViewPay.presentAd { (status) in
	if status == .success {
		// Autorisez l'utilisateur à accéder à son contenu.
	}             
}

Objective-C 中

[ViewPay presentAdWithCallback:^(VPAdStatus status) {
	if (status == VPAdStatusSuccess) {
		// Autorisez l'utilisateur à accéder à son contenu.
	}
}];

错误处理

方法 presentAd:withContentCategory:andCallback: 的回调允许您向用户提供以下反馈之一的适应型反馈:

  • VPAdStatusSuccess(Objective-C)或 VPAdStatus.success(Swift):证实交易的顺利进行。用户已观看广告至结束并可以访问其内容。
  • VPAdStatusCancelled(Objective-C)或 VPAdStatus.cancelled(Swift):用户在观看广告结束前已离开广告屏幕。SDK 已通知用户他们将无法访问其内容。
  • VPAdStatusNoAd(Objective-C)或 VPAdStatus.noAd(Swift):没有可用于验证交易的广告。对于用户来说,调用是透明的。使用其他备选方案来验证访问内容的交易。
  • VPAdStatusError(Objective-C)或 VPAdStatus.error(Swift):在展示广告时发生错误。向用户提供适应型反馈并使用其他备选方案以验证访问内容的交易。

元数据与自定义

ViewPay SDK 提供一些元数据,以促进更好地对向用户展示的广告进行分类。

如果这些信息在您的应用程序中可用,您可以使用以下两种方法轻松提供用户的性别和年龄:

Swift 中

ViewPay.setUserAge(42)
ViewPay.setUserGender(.male) // valeurs disponibles: .male, .female ou .other

Objective-C 中

[ViewPay setUserAge:42];
[ViewPay setUserGender:VPUserGenderMale]; // valeurs disponibles: VPUserGenderMale, VPUserGenderFemale ou VPUserGenderOther

您还可以在调用方法 checkVideoWithContentCategory:andCallback: 时提供内容类别作为您自己的字符串,以提供尽可能多的上下文。

Swift 中

ViewPay.checkVideo(withContentCategory: "cinema") { (success, error) in
	if success {
		...
	}             
}

Objective-C 中

[ViewPay checkVideoWithContentCategory:@"cinema" 
	andCallback:^(BOOL success, NSError *error) {
		if (success) {
			...
		} 
}];

尤其是元数据“pageInfo”,由页面的id和名称组成,用于按页面分类可视化广告的统计数据。

您可以这样填写:

在 Swift 中

ViewPay.setPageInfo("652", pageTitle: "Page actualites guerre en ukraine") 

Objective-C 中

[ViewPay setPageInfo:@"6565" pageTitle:@"Page actualites guerre en ukraine"];