码迷,mamicode.com
首页 > 其他好文 > 详细

多个SDK控制管理

时间:2018-05-11 20:23:13      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:文件的   需求   style   sum   bubuko   idt   方法   info   override   

需求:制作一个公共组件,可以实现多个SDK想用哪个用哪个,集中管理

组织方式:

技术分享图片

架构形式

技术分享图片

实现步骤:

1.Centralization是中央类,所有的sdk都要通过这个类来调
2.新增sdk的话,新建一个文件夹,在里面写代码
3.如果有绑定生命周期,实现IGameCenter接口,且在Centralization里添加
例:

@Override
    public void onResume() {
        Log.d(TAG, "CentralizationImpl--onResume");
        gameCenter.onResume();
        o7Impl.onResume();
        新sdk.onResume();
    }

4.新增sdk实现类要增加如下

    public static final String 变量名 = "键的值";
    private boolean canSdkUsed;

其中键的值和主工程配置文件SdkConfig.properties里要一致,用于管理sdk是否可用

    O7Sdk=false
    gameCenterSdk=false
    键的值=true

并在构造函数里取配置文件的值

     String key = SdkConfig.getInstance().getKey(变量名);
      canSdkUsed = TextUtils.isEmpty(key) ? false : (key.equals("false") ? false : true);
      Log.d(TAG, "GameCenterImpl--canSdkUsed:" + canSdkUsed);

然后每个方法前面都要添加

        if (!canSdkUsed) {
            return;
        }

如果有更好的方案,欢迎留言 

多个SDK控制管理

标签:文件的   需求   style   sum   bubuko   idt   方法   info   override   

原文地址:https://www.cnblogs.com/anni-qianqian/p/9025627.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!