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的更多相关文章

  1. SDK接入(3)之iOS内支付(In-App Purchase)接入

    SDK接入(3)之iOS内支付(In-App Purchase)接入 继整理了Android平台的SDK接入过程.再来分享下iOS平台的内支付(In-App Purchase)接入,作为笔者在游戏开发 ...

  2. SDK接入(2)之Android Google Play内支付(in-app Billing)接入

    SDK接入(2)之Android Google Play内支付(in-app Billing)接入 继上篇SDK接入(1)之Android Facebook SDK接入整理完Facebook接入流程之 ...

  3. iOS 开发 初级:应用内购买 In-App Purchase

    http://blog.csdn.net/songrotek/article/details/8680415 现在有很多应用都使用了In-App Purchase,虽然对于很多用户来说,可能并不喜欢甚 ...

  4. Windows Phone中In-App Purchase应用内购买

    前言       应用内购买(In-App Purchase)对于开发者来说绝对是一个非常重要的功能,它提供了一个便捷的入口供用户来购买付费.在IAP盛行之前的游戏运营商一般都是通过接入第三方支付入口 ...

  5. 首次发布App,In-App Purchase 无法submit for review 问题的解决方案

    原地址:http://blog.csdn.net/blucenong/article/details/7819195 一个IDP首次create app 然后首次create new IAP的时候,我 ...

  6. 审核被拒: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 ...

  7. 苹果审核被拒,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 ...

  8. iOS in-app purchase详解

    in-app purchase教程: http://www.appcoda.com/in-app-purchase-tutorial/ 3.后台服务器验证收据的正确性 IOS 内支付有两种模式: 1) ...

  9. Google In-App Billing 实现(内含Unity 实现经验)

    实现内购计费 傻逼目录   Adding the AIDL file Updating Your Manifest Creating a ServiceConnection Making In-app ...

  10. 测试你的 In-app Billing 程序

    测试你的 In-app Billing 程序 为了保证 In-app Billing 可以在你程序中正常使用,你应该在把应用程序发布到Google Play之前进行测试.早期的测试有助于确保用户对于你 ...

随机推荐

  1. CodeForces:699B-One Bomb

    B. One Bomb time limit per test1 second memory limit per test256 megabytes Problem Description You a ...

  2. Android开发——Activity启动模式详解

    1. Activity的启动模式 本文原创,转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52054893 1.1 Standard标 ...

  3. 03007_HttpServlet

    1.创建 new---Servlet package com.gzdlh.servlet; import java.io.IOException; import javax.servlet.Servl ...

  4. 小白用shiro(2)

    本文来自网易云社区 作者:王飞 以上的配置走完以后就可以用,下面讲讲个人需求,以及踩过的坑: 1.如何修改cookie的名称,默认名称"rememberMe"太丑了有木有? 首先丢 ...

  5. AbstractFactory(抽象工厂模式)

    AbstractFactory(抽象工厂模式) 有些情况下我们需要根据不同的选择逻辑提供不同的构造工厂,而对于多个工厂而言需要一个统一的抽象 <?php class Config { publi ...

  6. 【LeetCode】Pancake Sorting(煎饼排序)

    这道题是LeetCode里的第969道题. 题目要求: 给定数组 A,我们可以对其进行煎饼翻转:我们选择一些正整数 k <= A.length,然后反转 A 的前 k 个元素的顺序.我们要执行零 ...

  7. 九度oj 1547

    题目描述: 给定一个初始为空的栈,和n个操作组成的操作序列,每个操作只可能是出栈或者入栈. 要求在操作序列的执行过程中不会出现非法的操作,即不会在空栈时执行出栈操作,同时保证当操作序列完成后,栈恰好为 ...

  8. [luoguP2862] [USACO06JAN]把牛Corral the Cows(二分 + 乱搞)

    传送门 可以二分边长 然后另开两个数组,把x从小到大排序,把y从小到大排序 枚举x,可以得到正方形的长 枚举y,看看从这个y开始,往上能够到达多少个点,可以用类似队列来搞 其实发现算法的本质之后,x可 ...

  9. Spoj-BLMIRINA Archery Training

    Mirana is an archer with superpower. Every arrow she shoots will get stronger the further it travels ...

  10. java 数据库连接的几个步骤

    Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@你的主 ...