Skip to content

suraphanL/SwiftInAppPurchase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SwiftInAppPurchase

Simply code In App Purchases with this Swift Framework

CI Status Version License Platform

Usage

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Installation

SwiftInAppPurchase is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "SwiftInAppPurchase"

Author

Rawd, suraphan.d@gmail.com

License

SwiftInAppPurchase is available under the Apache 2.0 license. See the LICENSE file for more info.

##Production Mode SwiftInAppPurchase.sharedInstance.setProductionMode(false)

##Request Products var productIden = Set() productIden.insert("com.irawd.test.30d")

let iap = SwiftInAppPurchase.sharedInstance

iap.requestProducts(productIden) { (products, invalidIdentifiers, error) -> () in

}

##Purchase let iap = SwiftInAppPurchase.sharedInstance iap.addPayment("com.irawd.test.30d", userIdentifier: nil) { (result) -> () in

    switch result{
    case .Purchased(let productId,let transaction,let paymentQueue):

        paymentQueue.finishTransaction(transaction)
    case .Failed(let error):
        print(error)
    default:
        break
    }            
}

##RefreshReceipt let iap = SwiftInAppPurchase.sharedInstance iap.refreshReceipt { (error) -> () in print(error) } ##VerifyReceipt let iap = SwiftInAppPurchase.sharedInstance iap.verifyReceipt(nil) { (receipt, error) -> () in print(receipt) print(error) } ##Restore let iap = SwiftInAppPurchase.sharedInstance iap.restoreTransaction(nil) { (result) -> () in switch result{ case .Restored(let productId,let transaction,let paymentQueue) :

        paymentQueue.finishTransaction(transaction)
    case .Failed(let error):
        print(error)

    default:
    break
    }
}       

##CheckIncompleteTransaction let iap = SwiftInAppPurchase.sharedInstance iap.checkIncompleteTransaction { (result) -> () in switch result{ case .Purchased(let productId,let transaction,let paymentQueue): paymentQueue.finishTransaction(transaction) case .Restored(let productId,let transaction,let paymentQueue) :

        paymentQueue.finishTransaction(transaction)
    default:
        break
    }
}