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
HMS Core 华为 应用内支付服务
最新推荐文章于 2024-11-30 18:48:33 发布