創建Plugin目錄
第一步,在plugin/plugins下,目錄需要嚴格按照如下規范實現:
plugin/plugins/alipay/proj.android
/proj.ios
因為publish工具是按照這種格式的目錄做操作的。
Android平台
能封裝的基本都封裝好了,需要做的就是創建一個Plugin工程,然后實現對應的Interface接口。
- 在Eclipse中導入
plugin\protocols\proj.android
工程。 -
創建Library工程,並依賴於libPluginProtocol。
創建Libary工程的具體步驟如下(可略過,但需要注意包名、類名的格式),以QQWeibo為例:
-
New –> Android Application Project
Application Name,Project Name為:libPluginQQWeibo,格式為
libPlugin{XXX}
; Package Name為:org.cocos2dx.libSocialQQWeibo,格式為org.cocos2dx.lib{Plugin類型}{Plugin標識}。 -
SDK 都選API 8,Theme:None。Next。
- Mark this project as a library勾選,其余勾選都去掉。Location手動選擇剛剛創建的Plugin proj.android目錄。Finish。
-
-
實現Plugin,增加一些必要文件:
-
build.xml,直接從其它Plugin工程中復制,這是用來做Ant輸出的編譯配置。需要修改project name,如:
<project name="libPluginQQWeibo" default="plugin-publish">
- ForManifest.xml,用來自動修改目標工程的Manifest.xml文件的,里面填寫當前Plugin需要的xml修改內容,比如:權限、Activity聲明,等等。直接復制后修改,參考自帶Plugin中的格式。
- sdk目錄,把第三方SDK的.jar文件放入。
- ForAssets、DependProject用途參考自帶Plugin。
-
-
實現Interface
-
必須創建一個實現Interface的java類,這個類中封裝SDK的功能,要求如下:
右擊src目錄,New –> Package,Name:org.cocos2dx.plugin,不要有變化。 在這個Package下創建Java類文件,SocialQQWeibo,格式為{Plugin類型}{Plugin標識}。SuperClass空,Interface選擇一個Plugin Interface類型,這里是InterfaceSocial。
-
這個類一定要提供一個以 Context 為參數的構造函數,如下:
public AnalyticsFlurry(Context context) { mContext = context; }
-
其余就是Interface的實現了,按第3方SDK文檔實現即可,任意發揮。
-
-
修改plugin/tools/config.sh,加入新的plugin目錄名到ALL_PLUGINS變量,這樣腳本會自動輸出新增的plugin。
iOS平台暫時不看
總結
一系列處理看似麻煩,但非常有意義,不多說。