HMS Core 华为 应用内支付服务

package com.huawei.iapkit;

import android.app.Activity;
import android.content.Intent;
import android.content.IntentSender;
import android.os.Bundle;
import android.util.Log;
import android.view.View;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.appcompat.widget.LinearLayoutCompat;

import com.huawei.hmf.tasks.OnFailureListener;
import com.huawei.hmf.tasks.OnSuccessListener;
import com.huawei.hmf.tasks.Task;
import com.huawei.hms.iap.Iap;
import com.huawei.hms.iap.IapApiException;
import com.huawei.hms.iap.IapClient;
import com.huawei.hms.iap.entity.ConsumeOwnedPurchaseReq;
import com.huawei.hms.iap.entity.ConsumeOwnedPurchaseResult;
import com.huawei.hms.iap.entity.InAppPurchaseData;
import com.huawei.hms.iap.entity.OrderStatusCode;
import com.huawei.hms.iap.entity.ProductInfo;
import com.huawei.hms.iap.entity.ProductInfoReq;
import com.huawei.hms.iap.entity.ProductInfoResult;
import com.huawei.hms.iap.entity.PurchaseIntentReq;
import com.huawei.hms.iap.entity.PurchaseIntentResult;
import com.huawei.hms.iap.entity.PurchaseResultInfo;
import com.huawei.hms.support.api.client.Status;

import org.json.JSONException;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

   private static final String TAG = "MainActivity";
   // 展示购买商品的PurchaseToken - 请不要删除,否则影响考试成绩
   private AppCompatTextView mTvPurchaseToken;
   // 展示商品信息Content - 请不要删除,否则影响考试成绩
   private LinearLayoutCompat mLlProductContent;
   // 展示商品信息-商品名称 - 请不要删除,否则影响考试成绩
   private AppCompatTextView mTvProductName;
   // 展示商品信息-商品ID - 请不要删除,否则影响考试成绩
   private AppCompatTextView mTvProductId;
   // 展示商品信息-商品价格 - 请不要删除,否则影响考试成绩
   private AppCompatTextView mTvProductPrice;
   // 展示商品信息-商品类型 - 请不要删除,否则影响考试成绩
   private AppCompatTextView mTvProductType;

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       initView();
   }

   /**
    * 初始化View - 请不要删除,否则影响考试成绩
    */
   private void initView() {
       // 展示购买商品的PurchaseToken
       mTvPurchaseToken = findViewById(R.id.text_purchaseToken);
       // 展示商品信息Content - 请不要删除,否则影响考试成绩
       mLlProductContent = findViewById(R.id.product_content);
       // 展示商品信息-商品名称 - 请不要删除,否则影响考试成绩
       mTvProductName = findViewById(R.id.product_name);
       // 展示商品信息-商品ID - 请不要删除,否则影响考试成绩
       mTvProductId = findViewById(R.id.product_id);
       // 展示商品信息-商品价格 - 请不要删除,否则影响考试成绩
       mTvProductPrice = findViewById(R.id.product_price);
       // 展示商品信息-商品类型 - 请不要删除,否则影响考试成绩
       mTvProductType = findViewById(R.id.product_type);

       findViewById(R.id.btn_productList).setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {
               // 实现获取商品列表功能  - 请不要删除,否则影响考试成绩
               onGetProductList();
           }
       });

       findViewById(R.id.btn_buyProduct).setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {
               // 实现购买商品功能  - 请不要删除,否则影响考试成绩
               onBuyProduct();
           }
       });
   }

   /**
    * 更新商品信息 - 请不要删除,否则影响考试成绩
    */
   private void onUpdateProductInfo(List<ProductInfo> data) {
       if (data == null || data.isEmpty()) {
           mLlProductContent.setVisibility(View.GONE);
           mTvProductName.setText("");
           mTvProductId.setText("");
           mTvProductPrice.setText("");
           mTvProductType.setText("");
           return;
       }
       mLlProductContent.setVisibility(View.VISIBLE);
       // 只显示一个商品
       ProductInfo productInfo = data.get(0);
       mTvProductName.setText(productInfo.getProductName());
       mTvProductId.setText(productInfo.getProductId());
       mTvProductPrice.setText(productInfo.getPrice());
       int type = productInfo.getPriceType();
       //0:消耗型商品
       //1:非消耗型商品
       //2:订阅型商品
       if (type == 0) {
           mTvProductType.setT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值