友盟实现普通更新和强制更新

#1 继承友盟更新的SDK,加入jar包和其他res文件

#2 按文档配置AndroidManifest.xml文件

#3 在应用的入口判断是非更新或强制更新(VersionCode增加就要更新,VersionName包含f就强制更新)
在onCreate方法中调入以下方法实现静默下载,然后提示更新。
    
/**
  * 是否强制更新
  */
 private void initUmengUpdate() {
  UmengUpdateAgent.setDefault();
  UmengUpdateAgent.setUpdateOnlyWifi(true);
  UmengUpdateAgent.setRichNotification(false);
  UmengUpdateAgent.setUpdateAutoPopup(false);
  UmengUpdateAgent.silentUpdate(mContext);
  UmengUpdateAgent.setUpdateListener(new UmengUpdateListener() {

   @Override
   public void onUpdateReturned(int status, UpdateResponse response) {
    switch (status) {
    case UpdateStatus.Yes:
     upData(status, response);
     break;

    }
   }

   private void upData(int status,final UpdateResponse response) {
    final String versionName = response.version;
    final boolean ignore = UmengUpdateAgent.isIgnore(mContext, response);
    File file = UmengUpdateAgent.downloadedFile(mContext, response);
    if(file == null){
     UmengUpdateAgent.startDownload(mContext, response);
     UmengUpdateAgent.setDownloadListener(new UmengDownloadListener() {

      @Override
      public void OnDownloadUpdate(int arg0) {
      }

      @Override
      public void OnDownloadStart() {
      }

      @Override
      public void OnDownloadEnd(int arg0, String arg1) {
       if(versionName.contains("f")||!ignore){
        UmengUpdateAgent.showUpdateDialog(mContext, response);
       }
      }
     });
    }else{
     if(versionName.contains("f")||!ignore){
      UmengUpdateAgent.showUpdateDialog(mContext, response);
     }
    }
    UmengUpdateAgent.setDialogListener(new UmengDialogButtonListener() {
     
     @Override
     public void onClick(int status) {
       switch (status) {
             case UpdateStatus.Update:
                 break;
             case UpdateStatus.NotNow:
                 if(versionName.contains("f")){
                  //友盟统计
                  MobclickAgent.onKillProcess(mContext);
                  System.exit(0);
                 }else{
                  UmengUpdateAgent.ignoreUpdate(mContext, response);
                 }
                 break;
             }
     }
    });
   }
  });

 
 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值