Cocos2d-x PluginX (二)增加新的Plugin


創建Plugin目錄

第一步,在plugin/plugins下,目錄需要嚴格按照如下規范實現:

plugin/plugins/alipay/proj.android
                     /proj.ios

因為publish工具是按照這種格式的目錄做操作的。

Android平台

能封裝的基本都封裝好了,需要做的就是創建一個Plugin工程,然后實現對應的Interface接口。

  1. 在Eclipse中導入plugin\protocols\proj.android工程。
  2. 創建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。
  3. 實現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。
  4. 實現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文檔實現即可,任意發揮。

  5. 修改plugin/tools/config.sh,加入新的plugin目錄名到ALL_PLUGINS變量,這樣腳本會自動輸出新增的plugin。

iOS平台暫時不看

總結

一系列處理看似麻煩,但非常有意義,不多說。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM