你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> TYPESDK手游聚合SDK客戶端設計思緒與架構之二:安卓平台一致化接口構造及思緒

TYPESDK手游聚合SDK客戶端設計思緒與架構之二:安卓平台一致化接口構造及思緒

編輯:IOS開發綜合

在上一篇《TypeSDK聚合sdk設計根本准繩》中我們提到了,設計聚合sdk需求設計開發平台局部的接口,以及設計發布平台的聚合這2個大模塊。那麼我們明天就先來講講發布平台之一:安卓平台的一致化接口構造和思緒。

一、相關的需求

安卓平台的一致化接口,我們需求思索到詳細以下的幾點:

1.對外需求有一致的接口,保證不同的渠道sdk 對同一個游戲來說,是調用相反的接口,傳遞相反的參數

2.對內需求有一套擴展性很好的框架,可以應對不同渠道的sdk差別性

二、設計的模塊

那麼針對這些思索點,安卓平台的一致化接口,我們將次要分紅以下幾個局部來設計:

1.根底架構設計

2.詳細渠道完成類

3.一致化對外平台接口

4.跨平台交互的設計

三、詳細的細節

1.一致化的根底架構
TYPESDK手游聚合SDK客戶端設計思路與架構之二:安卓平台統一化接口結構及思路

針對一致化的根底架構,我們次要設計了以下的一個主體框架

我們次要完成了這麼一套構造

1.我們創立通用的根底籠統類(BaseActivity)。

該類中,包括了一切sdk都有,但是完成不同的接口,這些接口作為籠統函數,要求每個渠道的詳細完成類都去完成。

1.1 初始化接口:void init()

1.2 登錄接口: void login()

1.3 登出接口:void logout()
1.4 領取接口:string pay(string _json_string)

1.5 提交玩家數據:void updatePlayerInfo( string _json_string)

1.6顯示用戶中心: void showPlayerCenter()

1.7 大退游戲(殺進程):void exit game();

1.8 顯示分享 void showShare(string _json_string)

還需求通用的籠統接口,用作sdk框架的拓展

1.9 依據函數名,調器具體完成類中的函數:

string DoAnyFunction(string _function_name,string _json_string)

我們還包括了通用固定完成的接口,用作sdk框架的補充

1.10.獲取本地渠道的配置:string getPlatfromInfo()

1.11.獲取緩存在安卓層的用戶信息:string getUserInfo()

2.我們依據每一個渠道的sdk不同,獨自創立每個渠道自己的完成類Bonjour_xx。

2.1 這個類承繼通用的框架基類(BaseActivity)。

2.2 在該框架下,完成基類一切的籠統接口。假如沒有該接口的功用,也需求做出相應的處置,例如輸入log日志。

2.3 同時該類可以添加渠道自有的特殊接口(例如獲取好友列表)

3.發布平台有一個一致的給內部調用接口完成的類:mainActivity

3.1.mainActivity給unity調用時,需求承繼UnityPlayerActivity。在給cocos2dx調用時,需求承繼Cocos2dxActivity。我們的次要目的是給游戲的開發平台調用,就是說,游戲開發平台是哪個,那我們就需求寫這麼一個給其調用的mainActivity。

3.2 mainActivity中需求一致化對外的接口名字,並且在每個接口中,運用 bonjour_xx的實例對象,來完成詳細接口的業務邏輯

3.2 mainActivity中需求可以讓開發平台(unity/cocos2dx)需求運用 bonjour_xx來調用基類的通用拓展的函數

4.跨平台交互局部

跨平台交互我們需求思索兩個方面

a.如何將從發布平台調用開發平台函數

b.如何將從開發平台調用發布平台函數

1.在安卓層,我們只需求將需求給到unity調用的函數,寫在之前提到過的mainactivty中,在unity中,可以直接經過函數名來調用mainactivity的函數

2.在unity層,提供了我們通用的跨平台調用接口

void UnitySendMessage(string beheaver_name, string function_name, string json_string );

我們只需求知道unity局部用來接納音訊的腳本名字,需求執行的腳本函數名,以及傳遞的參數,就可以調用unity的呼應函數了。

綜上安卓向unity平台傳遞數據和調用函數,次要經過音訊機制發送音訊

unity向安卓平台傳遞參數和調用函數,則經過函數名,用反射來調用mainActivity裡的接口。

以上就是我們安卓發布平台的聚合sdk設計思緒細節,下一章我們將講述IOS聚合sdk的設計思緒細節。

這個項目已開源,大家有興味可以自己研討或許參照項目編寫自己的聚合SDK
項目地址:https://code.csdn.net/typesdk_code
項目地址:https://github.com/typesdk

【TYPESDK手游聚合SDK客戶端設計思緒與架構之二:安卓平台一致化接口構造及思緒】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved