Swiftpack.co - Package - kwizzad/kwizzad-ios

Kwizzad SDK for iOS

Pod version Carthage compatible Github Release

Showcase

Showcase

Prerequisites

  • You already have your own KWIZZAD API KEY and PLACEMENT ID. If not, please contact TVSMILES per E-Mail and we will register your APP.
  • Apps integrating KWIZZAD SDK require at least iOS 8.0.
  • A fully working examples (objective-c and swift) can be found at: Examples

Migration

Migration guide from versions < 2.x.x

Installation

How to integrate KwizzadSDK Kwizzad supports Swift and ObjectiveC, and provides packages for CocoaPods and Carthage.

Carthage

Carthage is a dependency manager for Cocoa. To install Carthage, please consult the documentation.

To load the Kwizzad SDK over Carthage:

  • Put a Cartfile into your project. Contents:

    github "kwizzad/kwizzad-ios" "master"
    

    You can replace master by a specific version number you want to stick to, for example 2.0.0.

  • Run carthage checkout

    CocoaPods

CocoaPods is also a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

To load the Kwizzad SDK over CocoaPods:

  • Integrate KwizzadSDK into your Xcode project using CocoaPods by specifying this in your Podfile:
    source 'https://github.com/CocoaPods/Specs.git'
    use_frameworks!
    
    target '<Your Target Name>' do
        pod 'KwizzadSDK'
        # Alternatively, if you want to stick to a specific Kwizzad SDK version:
        # pod 'KwizzadSDK', '<version number goes here>'
    end
    
  • Run the following command in your terminal, in the root directory of your project:
    $ pod install
    

Usage:

step 1 : Initializing the SDK

  • with swift
     KwizzadSDK.setup(apiKey: "YOUR_API_TOKEN_HERE"")```
    
    
  • with objective-c
    [KwizzadSDK setupWithApiKey:@"YOUR_API_TOKEN_HERE"];
    

step 2 : Assigning Kwizzad Delegate protocol

  • with swift

    import KwizzadSDK
    class ViewController: UIViewController, KwizzadSDKDelegate {
       override func viewDidLoad() {
          KwizzadSDK.instance.delegate = self
        }
    }
    
  • with objective-c

    @interface ViewController () <KwizzadSDKDelegate>
    @end
    
    @implementation ViewController
    - (void)viewDidLoad {
     KwizzadSDK.instance.delegate = self;
    }
    

step 3 : Requesting Ad

  • with swift

    KwizzadSDK.instance.requestAd(placementId: YOUR_PLACEMENT)
    
  • with objective-c

    [KwizzadSDK.instance requestAdWithPlacementId:YOUR_PLACEMENT onAdAvailable:nil];
    

step 4 : Implement the delegate functions

Please have a look at the KwizzadExample app project. There are two build schemes, one for Swift, one for objective-c, to implement the delegate functions.

 using the delegate pattern

    Mandatory callbacks :

    - kwizzadDidRequestAd:placementId
    - kwizzadOnAdAvailable:placementId:potentialRewards:adResponse
    - kwizzadOnAdReady:placementId
    - kwizzadDidShowAd:placementId
    - kwizzadGotOpenTransactions:openTransactions
    - kwizzadDidDismissAd:placementId
    - kwizzadOnNoFill:placementId

    Optionals Callbacks :

    - kwizzadOnErrorOccured:placementId:reason
    - kwizzadWillPresentAd:placementId
    - kwizzadOnGoalReached:placementId
    - kwizzadCallToActionClicked:placementId

For better targeting, please set your user data :

let userData = kwizzad.userDataModel;
userData.userId = "12345" 
userData.gender = Gender.Female
userData.userName = "Francesca Rossi" 
userData.facebookUserId = "1234abc"

Github

link
Stars: 1
Help us keep the lights on

Dependencies

Used By

Total: 0

Releases

2.3.2 - Sep 19, 2017

[FIXED] crash happened sometimes when close dialog is shown

2.3.1 - Sep 13, 2017

[NEW] kwizzad supports French language, now [NEW] campaign meta info default values are available whenever a campaign meta info is missing (image, headline, description text)

[FIXED] show close dialog if you click on the close icon also on quiz pages [FIXED] kwizzad close icon was visible in some edge cases within publisher app [FIXED] prevent multiple ad requests when state changed from requesting to dismissed [FIXED] null pointer exception when no campaign image was available

2.3.0 - Aug 16, 2017

This release contains minor fixes – we recommend you update your app to use this SDK version.

  • Increases RTA fill rates by supplying better targeting parameters
  • Example app now shows how to use automatic ad preloading
  • Simplified API for getting open transaction rewards
  • Fixes an edge case that led to a duplicated ad request
  • Fixes an issue with ad expiration when phone date is set incorrectly

2.2.0 - Jul 27, 2017

This release adds RTA/video support to Kwizzad’ SDK. This means you can use Kwizzad to monetize video impressions in your web app! Kwizzad allows you to mix videos, questionnaires, and quizzes in innovative, appealing ad formats.

2.1.1 - Jun 29, 2017

CHANGED: We moved the RxSwift code we use directly into our SDK. This way, the Kwizzad iOS SDK has no external RxSwift framework dependency anymore.