50 lines
1.7 KiB
Java
50 lines
1.7 KiB
Java
|
|
package com.smartmobilesoftware.util;
|
|
|
|
import org.json.JSONException;
|
|
import org.json.JSONObject;
|
|
|
|
/**
|
|
* Represents an in-app billing purchase.
|
|
*/
|
|
public class Purchase {
|
|
String mItemType; // ITEM_TYPE_INAPP or ITEM_TYPE_SUBS
|
|
String mOrderId;
|
|
String mPackageName;
|
|
String mSku;
|
|
long mPurchaseTime;
|
|
int mPurchaseState;
|
|
String mDeveloperPayload;
|
|
String mToken;
|
|
String mOriginalJson;
|
|
String mSignature;
|
|
|
|
public Purchase(String itemType, String jsonPurchaseInfo, String signature) throws JSONException {
|
|
mItemType = itemType;
|
|
mOriginalJson = jsonPurchaseInfo;
|
|
JSONObject o = new JSONObject(mOriginalJson);
|
|
mOrderId = o.optString("orderId");
|
|
mPackageName = o.optString("packageName");
|
|
mSku = o.optString("productId");
|
|
mPurchaseTime = o.optLong("purchaseTime");
|
|
mPurchaseState = o.optInt("purchaseState");
|
|
mDeveloperPayload = o.optString("developerPayload");
|
|
mToken = o.optString("token", o.optString("purchaseToken"));
|
|
mSignature = signature;
|
|
}
|
|
|
|
public String getItemType() { return mItemType; }
|
|
public String getOrderId() { return mOrderId; }
|
|
public String getPackageName() { return mPackageName; }
|
|
public String getSku() { return mSku; }
|
|
public long getPurchaseTime() { return mPurchaseTime; }
|
|
public int getPurchaseState() { return mPurchaseState; }
|
|
public String getDeveloperPayload() { return mDeveloperPayload; }
|
|
public String getToken() { return mToken; }
|
|
public String getOriginalJson() { return mOriginalJson; }
|
|
public String getSignature() { return mSignature; }
|
|
|
|
@Override
|
|
public String toString() { return "PurchaseInfo(type:" + mItemType + "):" + mOriginalJson; }
|
|
}
|