自定义配置文件,适配渠道更新

  • 1.多个自动升级sdk的时候
    比如想把包放入360和百度的时候,呵呵,大家都懂的,360是最近才开始必须接入他的升级sdk才能上架的。这里就不吐槽了,公司要求要去上架这些应用商城。
    打一次包就能搞定这些接入问题,因为我一开始接入的是友盟自动升级,需求的增加就越来越多,ok开始配置:
    先来做个假设:假设上面的abc包是360升级的,wandoujia是友盟升级的,baiduyun是百度升级的
    定义一个名字为AUTO_TYPE的String类型常量 默认值为umeng放在defaultConfig里面

    defaultConfig {
        buildConfigField "String", "AUTO_TYPE", "umeng"
    }

    2.然后配置渠道包

    productFlavors {
          abc {
              manifestPlaceholders = [UMENG_CHANNEL_VALUE: "abc"]
              buildConfigField "String", "AUTO_TYPE", "360"
          }
      wandoujia {
             manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]
             buildConfigField "String", "AUTO_TYPE", "umeng"
        }
         baiduyun {
              manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baiduyun"]
              buildConfigField "String", "AUTO_TYPE", "baiduyun"
          }
    
      }

    next

    Build->Clean Project
    Build->Rebuild Project


生成了我们想要的文件,就可以运用了

if (ConstantField.AUTO_TYPE_BAIDU.equals(BuildConfig.AUTO_TYPE)){    
          BDAutoUpdateSDK.silenceUpdateAction(this);//百度静默更新    
          L.e(TAG,"baidu更新");
    }else if(ConstantField.AUTO_TYPE_360.equals(BuildConfig.AUTO_TYPE)){    
          UpdateManager.checkUpdate(this);    
          L.e(TAG,"360更新");
    }else{    
          UmengUpdateAgent.update(this);    
          L.e(TAG,"umeng更新");
}

添加是否打印log这个就无需再说了吧,方法类似,把string改成boolean即可
放两个所学习到的文章

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值