INAPP
1. Login API :
接口為您提供了我們的登入服務,可以讓使用者透過facebook帳號登入我們的服務,在您呼叫此API後,可以得到
使用者的UUID(Unique UID為使用者在平台的唯一ID),以下就是API的呼叫方式
直接呼叫API,API將會反饋您回傳值如下
UUID String (玩家在平台的UUID)
您可以參考下列的案例,進行作業
Example:
InAppSession.login(this, newInAppSession.ISessionStatusCallback(){
InAppBilling.mHelper.dispose();
publicvoid success() {
// TODO Auto-generated method stub
// 在此可取得本次登入的auth值,建議可將此值透過平台提供的server-to-server 驗證 API (appLoginVerify API)進行驗證
String auth = com.inapp.LoginActivity.getAuth();
Log.d("auth", auth); InAppSession.getInAppUser(newInAppRequest.IRequestStatusCallback(){
@Override
publicvoidonComplete(JSONObject data) {
// TODO Auto-generated method stub
try {
Log.d("uid", data.getString("uid"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} @Override
publicvoid fail(JSONObject data) {
// TODO Auto-generated method stub
try {
Log.d("ERR_CODE", data.getString("ERR_CODE"));
Log.d("ERR_MSG", data.getString("ERR_MSG"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} @Override
publicvoid exception(JSONException e) {
// TODO Auto-generated method stub } });
} @Override
publicvoid fail(JSONObject data) {
// TODO Auto-generated method stub
try {
Log.d("ERR_CODE", data.getString("ERR_CODE"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} @Override
publicvoid exception(Exception e) {
// TODO Auto-generated method stub
e.printStackTrace();
} });
2. appLoginVerify API :
此接口為您提供了我們登入的驗證服務,驗證的型式為Server-to-Server (auth值驗證),以下就是API的呼叫方式
呼叫API時請帶入以下參數
apiKey String (開發商apiKey)
auth String (使用者登入auth值)
ts String (時間戳記)
hash String (驗證值hash = SHA256[auth+apiKey+secret+ts] 以此方式產生,secret為secret key 請洽詢我方窗口提供)
API將回傳您
ERR_CODE INT (錯誤碼)
ERR_MSG String (錯誤訊息)
uid String (玩家在平台的UUID)
您可以參考下列的案例,進行作業
以post的方式將上述參數傳至
http://inapp.com.tw/api/fbLogin/appLoginVerify
3. pointDeductAPI :
此接口為您提供了我們平台扣點服務,呼叫後扣除該玩家的平台點數,且由平台執行(3-1),並取得消費點數與交易序號,以下就是
API的呼叫方式
呼叫API時請帶入以下參數
point String (欲扣除的點數)
productName String (商品名稱)
serveId Int (服務器序號,1为1服,2为2服)
extraInfo String (開發商自訂參數,此參數會在完成交易後,回傳至BillingCallbackURI)
API將回傳您
tradeId String (交易序號)
您可以參考下列的案例,進行作業
Example:
Map<String, String>params =newHashMap<String, String>();
params.put("point", "5");
params.put("productName", "勇敢藥水");
params.put("extraInfo", "5");
InAppBilling.pointDeduct(this, params, newInAppRequest.IRequestStatusCallback()
{
@Override
publicvoidonComplete(JSONObject data) {
// TODO Auto-generated method stub
try {
Log.d("tradeId", data.getString("tradeId"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} @Override
publicvoid fail(JSONObject data) {
// TODO Auto-generated method stub
try {
Log.d("ERR_CODE", data.getString("ERR_CODE"));
Log.d("ERR_MSG", data.getString("ERR_MSG"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
publicvoid exception(JSONObject data) {
// TODO Auto-generated method stub
Log.d("Exception", e.getMessage());
}
});
3-1. 回傳交易結果至開發商BillingCallbackURI(交易回傳網址) :
此BillingCallbackURI為對我方申請應用時,需先行提交一個交易回傳網址提供給我方窗口,窗口會為您設定至平台,並且在
pointDeductAPI交易完成後進行呼叫,以下為API的呼叫方式
呼叫API時請帶入以下參數
tradeId String (平台交易序號)
point INT (交易扣除點數)
extraInfo String (開發商自訂參數)
ts String (時間戳記)
hash String (驗證值hash = SHA256[auth+apiKey+secret+ts] 以此方式產生,secret為secret key 請洽詢我方窗口提供)
您可以參考下列的案例,進行作業
以post的方式將上述參數傳至您所提供的BillingCallbackURI(交易回傳網址)
4. Google Play In App PurchaseAPI:
此接口為您提供了Google play IAP遊戲內購買的服務,呼叫後引導玩家至Google Play進行消費,並於完成後由平台執行3-1,通知遊戲伺服器此次消費點數與交易序號,以下就是API的呼叫方式
呼叫API時請帶入以下參數
iabKey String (於Google Play 產生的交易金鑰,請洽詢我方窗口提供)
productId String (於Google Play 申請的產品代碼,請洽詢我方窗口提供)
extraInfo String (開發商自訂參數,此參數會在完成交易後,回傳至BillingCallbackURI,若不需自定參數請傳空字串)
serveId Int (服務器序號,1为1服,2为2服)
API將回傳您
tradeId String (交易序號)
您可以參考下列的案例,進行作業
Example:
Map<String, Object>params =newHashMap<String, Object>();
params.put("iabKey", "Your IabKey");
params.put("productId", "Your ProductId");
params.put("extraInfo", "demo"); InAppBilling.goolePlayBilling(MainActivity.this, params, newInAppRequest.IRequestStatusCallback() { @Override
publicvoidonComplete(JSONObject data) {
// TODO Auto-generated method stub
try {
Log.d("tradeId", data.getString("tradeId"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } @Override
publicvoid fail(JSONObject data) {
// TODO Auto-generated method stub
try {
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} @Override
publicvoid exception(JSONException e) {
// TODO Auto-generated method stub
}
}); 備註:在呼叫的Activity中加入以下兩個method
@Override
publicvoidonActivityResult(intrequestCode, intresultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data); // Pass on the activity result to the helper for handling
if (!InAppBilling.mHelper.handleActivityResult(requestCode, resultCode, data)) {
// not handled, so handle it ourselves (here's where you'd
// perform any handling of activity results not related to in-app
// billing...
super.onActivityResult(requestCode, resultCode, data);
}
else {
Log.d("MSG", "onActivityResult handled by IABUtil.");
}
} @Override
publicvoidonDestroy()
{
if (InAppBilling.mHelper != null) InAppBilling.mHelper.dispose();
InAppBilling.mHelper = null;
super.onDestroy();
}
5.IapBiling API:
此接口為您提供了台哥大遊戲內購買的服務,呼叫後引導玩家至IapBiling進行消費,並於完成後由平台執行3-1,通知遊戲伺服器此次消費點數與交易序號,以下就是API的呼叫方式
呼叫API時請帶入以下參數
point String (欲扣除的點數)
productId String (商品名id)
extraInfo String (開發商自訂參數,此參數會在完成交易後,回傳至BillingCallbackURI)
ts String (時間戳記)
hash String (驗證值hash = SHA256[auth+apiKey+secret+ts] 以此方式產生,secret為secret key 請洽詢我方窗口提供)
uid String (玩家在平台的UUID)
chennelId string 厂商的渠道id(根据需要,可为空)
serveId Int (服務器序號,1为1服,2为2服)
備註:所傳參數key請用IapBiling定義的變量名
您可以參考下列的案例,進行作業 ,如果AndroidManifest.xml的权限没有以下配置请添加:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> Xml 配置Activity 时加上android:configChanges="orientation",避免横切屏重新加载页面。
如:
<activity android:name=".IAP"
android:label="@string/app_name"
android:configChanges="orientation">
另外在调用接口的Activity里面加上如下代码:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if(iapBiling!=null)iapBiling.notifyOrientationChanged();
} 呼叫代码例子:
HashMap<String,String> params = new HashMap<String, String>();
params.put(IapBiling.PARAMS_POINT, "0");
params.put(IapBiling.PARAMS_CHANNEL_ID, "0");
params.put(IapBiling.PARAMS_CONTENT_ID, "GAO010000000010");
params.put(IapBiling.PARAMS_TS, System.currentTimeMillis()+"");
params.put(IapBiling.PARAMS_INAPP_USER_ID, "1010");
params.put(IapBiling.PARAMS_EXTRA_INFO, "開發商自訂參數");
//hash String (驗證值hash = SHA256[auth+apiKey+secret+ts] 以此方式產生,secret為secret key 請洽詢我方窗口提供)
params.put(IapBiling.PARAMS_HASH, "444");
iapBiling = new IapBiling(this, params,new IRequestStatusCallback() {
@Override
public void onComplete(JSONObject data) {
Log.d("iap onComplete", data.toString());
} @Override
public void fail(JSONObject data) {
Log.d("iap fail", data.toString());
}
@Override
public void exception(JSONException e) { Log.d("iap exception", e.getMessage());
}
});
交易成功將返回如:{"ERR_CODE":"1","resultMsg":"\u5145\u503c\u6210\u529f"}
ERR_CODE不為1,將返回失敗的原因。
6. publishTapjoyADInstallAsync API:
此接口為串接Tapjoy廣告系統的服務,用於統計使用者導入安裝等相關訊息,會由平台窗口於平台後端建入專屬金鑰,以下就是API的呼叫方式
在APP起動時的第一個Activity onCreate()內進行login並取得使用者UID後,呼叫API 如下方範例圖,請務必照這順序進行
Example:可參照下方附圖,並依照你所定義的class名稱進行呼叫
InAppAD.publishTapjoyADInstallAsync(getApplicationContext());
完成呼叫後,可與我方窗口洽詢,是否成功計數
7. publishInMobiADInstallAsync API:
此接口為串接inmobi廣告系統的服務,用於統計使用者導入安裝等相關訊息,會由平台窗口於平台後端建入專屬金鑰,以下就是API的呼叫方式
在APP起動時的第一個Activity onCreate()內進行login並取得使用者UID後,呼叫API 如下方範例圖,請務必照這順序進行
Example:可參照下方附圖,並依照你所定義的class名稱進行呼叫
InAppAD.publishTapjoyADInstallAsync(getApplicationContext());
完成呼叫後,可與我方窗口洽詢,是否成功計數
8. publishFacebookADInstallAsync API:
此接口為串接Facebook廣告系統的服務,用於統計使用者導入安裝等相關訊息,會由平台窗口於平台後端建入專屬金鑰,以下就是
API的呼叫方式
在APP起動時的第一個Activity onCreate()內進行login並取得使用者UID後,呼叫API 如下方範例圖,請務必照這順序進行
Example:可參照下方附圖,並依照你所定義的class名稱進行呼叫
InAppAD.publishTapjoyADInstallAsync(getApplicationContext());
完成呼叫後,可與我方窗口洽詢,是否成功計數
9. 登陆游戏后,点击服务分区调用的接口:
此接口為您提供了我們記錄玩家入口伺服器分區資訊服務,驗證的型式為Server-to-Server (auth值驗證),以下就是API的呼叫方式
呼叫API時請帶入以下參數
apiKey String (開發商apiKey)
uid String (玩家在平台的UUID)
imei String (玩家手机全球唯一码)
ts String (時間戳記)
auth String (使用者登入auth值)
serveId Int (服務器序號,1为1服,2为2服)
hash String (驗證值hash = SHA256[auth+apiKey+secret+ts] 以此方式產生,secret為secret key 請洽詢我方窗口提供)
API將回傳您
ERR_CODE INT (錯誤碼)
ERR_MSG String (錯誤訊息)
您可以參考下列的案例,進行作業
ERR_CODE INT (錯誤碼)
ERR_MSG String (錯誤訊息)
以上若有相關問題,請連繫我們的窗口,我們將盡快為您服務
連繫窗口 : 王毅
QQ : 2541623933
Email:yi.wang@cregame.net
電話:+86 755 86607479
手机:18907580817
INAPP的更多相关文章
- SDK接入(3)之iOS内支付(In-App Purchase)接入
SDK接入(3)之iOS内支付(In-App Purchase)接入 继整理了Android平台的SDK接入过程.再来分享下iOS平台的内支付(In-App Purchase)接入,作为笔者在游戏开发 ...
- SDK接入(2)之Android Google Play内支付(in-app Billing)接入
SDK接入(2)之Android Google Play内支付(in-app Billing)接入 继上篇SDK接入(1)之Android Facebook SDK接入整理完Facebook接入流程之 ...
- iOS 开发 初级:应用内购买 In-App Purchase
http://blog.csdn.net/songrotek/article/details/8680415 现在有很多应用都使用了In-App Purchase,虽然对于很多用户来说,可能并不喜欢甚 ...
- Windows Phone中In-App Purchase应用内购买
前言 应用内购买(In-App Purchase)对于开发者来说绝对是一个非常重要的功能,它提供了一个便捷的入口供用户来购买付费.在IAP盛行之前的游戏运营商一般都是通过接入第三方支付入口 ...
- 首次发布App,In-App Purchase 无法submit for review 问题的解决方案
原地址:http://blog.csdn.net/blucenong/article/details/7819195 一个IDP首次create app 然后首次create new IAP的时候,我 ...
- 审核被拒:1. 1 Safety: Objectionable Content ;3. 1.1 Business: Payments - In-App Purchase ;4. 3 Design: Spam ;5. 1.1 Legal: Privacy - Data Collection and Storage
1. 1 Safety: Objectionable Content 有人民币符号—隐藏收费课程 3. 1.1 Business: Payments ...
- 苹果审核被拒,Guideline 1.1.6 - Safety - Objectionable Content;Guideline 3.1.1 - Business - Payments - In-App Purchase
Guideline 1.1.6 - Safety - Objectionable Content Thank you for your resubmission. We noticed that yo ...
- iOS in-app purchase详解
in-app purchase教程: http://www.appcoda.com/in-app-purchase-tutorial/ 3.后台服务器验证收据的正确性 IOS 内支付有两种模式: 1) ...
- Google In-App Billing 实现(内含Unity 实现经验)
实现内购计费 傻逼目录 Adding the AIDL file Updating Your Manifest Creating a ServiceConnection Making In-app ...
- 测试你的 In-app Billing 程序
测试你的 In-app Billing 程序 为了保证 In-app Billing 可以在你程序中正常使用,你应该在把应用程序发布到Google Play之前进行测试.早期的测试有助于确保用户对于你 ...
随机推荐
- 不同深度的图片转换cvConvertScale
不同深度图像的转换:要注意范围比如IPL_DEPTH_8U 转到 IPL_DEPTH_32U要用cvConvertScale(pImg8, pImg32, 1.0/255, 0); 要除255反过来I ...
- cookie小结(转)
原文地址:http://www.cnblogs.com/xianyulaodi/p/6476991.html#_label0 作者:咸鱼老弟 阅读目录 什么是cookie 官方定义:N ...
- charles-修改发送的接口数据测试页面样式
一.痛点: 1. 界面上数据准确性无法比对 2. 界面上几乎没有可测试数据 3. 消息条数超过99时的显示逻辑验证(难道真的要造100条新的未读消息?) 4. 更换界面图片时必须找相关接 ...
- 【LeetCode】Powerful Integers(强整数)
这道题是LeetCode里的第970道题. 题目描述: 给定两个正整数 x 和 y,如果某一整数等于 x^i + y^j,其中整数 i >= 0 且 j >= 0,那么我们认为该整数是一个 ...
- 九度oj 题目1140:八皇后
题目描述: 会下国际象棋的人都很清楚:皇后可以在横.竖.斜线上不限步数地吃掉其他棋子.如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题. 对于某个满足要求的 ...
- 九度oj 题目1139:最大子矩阵
题目描述: 已知矩阵的大小定义为矩阵中所有元素的和.给定一个矩阵,你的任务是找到最大的非空(大小至少是1 * 1)子矩阵. 比如,如下4 * 4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 ...
- 九度oj 题目1209:最小邮票数
题目描述: 有若干张邮票,要求从中选取最少的邮票张数凑成一个给定的总值. 如,有1分,3分,3分,3分,4分五张邮票,要求凑成10分,则使用3张邮票:3分.3分.4分即可. 输入: 有多组数据, ...
- 【Android】监听viewpager子页面里面的Button按钮
最近做项目遇到Viewpager+Fragment滑动页面,要监听子页面中的按钮,在网上查了些解决办法: 办法一: 这种方法是在适配器初始化中进行监听,有人亲测通过,但是我继承FragmentPage ...
- iOS长按控件
前言 网上看到一个button的长按控件效果不错,一个菱形从中间向两边增大,研究了下 原理 上图红色是控件上面放了视图,从上到下分别是view,normalLable,highlightLabel,b ...
- WMAP 启动报错 PHP- 提示缺少 msvcr110.dll 的问题
问题描述: 启动 php-cgi 时如果提示缺少 msvcr110.dll 问题原因: 缺少 vc++ 2012 运行库 问题解决: 需要安装 vcredist_x64.exe 或 vcre ...