Explorar o código

修复下载状态不正确的问题

zengjiebin %!s(int64=7) %!d(string=hai) anos
pai
achega
ee6f8929e9

+ 4 - 0
app/src/main/java/com/kfzs/duanduan/services/DownloadTaskService.java

@@ -69,6 +69,10 @@ public class DownloadTaskService {
      * The download task was deleted
      */
     public static final int STATUS_DELETE = 0X5;
+    /**
+     * The download task was deleted
+     */
+    public static final int STATUS_INSTALLED = 0X6;
 
     private Context ctx;
 

+ 15 - 25
app/src/main/java/com/sheep/gamegroup/model/util/SheepSubscriber.java

@@ -1,6 +1,7 @@
 package com.sheep.gamegroup.model.util;
 
 import android.content.Context;
+import android.text.TextUtils;
 import android.util.Log;
 import android.widget.Toast;
 
@@ -51,43 +52,31 @@ public abstract class SheepSubscriber<T> extends Subscriber<T> {
     @Override
     public void onError(Throwable e) {
         Log.e("tag","MySubscriber.throwable ="+e.toString());
-//        Log.e("tag","MySubscriber.throwable ="+e.getMessage());
-
         try{
             if(e instanceof Exception){
                 //访问获得对应的Exception
                 ExceptionHandle.ResponeThrowable throwable = ExceptionHandle.handleException(e);
-                /**
-                 * token 过期
-                 */
+                //token 过期
                 if(throwable.code == 401){
                     Jump2View.getInstance().gotoLoginAgain();
                     return;
                 }
 
-                BaseMessage baseMessage;
-                if(throwable.message.startsWith("{")){
+                BaseMessage baseMessage = null;
+                if(throwable.message.startsWith("{")){//json
                     baseMessage = JSONObject.parseObject(throwable.message, BaseMessage.class);
-                }else if(ViewUtil.isH5Content(throwable.message)){
-//                    if(BuildConfig.DEBUG){
-//                        StringBuilder title = new StringBuilder("调用接口错误");
-//                        if(e instanceof HttpException) {
-//                            title.append(";");
-//                            title.append(((HttpException) e).response().toString());
-//                        }
-//                        Jump2View.getInstance().goNotice(ActivityManager.getInstance().currentActivity(), title.toString(), throwable.message, 0);
-//                    }
-                    baseMessage = new BaseMessage();
-                    baseMessage.setMsg(SheepApp.getInstance().getString(R.string.unknown_error));
-                }else {
+                }else if(ViewUtil.isH5Content(throwable.message)){//html error
+                }else {//尝试解密
                     try {
                         baseMessage = JSONObject.parseObject(BaseMessageConverter.decrypt(throwable.message), BaseMessage.class);
                     } catch (Exception ignore) {
-                        baseMessage = new BaseMessage();
-                        baseMessage.setMsg(throwable.message);
                     }
                 }
-
+                if(baseMessage == null){
+                    baseMessage = new BaseMessage();
+                    baseMessage.setMsg(throwable.message);
+                }
+                //未绑定手机号
                 if(throwable.code == 302 && baseMessage.getCode() == 30001){
                     Jump2View.getInstance().goBindPhone(SheepApp.mContext,baseMessage.getCode());
                     return;
@@ -97,15 +86,16 @@ public abstract class SheepSubscriber<T> extends Subscriber<T> {
                     baseMessage.setCode(throwable.code);
                 onError(baseMessage);
             }else {
-                //将Throwable 和 未知错误的status code返回
-                onError(new ExceptionHandle.ResponeThrowable(e,ExceptionHandle.ERROR.UNKNOWN));
+                BaseMessage baseMessage = new BaseMessage();
+                baseMessage.setMsg(e.getMessage());
+                baseMessage.setCode(ExceptionHandle.ERROR.UNKNOWN);
+                onError(baseMessage);
             }
         }catch (Exception er){
             BaseMessage baseMessage = new BaseMessage();
             baseMessage.setMsg(er.getMessage());
             baseMessage.setCode(ExceptionHandle.ERROR.UNKNOWN);
             onError(baseMessage);
-            er.printStackTrace();
         }
     }
 

+ 44 - 70
app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java

@@ -69,6 +69,7 @@ import butterknife.BindView;
 import butterknife.ButterKnife;
 import butterknife.OnClick;
 import rx.android.schedulers.AndroidSchedulers;
+import rx.functions.Action1;
 import rx.schedulers.Schedulers;
 
 import static com.sheep.jiuyan.samllsheep.utils.ClassFileHelper.DIR;
@@ -98,8 +99,7 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     private List<TaskState> stateList = new ArrayList<>();//状态列表
     private TaskStateAdapter stateAdapter;
 
-    private int type;//0,领取任务 1,开始试玩 2,开始下载 3,开始安装;4,信用卡跳转
-    private boolean isDownLoad = false;//是否下载
+    private int type = -1;//0,领取任务 1,开始试玩 2,开始下载 3,开始安装;4,信用卡跳转
     private String buttonStr = CommonUtil.GET_TASK;
     private Activity activity;
 
@@ -107,7 +107,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
      * 下载模块修改
      */
     private DownloadTaskService mDownloadTaskService;
-    DownLoadInfo downLoadInfo;
 
     @Inject
     TaskDialogPresenter preference;
@@ -128,7 +127,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
         initDatas();
         Aria.download(this).register();
         mDownloadTaskService = new DownloadTaskService(this);
-        downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(taskEty);
     }
 
     private void initDatas() {
@@ -139,7 +137,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                 .into(dialogItemIconIv);
         dialogItemNameTv.setText(taskEty.getName());
         dialogItemSizeTv.setText( taskEty.getPackage_size() + "M");
-        isDownLoad = PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names());
 
         preference.getTaskState(taskEty.getRelease_task_id());
 
@@ -199,19 +196,9 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
      */
     private void startStask() {
         DownloadTarget task = null;
-        //Todo 暂时判断信用卡,也许以后会增加其他类型,服务器传过来
-        if(taskEty.needDownloadApp()){
-            if(TextUtils.isEmpty(taskEty.getDownload_link()) || !taskEty.getDownload_link().contains("http")){
-                G.showToast(R.string.error_download_link);
-                return;
-            }
-            task = Aria.download(this).load(taskEty.getDownload_link());
-        }
-
-        String filePath = DIR+ File.separator+taskEty.getPackage_names()+ ClassFileHelper.FILE_SUFFIX;
         try{
             switch (type){
-                case 0://领取任务
+                case -1://领取任务
                     if(taskEty.getAcceptedTaskId() < 1){//没有正在进行的任务
                         acceptedTask();
                     } else {//先取消正在进行的任务
@@ -225,10 +212,18 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
 
                     }
                     break;
-                case 1://开始试玩
+                case DownloadTaskService.STATUS_INSTALLED://开始试玩
                     toTestPlay();
                     break;
-                case 2://开始下载
+                case DownloadTaskService.STATUS_INIT://开始下载
+                    if(taskEty.needDownloadApp()){
+                        if(TextUtils.isEmpty(taskEty.getDownload_link()) || !taskEty.getDownload_link().contains("http")){
+                            G.showToast(R.string.error_download_link);
+                            return;
+                        }
+                        task = Aria.download(this).load(taskEty.getDownload_link());
+                    }
+                    final DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(taskEty);
                     if(task != null) {
                         if (task.getTaskState() == IEntity.STATE_RUNNING) {
                             task.stop();
@@ -236,8 +231,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                             task.cancel(true);
                             task.removeRecord();
                         } else {
-//                        task.setFilePath(filePath);
-//                        task.start();
                             mDownloadTaskService.start(downLoadInfo);
                         }
                         new Thread(new Runnable() {
@@ -252,27 +245,33 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                     }
                     UMConfigUtils.onEvent(UMConfigUtils.Event.TASK_DOWNLOAD);
                     break;
-                case 3://开始安装
-                    isDownLoad = PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names());
-                    if(isDownLoad){
+                case DownloadTaskService.STATUS_FINISH://开始安装
+                    final DownLoadInfo downLoadInfo1 = mDownloadTaskService.getDownloadTaskByUrl(taskEty);
+                    boolean isInstalled = PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names());
+                    if(isInstalled){
                         if(taskEty.getTask_type() != 3){
                             start_task_tv.setText(CommonUtil.OPEN_APPLY);
                         }else {
                             start_task_tv.setText(CommonUtil.START_PLAY);
                         }
-                        type = 1;
+                        type = DownloadTaskService.STATUS_INSTALLED;
                         toTestPlay();
                         return;
-                    }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(activity, taskEty.getPackage_names(), ""))){
-                        ApkUtils.installApk(activity, filePath);
+                    }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(taskEty.getPackage_names()))){
+                        ApkUtils.installApk(activity, PackageUtil.isExistsFile(taskEty.getPackage_names()));
                     }else{
+                        if(taskEty.needDownloadApp()){
+                            if(TextUtils.isEmpty(taskEty.getDownload_link()) || !taskEty.getDownload_link().contains("http")){
+                                G.showToast(R.string.error_download_link);
+                                return;
+                            }
+                            task = Aria.download(this).load(taskEty.getDownload_link());
+                        }
                         if(task != null) {
                             task.cancel(true);
                             task.removeRecord();
-//                        task.setFilePath(filePath);
-//                        task.start();
-                            mDownloadTaskService.start(downLoadInfo);
-                            type = 2;
+                            mDownloadTaskService.start(downLoadInfo1);
+                            type = DownloadTaskService.STATUS_INIT;
                         }
                     }
                     break;
@@ -316,10 +315,10 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
      * 按钮状态
      */
     private void setBtnState(){
-        type = 0;
+        type = -1;
         if(taskEty.getRunTask() == 0){//领取任务
             buttonStr = CommonUtil.GET_TASK;
-            type = 0;
+            type = -1;
         }else if(taskEty.getTask_type() == 2){//信用卡业务
             type = 4;
             buttonStr = CommonUtil.START_TASK;
@@ -328,45 +327,20 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
             type = 10;
             buttonStr = CommonUtil.START_TASK;
             dialogItemSizeTv.setVisibility(View.INVISIBLE);
-        }
-        else{
-            //Todo 以后整理,现在加了个type=3
-            if(isDownLoad && taskEty.getTask_type() != 3){
-                buttonStr = CommonUtil.START_PLAY;;
-                type = 1;
-            } else {
-                type = 2;
-                DownloadTarget task = Aria.download(this).load(taskEty.getDownload_link());
-                int taskState = task.getTaskState();
-                switch (taskState){
-                    case IEntity.STATE_RUNNING:
-                        buttonStr = task.getPercent() +"%";
-                        break;
-                    case IEntity.STATE_STOP:
-                        buttonStr = CommonUtil.CONTINUE_DOWNLOAD;
-                        break;
-                    case IEntity.STATE_COMPLETE:
-                        isDownLoad = PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names());
-                        if(isDownLoad){
-                            buttonStr = CommonUtil.START_PLAY;
-                            type = 1;
-                        }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(activity, taskEty.getPackage_names(), ""))){
-                            buttonStr = CommonUtil.START_INSTALL;
-                            type = 3;
-                        }else{
-                            task.cancel(true);
-                            task.removeRecord();
-                            buttonStr = CommonUtil.START_DOWNLOAD;
-                        }
-                        break;
-                    case IEntity.STATE_FAIL:
-                        buttonStr = CommonUtil.FAIL_DOWNLOAD;
-                        break;
-                    default:
-                        buttonStr = CommonUtil.START_DOWNLOAD;
-                        break;
+        }else{
+            TaskDetailAct.setBtnStr(taskEty, mDownloadTaskService, new Action1<Object>() {
+                @Override
+                public void call(Object o) {
+                    if(o instanceof Integer){
+                        type = (int) o;
+                    } else if( o instanceof String){
+                        start_task_tv.setText((String) o);
+                    } else if( o instanceof Boolean){
+                        start_task_tv.setEnabled((Boolean) o);
+                    }
                 }
-            }
+            });
+            return;
         }
         start_task_tv.setText(buttonStr);
     }

+ 56 - 66
app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailAct.java

@@ -78,6 +78,7 @@ import butterknife.BindView;
 import butterknife.ButterKnife;
 import butterknife.OnClick;
 import rx.android.schedulers.AndroidSchedulers;
+import rx.functions.Action1;
 import rx.schedulers.Schedulers;
 
 import static com.sheep.jiuyan.samllsheep.utils.ClassFileHelper.DIR;
@@ -128,7 +129,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
     private int taskId = -1;
 
     private int type;//-1:开始任务 1:下载 2:安装 3:打开  10:打开H5
-    private boolean isDownLoad = false;//是否下载
 
     private boolean isFromTaskList = false;//是否是从任务记录界面过来
 
@@ -195,7 +195,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
             taskChildList.addAll(taskEty.getChild());
         }
 
-        downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(taskEty);
         webText.setWebChromeClient(new WebChromeClient() {
 
         });
@@ -254,7 +253,18 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
             default:
                 if (taskReleaseEty.isIs_running()) {
 
-                    setBtnStr(taskEty.getTask_type());
+                    setBtnStr(taskEty, mDownloadTaskService, new Action1<Object>(){
+                        @Override
+                        public void call(Object o) {
+                            if(o instanceof Integer){
+                                type = (int) o;
+                            } else if( o instanceof String){
+                                btnTaskItem.setText((String) o);
+                            } else if( o instanceof Boolean){
+                                btnTaskItem.setEnabled((Boolean) o);
+                            }
+                        }
+                    });
                 } else {
                     type = -1;
                     btnTaskItem.setText("领取任务");
@@ -281,11 +291,9 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
         if(taskEty.getInspect_type() == 3){//应用自动审核任务
             btnUpImag.setText("领取奖励");
         }
-        if (type >= 3) {
-
+        if (type == DownloadTaskService.STATUS_INSTALLED) {
             btnUpImag.setVisibility(View.VISIBLE);
         } else {
-
             btnUpImag.setVisibility(View.GONE);
         }
 
@@ -351,68 +359,52 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
         }
     }
 
-    private void setBtnStr(int taskType) {
-        isDownLoad = PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names());
-        if (taskEty.getDownload_link() == null || !taskEty.getDownload_link().startsWith("http")) {
-            G.showToast(R.string.error_download_link);
-            return;
-        }
-        DownloadTarget task = Aria.download(this).load(taskEty.getDownload_link());
-        int taskState = task.getTaskState();
-        String buttonStr = "";
-        if (isDownLoad) {
-            type = 3;
-            if (taskType != 3) {
+    public static void setBtnStr(TaskEty taskEty, DownloadTaskService mDownloadTaskService, Action1<Object> action1) {
+        boolean isInstalled = PackageUtil.isAppInstalled(SheepApp.getInstance(), taskEty.getPackage_names());
+        boolean isExistApk = !TextUtils.isEmpty(PackageUtil.isExistsFile(taskEty.getPackage_names()));
+        String buttonStr;
+        action1.call(true);
+        if (isInstalled) {
+            action1.call(DownloadTaskService.STATUS_INSTALLED);
+            if (taskEty.getTask_type() != 3) {
                 buttonStr = CommonUtil.START_PLAY;
-
             } else {//应用
                 buttonStr = CommonUtil.OPEN_APPLY;
-
             }
         } else {
-            switch (taskState) {
-                case IEntity.STATE_RUNNING:
-                    type = 1;
-                    buttonStr = Math.abs(task.getPercent()) + "%";
-                    break;
-                case IEntity.STATE_STOP:
-                    type = 1;
-                    buttonStr = CommonUtil.CONTINUE_DOWNLOAD;
-                    break;
-                case IEntity.STATE_COMPLETE:
-                    if (PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names())) {
-                        type = 3;
-                        if (taskType != 3) {
-                            buttonStr = CommonUtil.START_PLAY;
-
-                        } else {//应用
-                            buttonStr = CommonUtil.OPEN_APPLY;
-
+            action1.call(DownloadTaskService.STATUS_INIT);
+            if (taskEty.getDownload_link() == null || !taskEty.getDownload_link().startsWith("http")) {
+                buttonStr = SheepApp.getInstance().getResources().getString(R.string.error_download_link);
+                action1.call(false);
+            } else {
+                DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(taskEty);
+                Integer mStatus = downLoadInfo.getMStatus();
+                int taskState = mStatus == null ? 0 : mStatus;
+                switch (taskState) {
+                    case DownloadTaskService.STATUS_ING:
+                        buttonStr = Math.abs(downLoadInfo.getMPercent()) + "%";
+                        break;
+                    case DownloadTaskService.STATUS_PAUSE:
+                        buttonStr = CommonUtil.CONTINUE_DOWNLOAD;
+                        break;
+                    case DownloadTaskService.STATUS_FINISH:
+                        if(isExistApk){
+                            action1.call(DownloadTaskService.STATUS_FINISH);
+                            buttonStr = CommonUtil.START_INSTALL;
+                        } else {
+                            buttonStr = CommonUtil.START_DOWNLOAD;
                         }
-                    } else if (!TextUtils.isEmpty(PackageUtil.isExistsFile(activity, taskEty.getPackage_names(), ""))) {
-                        type = 2;
-                        btnTaskItem.setText("开始安装");
-                        buttonStr = CommonUtil.START_INSTALL;
-                    } else {
-                        type = 1;
-                        task.cancel(true);
-                        task.removeRecord();
+                        break;
+                    case DownloadTaskService.STATUS_FAIL:
+                        buttonStr = CommonUtil.FAIL_DOWNLOAD;
+                        break;
+                    default:
                         buttonStr = CommonUtil.START_DOWNLOAD;
-
-                    }
-                    break;
-                case IEntity.STATE_FAIL:
-                    type = 1;
-                    buttonStr = CommonUtil.FAIL_DOWNLOAD;
-                    break;
-                default:
-                    type = 1;
-                    buttonStr = CommonUtil.START_DOWNLOAD;
-                    break;
+                        break;
+                }
             }
-
         }
-        btnTaskItem.setText(buttonStr + "");
+        action1.call(buttonStr);
     }
 
     @Override
@@ -426,7 +418,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
      * 下载模块修改
      */
     private DownloadTaskService mDownloadTaskService;
-    DownLoadInfo downLoadInfo;
 
     @OnClick({R.id.detail_task_tv, R.id.web_text, R.id.ll_infos, R.id.btn_task_item, R.id.btn_up_imag})
     public void onViewClicked(View view) {
@@ -457,7 +448,7 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
                                 acceptedTask();
                             }
                             break;
-                        case 1://开始下载
+                        case DownloadTaskService.STATUS_INIT://开始下载
 
                             DownloadTarget task = null;
                             if (TextUtils.isEmpty(taskReleaseEty.getTask().getDownload_link()) || !taskReleaseEty.getTask().getDownload_link().contains("http")) {
@@ -465,8 +456,7 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
                                 return;
                             }
                             task = Aria.download(this).load(taskReleaseEty.getTask().getDownload_link());
-
-                            String filePath = DIR + File.separator + taskReleaseEty.getTask().getPackage_names() + ClassFileHelper.FILE_SUFFIX;
+                            final DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(taskEty);
                             if (task.getTaskState() == IEntity.STATE_RUNNING) {
                                 task.stop();
                             } else if (task.getTaskState() == IEntity.STATE_FAIL) {
@@ -488,10 +478,10 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
                             }).start();
                             UMConfigUtils.onEvent(UMConfigUtils.Event.TASK_DOWNLOAD);
                             break;
-                        case 2:
-                            ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(activity, taskEty.getPackage_names(), ""));
+                        case DownloadTaskService.STATUS_FINISH:
+                            ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(taskEty.getPackage_names()));
                             break;
-                        case 3:
+                        case DownloadTaskService.STATUS_INSTALLED:
                             PackageUtil.startApp(SheepApp.mContext, taskEty.getPackage_names());
                             break;
                         case 10:

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailCreditCardAct.java

@@ -158,7 +158,7 @@ public class TaskDetailCreditCardAct extends AbsChooseImageActivity {
             btnTaskItem.setText("信用卡注册");
         } else if (PackageUtil.isAppInstalled(SheepApp.mContext, taskEty.getPackage_names())) {
             btnTaskItem.setText("开始游戏");
-        } else if (!TextUtils.isEmpty(PackageUtil.isExistsFile(activity, taskEty.getPackage_names(), ""))) {
+        } else if (!TextUtils.isEmpty(PackageUtil.isExistsFile(taskEty.getPackage_names()))) {
             btnTaskItem.setText("开始安装");
         } else {
             DownLoadInfo downLoadInfo = DDProviderHelper.getInstance()

+ 4 - 4
app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java

@@ -215,9 +215,9 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                 if(isInstall){//已经安装
                     taskTypeTvValue = "启动游戏";
                     PackageUtil.startApp(SheepApp.mContext, etyList.get(i).getTask().getPackage_names());
-                }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(mContext, etyList.get(i).getTask().getPackage_names(), ""))){
+                }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(etyList.get(i).getTask().getPackage_names()))){
                     taskTypeTvValue = "安装游戏";
-                    ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(mContext, etyList.get(i).getTask().getPackage_names(), ""));
+                    ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(etyList.get(i).getTask().getPackage_names()));
                 }else {
                     taskTypeTvValue = "下载游戏";
                 }
@@ -231,8 +231,8 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                     public void onClick(View v) {
                         if(isInstall){//已经安装
                             PackageUtil.startApp(SheepApp.mContext, etyList.get(i).getTask().getPackage_names());
-                        }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(mContext, etyList.get(i).getTask().getPackage_names(), ""))){
-                            ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(mContext, etyList.get(i).getTask().getPackage_names(), ""));
+                        }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(etyList.get(i).getTask().getPackage_names()))){
+                            ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(etyList.get(i).getTask().getPackage_names()));
                         }else {
                         }
                     }

+ 1 - 2
app/src/main/java/com/sheep/jiuyan/samllsheep/utils/PackageUtil.java

@@ -71,7 +71,6 @@ public class PackageUtil {
             }
         } catch (PackageManager.NameNotFoundException e) {
             packageInfo = null;
-            e.printStackTrace();
         }
         if (packageInfo == null) {
             //System.out.println("没有安装");
@@ -219,7 +218,7 @@ public class PackageUtil {
     /**
      * 通过包名、路径判断是否下载过
      */
-    public static String isExistsFile(Context context, String packName, String filePath){
+    public static String isExistsFile(String packName){
         ClassFileHelper.getInstance().createSDDirection();
         File mApkPath = new File(ClassFileHelper.DIR, packName + ClassFileHelper.FILE_SUFFIX);
         if (!mApkPath.exists()) {

+ 3 - 1
app/src/main/res/layout/dialog_half_screen_ad.xml

@@ -7,13 +7,15 @@
     <RelativeLayout
         android:id="@+id/dialog_rl"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
+        android:layout_height="wrap_content"
+        android:minHeight="100dp">
 
         <ImageView
             android:id="@+id/ad_iv"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:adjustViewBounds="true"
+            android:src="@drawable/loading_01"
             android:scaleType="fitXY" />
 
         <VideoView

+ 1 - 1
datashare/src/main/java/com/kfzs/duanduan/datashare/DDProviderHelper.java

@@ -537,7 +537,7 @@ public class DDProviderHelper {
         DownLoadInfo downloadTask = getDownloadTask(ctx, downloadUrl);
         if (downloadTask != null) {
             downloadTask.setMApkPath(apkPath);
-            downloadTask.setMStatus(3);
+            downloadTask.setMStatus(3);//DownloadTaskService.STATUS_FINISH
             getDaossion(ctx).getDownLoadInfoDao().update(downloadTask);
         }
     }