资源简介

个人精品资源来的,公司也在用,已经是比较稳定的了。 里面已经带有对应版本的API和Util工具类,所以下载直接就能使用。 这里使用的是v3版本的API,如果想要使用最新版本的 API请自行按照新的API函数稍微修改一下代码参数就行了。 使用该封装,只需要简单的4步就能调起支付,参数等配置、new 一下,回调,注销。 里面的接口功能齐全,具备完整的成功、失败、错误回调。如果需要详细教程,可以看我博客。http://blog.csdn.net/u013640004/article/details/78257536 1.0.3更新日志:增加对订阅功能的支持。

资源截图

代码片段和文件信息

package com.eyewind.puzzle.utils;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.RemoteException;

import com.android.vending.util.IabHelper;
import com.android.vending.util.IabResult;
import com.android.vending.util.Inventory;
import com.android.vending.util.Purchase;
import com.eyewind.framework.util.DeviceUtil;

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

/**
 * Created by TJbaobao on 2017/7/19.
 */

public class GooglePlayUtil {

    /*
    * v1.0.1
    * 内购流程
    * 1、启动并配置内购服务 startSetup
    * 2、确认内购服务启动并配置完成,然后获取商品信息(价格) queryInventory
    * (查询商品的时候需要对商品进行消耗,以防止有的商品没有消耗)
    * 3、发起购买行为 purchase
    * (购买行为之后需要对商品进行消耗,否则无法进行下次购买,谷歌规定的,意图是防止用户二次误买)
    *
    * v1.0.2
    * 更新 针对iabHelper dispose之后某些情况下出现IabHelper was disposed of so it cannot be used.错误的情况,做出了处理
    *
    * v1.0.3
    * 增加 支持订阅功能的使用
* 流程:
* 前面相同,发起订阅的时候,调用purchaseSub,回调流程和内购一样。
* 查询订阅当前用户的订阅状态:getPurchasesSize,返回值:0没有订单,1有订单,-1发生错误
    */

    private static final String PUBLICKEY = “更变为自己的key“;
    private static final String[] ITEM_SKUS = new String[]{“coins_leve1““coins_leve2““coins_leve3““coins_leve4“};//内支付的SKU
    private static final String[] SUBS_SKUS = new String[]{“weekly““monthly““yearly“};//订阅的SKU
    private static final boolean ENABLE_DEBUG = false;//是否Debug输出日志模式
    private static final String LogTag = “MyDebug“;
    public static final int RC_REQUEST = 10001;

    private Context context;
    private IabHelper iabHelper;
    private OnQueryFinishedListener onQueryFinishedListener;
    private boolean isStartSetup = false;
    private onstartSetupFinishedListener onstartSetupFinishedListener ;

    public GooglePlayUtil(Context context OnQueryFinishedListener onQueryFinishedListener) {
        this.context = context;
        this.onQueryFinishedListener = onQueryFinishedListener;
        iabHelper = new IabHelper(contextPUBLICKEY);
        iabHelper.enableDebugLogging(ENABLE_DEBUGLogTag);
        startSetup();
    }

    /**
     * 启动并配置内购服务
     */
    private void startSetup()
    {
        if(iabHelper!=null)
        iabHelper.startSetup(new MyOnIabSetupFinishedListener());
    }

    /**
     * 配置内购服务接口
     */
    private class MyOnIabSetupFinishedListener implements IabHelper.OnIabSetupFinishedListener
    {
        @Override
        public void onIabSetupFinished(IabResult result) {
            if(result==null)
            {
                if(onstartSetupFinishedListener!=null)
                {
                    onstartSetupFinishedListener.onSetupError();
                }
                return ;
            }
            if(result.isFailure())
            {
                isStartSetup = false;
                if(onstartSetupFinishedListener!=null)
                {
                    onstartSetupFinishedListener.onSetupFail(result);
           

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-07-29 19:19  googleplay\
     目录           0  2017-07-29 19:19  googleplay\aidl\
     目录           0  2017-07-29 19:19  googleplay\aidl\com\
     目录           0  2017-07-29 19:19  googleplay\aidl\com\android\
     目录           0  2017-07-29 19:19  googleplay\aidl\com\android\vending\
     目录           0  2017-07-29 19:19  googleplay\aidl\com\android\vending\billing\
     文件       11594  2016-09-13 18:46  googleplay\aidl\com\android\vending\billing\IInAppBillingService.aidl
     文件       13983  2017-10-27 17:06  googleplay\GooglePlayUtil.java
     文件        1782  2017-10-27 17:23  googleplay\readme.txt
     目录           0  2017-07-29 19:15  googleplay\utils\
     文件       24277  2017-07-25 15:48  googleplay\utils\base64.java
     文件         984  2017-07-25 15:48  googleplay\utils\base64DecoderException.java
     文件        2102  2017-07-25 15:48  googleplay\utils\IabBroadcastReceiver.java
     文件        1503  2017-07-25 15:48  googleplay\utils\IabException.java
     文件       51362  2017-10-27 15:42  googleplay\utils\IabHelper.java
     文件        1754  2017-07-25 15:48  googleplay\utils\IabResult.java
     文件        3437  2017-07-25 15:48  googleplay\utils\Inventory.java
     文件        2514  2017-07-25 15:48  googleplay\utils\Purchase.java
     文件        4993  2017-07-25 15:48  googleplay\utils\Security.java
     文件        2261  2017-07-25 15:48  googleplay\utils\SkuDetails.java

评论

共有 条评论