From ab21451616eb33de5ef1a59b3f1a3fa894e4b58a Mon Sep 17 00:00:00 2001 From: kangshulong <1095887643@qq.com> Date: Sat, 22 Nov 2025 17:12:10 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=B8=8A=E6=8A=A5=E6=8E=A5=E5=8F=A3=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E7=94=B10-=E8=B5=84=E6=BA=90=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=E5=AE=8C=E6=88=901-app=E4=B8=8B=E8=BD=BD=E5=AE=8C=E6=88=902-ap?= =?UTF-8?q?p=E5=AE=89=E8=A3=85=E5=AE=8C=E6=88=90=E6=9B=B4=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E5=A2=9E=E5=8A=A03-app=E5=B7=B2=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=EF=BC=8C0=E6=94=B9=E4=B8=BA=E5=9B=BE=E7=89=87=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E5=AE=8C=E6=88=90=EF=BC=8C1=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E8=A7=86=E9=A2=91=E4=B8=8B=E8=BD=BD=E5=AE=8C=E6=88=90=EF=BC=8C?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E5=AD=97=E6=AE=B5=E6=B7=BB=E5=8A=A0dtime=202?= =?UTF-8?q?.Shareprerence=E5=88=A0=E9=99=A4key=E6=9C=AA=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E6=88=90=E5=8A=9F=E6=9B=B4=E6=AD=A3=203.=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E6=8E=A5=E5=8F=A3=20=E5=8E=9F1-app=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ik/mboxlauncher/ui/Launcher.java | 4 +- .../main/java/com/android/SharePreUtils.java | 3 +- .../java/com/android/nebulasdk/ADManager.java | 75 +++++++++++-------- .../android/nebulasdk/bean/UploadADBean.java | 9 +++ .../presenter/DownLoadAdPresenter.java | 1 + 5 files changed, 59 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/com/ik/mboxlauncher/ui/Launcher.java b/app/src/main/java/com/ik/mboxlauncher/ui/Launcher.java index 88c3e95..fed60d7 100644 --- a/app/src/main/java/com/ik/mboxlauncher/ui/Launcher.java +++ b/app/src/main/java/com/ik/mboxlauncher/ui/Launcher.java @@ -642,9 +642,9 @@ public boolean onGenericMotionEvent(MotionEvent event) { LogUtils.loge("onMessageEvent===>"+event.action); if(MessageEvent.ACTION_UPADATE_DATA_SOURCE.equals(event.action)) { ADManager.getInstance().updateDownloadTaskBeanTable(); - if(isNetworkAvailable()&&ADManager.getInstance().checkTaskQueueClear()){ + if(isNetworkAvailable()){ ArrayList uploadAds = ADManager.getInstance().getUploadAds(); - if(uploadAds.size()>1){ + if(uploadAds.size()>0){ if(downLoadAdPresenter==null){ downLoadAdPresenter = new DownLoadAdPresenter(new AppnetCallback() { @Override diff --git a/mylibrary/src/main/java/com/android/SharePreUtils.java b/mylibrary/src/main/java/com/android/SharePreUtils.java index d87cfa7..1c1452b 100644 --- a/mylibrary/src/main/java/com/android/SharePreUtils.java +++ b/mylibrary/src/main/java/com/android/SharePreUtils.java @@ -82,12 +82,13 @@ public class SharePreUtils { for (Map map : dataList) { if (map != null) { // 使用remove方法删除指定键 - if(!map.containsKey(keyToRemove)){ + if(!map.containsValue(keyToRemove)){ current.add(map); } } } dataList=current; + //LogUtils.loge("removeKeyFromAllMaps current()"+current.size()); } public static void resetDataList(){ diff --git a/mylibrary/src/main/java/com/android/nebulasdk/ADManager.java b/mylibrary/src/main/java/com/android/nebulasdk/ADManager.java index 7435973..c4c596d 100644 --- a/mylibrary/src/main/java/com/android/nebulasdk/ADManager.java +++ b/mylibrary/src/main/java/com/android/nebulasdk/ADManager.java @@ -130,6 +130,7 @@ public class ADManager implements DownLoadManeger.DownloadListener { oldfile.delete(); } }else { +//todo SharePreUtils.addRelation(String.valueOf(aDInfo.getAdResourceId()),String.valueOf(0)); LogUtils.loge("广告位仅换apk不换图 fresh apk not fresh img,dont delete img but download"); } } @@ -338,7 +339,7 @@ public class ADManager implements DownLoadManeger.DownloadListener { }else { LogUtils.loge("app已安装"); - + SharePreUtils.addRelation(String.valueOf(adinfo.getAdResourceId()),String.valueOf(3)); } }else { LogUtils.loge("没有app任务"); @@ -409,7 +410,7 @@ public class ADManager implements DownLoadManeger.DownloadListener { EventBusUtils.postMsg(new MessageEvent(MessageEvent.ACTION_UPADATE_DATA_SOURCE)); } },1000*5); - + EventBusUtils.postMsg(new MessageEvent(MessageEvent.ACTION_UPADATE_DATA_SOURCE)); }else{ EventBusUtils.postMsg(new MessageEvent(MessageEvent.ACTION_UPADATE_DATA_SOURCE)); } @@ -507,44 +508,58 @@ public class ADManager implements DownLoadManeger.DownloadListener { AdsInfoBean adsInfoBean = adsInfoBeanList.get(i); String appUrl=adsInfoBean.getAppUrl(); if(!TextUtils.isEmpty(adsInfoBean.getAppUrl())){ - int lastIndex = appUrl.lastIndexOf("/"); - String fileName=lastIndex==-1?appUrl:appUrl.substring(lastIndex+1); - String filePath = FileUtil.getBakPath(mContext,1)+"/"+fileName; - String tmpFilePath = FileUtil.getBakPath(mContext, 1) + "/" + fileName + "-tmp"; - File tmpFile=new File(tmpFilePath); - File file =new File(filePath); - if((PakageInstallUtil.checkAppInstall(mContext,adsInfoBean.getInfo()))&& !PakageInstallUtil.checkAppUpdate(mContext,adsInfoBean.getInfo(),(int) adsInfoBean.getAppVersion())){ - if(!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(2))){ - LogUtils.loge("===================="+i); - SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(2)); +// int lastIndex = appUrl.lastIndexOf("/"); +// String fileName=lastIndex==-1?appUrl:appUrl.substring(lastIndex+1); +// String filePath = FileUtil.getBakPath(mContext,1)+"/"+fileName; +// String tmpFilePath = FileUtil.getBakPath(mContext, 1) + "/" + fileName + "-tmp"; +// File tmpFile=new File(tmpFilePath); +// File file =new File(filePath); + if((PakageInstallUtil.checkAppInstall(mContext,adsInfoBean.getInfo()))&& !PakageInstallUtil.checkAppUpdate(mContext,adsInfoBean.getInfo(),(int) adsInfoBean.getAppVersion())) { + if (!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()), String.valueOf(2))) { + SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()), String.valueOf(2)); UploadADBean.RecordsBean recordsBean = new UploadADBean.RecordsBean(); recordsBean.setAdResourceId(adsInfoBean.getAdResourceId()); - recordsBean.setType(2); + if (SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()), String.valueOf(3))) {//考虑到3为app已安装 analysisResInfo + recordsBean.setType(3); + } else { + recordsBean.setType(2); + } uploadAdList.add(recordsBean); } - LogUtils.loge("==============resid"+adsInfoBean.getAdResourceId()); - }else if(file.exists()||(tmpFile.exists()&&tmpFile.length()==adsInfoBean.getAppSize())){ - if(!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(1))){ - SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(1)); - UploadADBean.RecordsBean recordsBean = new UploadADBean.RecordsBean(); - recordsBean.setAdResourceId(adsInfoBean.getAdResourceId()); - recordsBean.setType(1); - uploadAdList.add(recordsBean); - } - } + LogUtils.loge("==============resid" + adsInfoBean.getAdResourceId()); + } +// }else if(file.exists()||(tmpFile.exists()&&tmpFile.length()==adsInfoBean.getAppSize())){ +// if(!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(1))){ +// SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(1)); +// UploadADBean.RecordsBean recordsBean = new UploadADBean.RecordsBean(); +// recordsBean.setAdResourceId(adsInfoBean.getAdResourceId()); +// recordsBean.setType(1); +// uploadAdList.add(recordsBean); +// } +// } } if(!TextUtils.isEmpty(adsInfoBean.getLocalFilePath())){ File file = new File(adsInfoBean.getLocalFilePath()); File tmpFile=new File(adsInfoBean.getLocalFilePath()+"-tmp"); if(file.exists()||(tmpFile.exists()&&tmpFile.length()==adsInfoBean.getAdSize())){ - if(!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(0))){ - LogUtils.loge("===================="+i); - SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(0)); - UploadADBean.RecordsBean recordsBean = new UploadADBean.RecordsBean(); - recordsBean.setAdResourceId(adsInfoBean.getAdResourceId()); - recordsBean.setType(0); - uploadAdList.add(recordsBean); + if(ADTYPE_IMAGE.equalsIgnoreCase(adsInfoBean.getAdType())){ + if(!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(0))){ + SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(0)); + UploadADBean.RecordsBean recordsBean = new UploadADBean.RecordsBean(); + recordsBean.setAdResourceId(adsInfoBean.getAdResourceId()); + recordsBean.setType(0); + uploadAdList.add(recordsBean); + } + }else if(ADTYPE_VIDEO.equalsIgnoreCase(adsInfoBean.getAdType())){ + if(!SharePreUtils.filterByKeyValue(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(1))){ + SharePreUtils.addRelation(String.valueOf(adsInfoBean.getAdResourceId()),String.valueOf(1)); + UploadADBean.RecordsBean recordsBean = new UploadADBean.RecordsBean(); + recordsBean.setAdResourceId(adsInfoBean.getAdResourceId()); + recordsBean.setType(1); + uploadAdList.add(recordsBean); + } } + LogUtils.loge("==============resid"+adsInfoBean.getAdResourceId()); } } diff --git a/mylibrary/src/main/java/com/android/nebulasdk/bean/UploadADBean.java b/mylibrary/src/main/java/com/android/nebulasdk/bean/UploadADBean.java index 557d4aa..d547c3f 100644 --- a/mylibrary/src/main/java/com/android/nebulasdk/bean/UploadADBean.java +++ b/mylibrary/src/main/java/com/android/nebulasdk/bean/UploadADBean.java @@ -12,6 +12,7 @@ public class UploadADBean { private String mac; private String cpu; + private String dtime; private List records; public String getMac() { @@ -38,6 +39,14 @@ public class UploadADBean { this.records = records; } + public String getDtime() { + return dtime; + } + + public void setDtime(String dtime) { + this.dtime = dtime; + } + public static class RecordsBean { /** * adId : 494 diff --git a/mylibrary/src/main/java/com/android/nebulasdk/presenter/DownLoadAdPresenter.java b/mylibrary/src/main/java/com/android/nebulasdk/presenter/DownLoadAdPresenter.java index 0223f9a..2595829 100644 --- a/mylibrary/src/main/java/com/android/nebulasdk/presenter/DownLoadAdPresenter.java +++ b/mylibrary/src/main/java/com/android/nebulasdk/presenter/DownLoadAdPresenter.java @@ -39,6 +39,7 @@ public class DownLoadAdPresenter { uploadADBean.setCpu(cpuId); uploadADBean.setMac(DeviceUtil.getEthernetMac()); uploadADBean.setRecords(recordsBeans); + uploadADBean.setDtime(String.valueOf(System.currentTimeMillis())); biz.postDownloadAd(uploadADBean, new OnBaseListener() { @Override public void onResponse(String result) {