Commit f64f35b1 authored by 王雪伟's avatar 王雪伟

[提交人]:王雪伟

[提交简述] :加入google 权限
[实现方案] :
parent e8e55e30
......@@ -10,12 +10,12 @@
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- <uses-permission android:name="android.permission.READ_PHONE_STATE" /> &lt;!&ndash; 用于写入缓存数据到扩展存储卡 &ndash;&gt;-->
<!-- <uses-permission android:name="android.permission.READ_PHONE_STATE" /> &lt;!&ndash; 用于写入缓存数据到扩展存储卡 &ndash;&gt;-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- <uses-permission android:name="android.permission.READ_CONTACTS" />-->
<!-- <uses-permission android:name="android.permission.READ_CONTACTS" />-->
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
<!--必要权限,解决安全风险漏洞,发送和注册广播事件需要调用带有传递权限的接口-->
......@@ -24,6 +24,8 @@
android:protectionLevel="signature" />
<uses-permission android:name="com.zhangxin.magicbox.openadsdk.permission.TT_PANGOLIN" />
<!-- GooglePay-->
<uses-permission android:name="com.android.vending.BILLING" />
<uses-sdk tools:overrideLibrary="com.bun.miitmdid" />
......
......@@ -37,11 +37,14 @@ class GooglePayActivity : BaseActivity() {
}
startConnection()
// GooglePayHelper(this).init()
}
fun startConnection() {
if(billingClient.isReady){
}
billingClient.startConnection(object : BillingClientStateListener {
override fun onBillingSetupFinished(billingResult: BillingResult) {
if (billingResult.responseCode == BillingClient.BillingResponseCode.OK) {
......
package com.zxhl.cms.googlepay
import android.app.Activity
import android.util.Log
import com.android.billingclient.api.*
import com.android.billingclient.api.BillingClient.SkuType
import com.zxhl.cms.AppContext
/**
* @author (wangXuewei)
* @datetime 2022-03-09 15:12 GMT+8
* @detail :
*/
class GooglePayHelper {
private val TAG = "GooglePayHelper"
private var mActivity: Activity;
private var mSku: String = ""
constructor(mActivity: Activity,mSku:String) {
this.mActivity = mActivity
this.mSku = mSku
}
/**
* 购买监听
*/
private val purchasesUpdatedListener =
PurchasesUpdatedListener { billingResult, purchases ->
// To be implemented in a later section.
}
private var billingClient = BillingClient.newBuilder(AppContext.get())
.setListener(purchasesUpdatedListener)
.enablePendingPurchases()
.build()
fun init() {
//已经连接查询订单
if (billingClient.isReady) {
Log.d(TAG, "init 已连接")
purchase()
} else {
//开始连接
Log.d(TAG, "init 开始连接")
billingClient.startConnection(object : BillingClientStateListener {
override fun onBillingSetupFinished(billingResult: BillingResult) {
Log.d(TAG, "init 开始连接 code:" + billingResult.responseCode)
if (billingResult.responseCode == BillingClient.BillingResponseCode.OK) {
//BillingClient准备好了。你可以在这里查询购买情况。
//查询商品购买
purchase()
}
}
override fun onBillingServiceDisconnected() {
// Try to restart the connection on the next request to
// Google Play by calling the startConnection() method.
Log.d(TAG, "init onBillingServiceDisconnected")
}
})
}
}
private fun purchase() {
val skuList: MutableList<String> = ArrayList()
skuList.add("premium_upgrade")
skuList.add("gas")
val params = SkuDetailsParams.newBuilder()
params.setSkusList(skuList).setType(SkuType.INAPP)
billingClient.querySkuDetailsAsync(
params.build()
) { billingResult, skuDetailsList ->
// Process the result.
Log.d(TAG, "purchase billingResult " + billingResult.responseCode)
if (billingResult.responseCode == BillingClient.BillingResponseCode.OK && !skuDetailsList.isNullOrEmpty()) {
val skuDetails = skuDetailsList[0]
val flowParams = BillingFlowParams.newBuilder()
.setSkuDetails(skuDetails)
.build()
val responseCode =
billingClient.launchBillingFlow(mActivity, flowParams).responseCode
Log.d(TAG, "purchase 去支付 code $responseCode")
} else {
Log.d(TAG, "purchase 查询失败")
}
}
}
}
\ No newline at end of file
This diff is collapsed.
......@@ -73,7 +73,7 @@ class PayActivity : BaseActivity(), PayContract.View,
)
id_img_back?.setOnClickListener {
finish()
startActivity(Intent(this,GooglePayActivity::class.java))
// startActivity(Intent(this,GooglePayActivity::class.java))
}
id_activity_member_close?.setOnClickListener {
finish()
......
......@@ -76,7 +76,7 @@
<string name="box_detail_open_box_tips">FAIRNESS GUARANTEED</string>
<string name="box_detail_open_box_rule">Rule</string>
<string name="box_detail_open_box_test_play">TRY FOR FREE</string>
<string name="box_detail_open_box_re_pumping">reopen card</string>
<string name="box_detail_open_box_re_pumping">Reopen card</string>
<string name="box_detail_open_box_shop_pool">Items in this box</string>
<string name="box_detail_open_box_one_lottery_btn">Open</string>
<string name="box_detail_open_box_five_lottery_btn">Open 5x</string>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment