Skip to content

支付

唤起支付

activity:activity 上下文

from:来源于那个第三方平台支付

requestParams: 支付的请求参数,PayRequestParams

payListener:为支付之后的回调,是一个实现 PayListener 接口的对象。

kotlin
/**
    * 开始进行支付
    * activity activity上下文
    * from 来源于那个第三方平台支付
    * requestParams: 支付的请求参数
    * payListener 支付过程中的监听回调
    */
fun pay(
    activity: Activity,
    from: BrickPayPlatform,
    requestParams: PayRequestParams,
    payListener: PayListener
)

方法举例:

kotlin
val requestParams=PayRequestParams().apply {
    orderId = "接入方生成的订单ID"
    productId = "第三方支付平台为你的应用创建产品的产品ID(有些平台没有productId可以为空)"
    money = "产品金额"
    extraData = "额外的透传数据,可以为空"
}
BrickSDK.pay(this, BrickPayPlatform.Google,
    requestParams, object : PayListener {
        override fun onPayError(error: PayError) {
            //支付失败
            Log.i(
                "MainActivity",
                "pay  ${from.from.getPlatformDes()} onPayError ${error.message}"
            )
            Toast.makeText(
                this@PayActivity,
                "${error.message} ${from.from.getPlatformDes()}",
                LENGTH_SHORT
            )
                .show()
        }

        override fun onPayingSuccess(data: String) {
            //支付成功
            Log.i("MainActivity", "pay ${from.from.getPlatformDes()} onPayingSuccess $data")
            Toast.makeText(
                this@PayActivity,
                "paySuccess  ${from.from.getPlatformDes()}",
                LENGTH_SHORT
            )
                .show()
        }
    }
)

getProductList 获取第三方商品列表

该方法为_获取第三方商品列表_

from来自于那个平台 例如 google

productListListener获取商品列表的监听,对应的类为 BrickSDKCallback

kotlin
/**
 *  获取第三方商品列表
 *  from: 来自于那个平台 例如google
 *  productListListener 获取商品列表的监听
 */
fun getProductList(from: BrickPlatform, productListListener: BrickSDKCallback)

方法举例:

kotlin
BrickSDK.getProductList(BrickPlatform._Google_, object : BrickSDKCallback {
        override fun onError(error: String) {
        }

        override fun onSuccess(data: String?) {
        }
    }
)

Api相关

PayListener

TIP

说明:它是一个支付相关接口,主要用于支付时返回结果的回调

方法:

onPayingSuccess(data:String)

当用户支付成功时,调用的方法

data:当支付成功时,以 json 字符串的方式返回的订单信息

kotlin
fun onPayingSuccess(data:String)

onPayError(error: PayError)

在用户支付过程中因为网络,账户,主动取消等出现问题导致支付失败而回调的方法

error:PayError,具体的错误原因

kotlin
fun onPayError(error: PayError)

接口实现举例:

kotlin
val payListener =object : PayListener {
    override fun onPayError(error: PayError) {
        //支付失败
        Toast.makeText(this@MainActivity, error.message, _LENGTH_SHORT_).show()
    }

    override fun onPayingSuccess(data: String) {
        //支付成功
        Toast.makeText(this@MainActivity, "paySuccess", _LENGTH_SHORT_).show()
    }
}

PayError

TIP

说明:它是支付时错误的一个枚举类,把所有错误全部都列举出来

成员变量
PayError


变量
类型
说明
code
整型
错误码
message
字符串
错误信息
错误表
错误类型
错误码
错误信息
说明
ServerPayError
1001
server error
服务器错误
FeatureNotSupported
1002
this feature is not supported
不支持使用此功能
ServiceDisconnected
1003

service not connected

服务无法连接
UserCanceled
1004
user cancellation
用户取消登录
ServiceUnavailable
1005

service unavailable
服务不可用

BillingUnavailable
1006
payment unavailable
支付不可用
ItemUnavailable
1007

this product is not available
商品不可用

DeveloperError
1008
developer error
开发者错误
Error
1009
error
错误
ItemNotOwned
1011
this product does not exist
商品不存在
NetworkError
1012

network error
网络错误

PayRequestParams

TIP

说明:它是_支付请求参数_

成员变量
PayRequestParams


变量
类型
说明
productId
字符串
产品 Id(google 支付需要,不需要的平台可以传空)
orderId
字符串

订单号(必传)
money
字符串
金额(必传)
isInAppPurchase
布尔值
是否是内购 true 内购 false 订阅(选填)
extraData
字符串
额外透传参数(选填)

BrickPayPlatform

TIP

说明:它表示支付平台来源是哪一个,目前,google,微信和支付宝

成员变量
BrickAuthPlatform


变量
类型
说明
from
BrickPlatform
来源实际平台
枚举表
平台类型

说明
Google
Google
谷歌
WeiXin
WeiXin
微信
ZFB
ZFB
支付宝