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":"u5145u503cu6210u529f"} 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