From c6c025c2251ab9ecc5d790e90915edbd435f479b Mon Sep 17 00:00:00 2001 From: Administrator <981964879@qq.com> Date: Thu, 9 Jul 2020 18:37:31 +0800 Subject: [PATCH] =?UTF-8?q?version:2.0.1.6=5Frelease=20update:2020.07.09?= =?UTF-8?q?=20fix:=E4=B8=BB=E9=A1=B5=E5=8C=BA=E5=88=86=E6=95=99=E7=AE=A1?= =?UTF-8?q?=E6=98=93=E5=92=8C=E8=AE=BE=E5=A4=87=E4=BF=A1=E6=81=AF=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=EF=BC=8C=E8=BF=9B=E5=85=A5=E4=B8=BB=E9=A1=B5=E4=B8=8D?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=A3=80=E6=9F=A5=E8=87=AA=E8=BA=AB=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=20add:=E7=BB=9F=E4=B8=80=E4=B8=8B=E8=BD=BD=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 8 +- .../com/mjsheng/myappstore/MyApplication.java | 2 +- .../myappstore/activity/MainActivity.java | 80 ++++++++++++------- .../myappstore/receiver/MyJPushReceiver.java | 35 ++++---- .../myappstore/server/GuardService.java | 2 + .../myappstore/server/InitJpushServer.java | 46 ++++++----- .../com/mjsheng/myappstore/utils/Utils.java | 28 ++++++- 7 files changed, 132 insertions(+), 69 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 46332a6..a2a71cb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -15,10 +15,10 @@ android { minSdkVersion 20 targetSdkVersion 29 -// versionCode 103 -// versionName "3.0.8"//测试jiaoguanyi.cn - versionCode 1005 - versionName "2.0.1.5"// 正式jiaoguanyi.com 双数正式 单数测试 +// versionCode 104 +// versionName "3.0.9"//测试jiaoguanyi.cn + versionCode 1006 + versionName "2.0.1.6"// 正式jiaoguanyi.com 双数正式 单数测试 multiDexEnabled true testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/com/mjsheng/myappstore/MyApplication.java b/app/src/main/java/com/mjsheng/myappstore/MyApplication.java index 9961343..39499e9 100644 --- a/app/src/main/java/com/mjsheng/myappstore/MyApplication.java +++ b/app/src/main/java/com/mjsheng/myappstore/MyApplication.java @@ -483,7 +483,7 @@ public class MyApplication extends MultiDexApplication { com.lzy.okserver.download.DownloadManager downloadManager = DownloadService.getDownloadManager(); // downloadManager.setTargetFolder(StorageUtils.getFileRoot(this)); - downloadManager.setTargetFolder(PathUtils.getExternalDownloadsPath() + "/ygj/"); + downloadManager.setTargetFolder(PathUtils.getExternalDownloadsPath() + "/jgy/"); downloadManager.getThreadPool().setCorePoolSize(5); } diff --git a/app/src/main/java/com/mjsheng/myappstore/activity/MainActivity.java b/app/src/main/java/com/mjsheng/myappstore/activity/MainActivity.java index b1f33ad..b64fd64 100644 --- a/app/src/main/java/com/mjsheng/myappstore/activity/MainActivity.java +++ b/app/src/main/java/com/mjsheng/myappstore/activity/MainActivity.java @@ -243,12 +243,13 @@ public class MainActivity extends AppCompatActivity { } synchronized public void sendMACaddress() { + String devices_version = Utils.getProperty("ro.custom.build.version", "获取失败"); String rid = JPushInterface.getRegistrationID(getApplicationContext()); OkGo.post(Configure.SEND_DEVICES) .params("sn", Utils.getSerial()) .params("mac", com.blankj.utilcode.util.DeviceUtils.getMacAddress()) .params("jpush_id", rid) - .params("devices_version", Utils.getProperty("ro.custom.build.version", "获取失败")) + .params("devices_version", devices_version) .params("appstore_version", BuildConfig.VERSION_NAME)//设备信息版本号 .params("store_version", getAPPVersionName())//管教易版本号 .execute(new StringCallback() { @@ -557,7 +558,7 @@ public class MainActivity extends AppCompatActivity { private void checkUpdate() { HTTPInterface.checkUpdate(mHandler, "com.jiaoguanyi.store"); - HTTPInterface.checkUpdate(mHandler, "com.jiaoguanyi.appstore"); +// HTTPInterface.checkUpdate(mHandler, "com.jiaoguanyi.appstore"); } private Handler mHandler = new Handler() { @@ -645,7 +646,15 @@ public class MainActivity extends AppCompatActivity { e.printStackTrace(); } if (packageInfo == null || packageInfo.versionCode < versionCode) { - + if (packageName.equalsIgnoreCase("com.jiaoguanyi.store")) { +// Aria.download(this) +// .load(url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(packageName) + ".apk", true) +// .setExtendField(object.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, url, object); + return; + } AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("更新:"); builder.setMessage("检测到有新版本,是否更新?"); @@ -655,11 +664,13 @@ public class MainActivity extends AppCompatActivity { builder.setPositiveButton("更新", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - Aria.download(this) - .load(url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(packageName) + ".apk", true) - .setExtendField(object.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(packageName) + ".apk", true) +// .setExtendField(object.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(MainActivity.this, url, object); + dialog.dismiss(); } }); @@ -672,12 +683,22 @@ public class MainActivity extends AppCompatActivity { }); builder.show(); } else { - ToastUtil.show("已是最新版本"); + if (!packageName.equalsIgnoreCase("com.jiaoguanyi.store")) { + mHandler.postDelayed(toast, 4000); + } Log.e("fht", "已是最新版本"); } } + private Runnable toast = new Runnable() { + + @Override + public void run() { + ToastUtil.show("已是最新版本"); + } + }; + private int getBatteryLevel() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { BatteryManager batteryManager = (BatteryManager) getSystemService(BATTERY_SERVICE); @@ -739,7 +760,7 @@ public class MainActivity extends AppCompatActivity { @Override public void onError(Call call, Response response, Exception e) { super.onError(call, response, e); - Log.e("onError", "error"); + Log.e("onError", "error:" + e.getMessage()); } });// 请求方式和请求url @@ -1105,7 +1126,7 @@ public class MainActivity extends AppCompatActivity { if (version_code > AppUtils.getAppVersionCode()) { Aria.download(this) .load(url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(url) + ".apk", true) + .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(url) + ".apk", true) .setExtendField(BuildConfig.APPLICATION_ID) .create(); //启动下载}} } @@ -1254,7 +1275,7 @@ public class MainActivity extends AppCompatActivity { // if (!AppUtils.isAppInstalled(app_package)) { // Aria.download(this) // .load(app_url) //读取下载地址 -// .setDownloadPath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk") +// .setDownloadPath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk") // .setExtendField(app_package) // .start(); //启动下载} // } @@ -1299,20 +1320,23 @@ public class MainActivity extends AppCompatActivity { } if (app_version_code > appVersionCode) { Log.e("fht ", "download URL " + app_url); - Aria.download(this) - .load(app_url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) - .setExtendField(jsonObject.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(app_url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) +// .setExtendField(jsonObject.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, app_url, jsonObject); } } else { Log.e("fht ", "download URL " + app_url); // if (!SaveListUtils.isDownLoading(app_package)) { - Aria.download(this) - .load(app_url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) - .setExtendField(jsonObject.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(app_url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) +// .setExtendField(jsonObject.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, app_url, jsonObject); + // SaveListUtils.addDownLoadList(app_package); // } } @@ -1329,11 +1353,13 @@ public class MainActivity extends AppCompatActivity { com.alibaba.fastjson.JSONObject jsonObject = new com.alibaba.fastjson.JSONObject(); jsonObject.put("app_name", forceDownloadData.getApp_name()); jsonObject.put("app_package", forceDownloadData.getApp_package()); - Aria.download(this) - .load(forceDownloadData.getApp_url()) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString("com.jiaoguanyi.store") + ".apk", true) - .setExtendField(jsonObject.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(forceDownloadData.getApp_url()) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString("com.jiaoguanyi.store") + ".apk", true) +// .setExtendField(jsonObject.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, forceDownloadData.getApp_url(), jsonObject); + } } else { // Log.e("fht", "未上传应用"); diff --git a/app/src/main/java/com/mjsheng/myappstore/receiver/MyJPushReceiver.java b/app/src/main/java/com/mjsheng/myappstore/receiver/MyJPushReceiver.java index e4bbb00..d1487ea 100644 --- a/app/src/main/java/com/mjsheng/myappstore/receiver/MyJPushReceiver.java +++ b/app/src/main/java/com/mjsheng/myappstore/receiver/MyJPushReceiver.java @@ -227,11 +227,13 @@ public class MyJPushReceiver extends BroadcastReceiver { com.alibaba.fastjson.JSONObject packageObj = new com.alibaba.fastjson.JSONObject(); packageObj.put("app_name", app_name); packageObj.put("app_package", app_package); - Aria.download(this) - .load(url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(url) + ".apk", true) - .setExtendField(packageObj.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(url) + ".apk", true) +// .setExtendField(packageObj.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(mContext, url,packageObj); + break; case SET_HOMEPAG_TAG: @@ -469,11 +471,12 @@ public class MyJPushReceiver extends BroadcastReceiver { } if (packageInfo == null) { if (!SaveListUtils.isDownLoading(app_url)) { - Aria.download(this) - .load(app_url) - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(s) + ".apk", true) - .setExtendField(packageObj.toJSONString()) - .create(); +// Aria.download(this) +// .load(app_url) +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(s) + ".apk", true) +// .setExtendField(packageObj.toJSONString()) +// .create(); + Utils.ariaDownload(mContext, app_url,packageObj); } } else { long appVersionCode; @@ -484,11 +487,13 @@ public class MyJPushReceiver extends BroadcastReceiver { } if (app_version_code > appVersionCode) { if (!SaveListUtils.isDownLoading(app_url)) { - Aria.download(this) - .load(app_url) - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(s) + ".apk", true) - .setExtendField(packageObj.toJSONString()) - .create(); +// Aria.download(this) +// .load(app_url) +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(s) + ".apk", true) +// .setExtendField(packageObj.toJSONString()) +// .create(); + Utils.ariaDownload(mContext, app_url,packageObj); + } } } diff --git a/app/src/main/java/com/mjsheng/myappstore/server/GuardService.java b/app/src/main/java/com/mjsheng/myappstore/server/GuardService.java index 32ba18b..181d3de 100644 --- a/app/src/main/java/com/mjsheng/myappstore/server/GuardService.java +++ b/app/src/main/java/com/mjsheng/myappstore/server/GuardService.java @@ -19,6 +19,7 @@ import android.net.Network; import android.net.NetworkInfo; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; +import android.os.Build; import android.os.IBinder; import android.support.annotation.Nullable; import android.text.format.Formatter; @@ -31,6 +32,7 @@ import com.arialyy.aria.core.Aria; import com.arialyy.aria.core.download.DownloadEntity; import com.arialyy.aria.core.task.DownloadTask; import com.blankj.utilcode.util.LogUtils; +import com.mjsheng.myappstore.BuildConfig; import com.mjsheng.myappstore.KeepAliveConnection; import com.mjsheng.myappstore.MyApplication; import com.mjsheng.myappstore.utils.ApkUtils; diff --git a/app/src/main/java/com/mjsheng/myappstore/server/InitJpushServer.java b/app/src/main/java/com/mjsheng/myappstore/server/InitJpushServer.java index e6a05f5..e413c22 100644 --- a/app/src/main/java/com/mjsheng/myappstore/server/InitJpushServer.java +++ b/app/src/main/java/com/mjsheng/myappstore/server/InitJpushServer.java @@ -309,7 +309,6 @@ public class InitJpushServer extends Service { } - private void deleteOtherApp(String packageList) { Log.e("deleteOtherApp", "packageList:" + packageList); String[] result = packageList.split(","); @@ -464,20 +463,22 @@ public class InitJpushServer extends Service { } if (app_version_code > appVersionCode) { Log.e("fht ", "download URL " + app_url); - Aria.download(this) - .load(app_url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) - .setExtendField(jsonObject.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(app_url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) +// .setExtendField(jsonObject.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, app_url, jsonObject); } } else { Log.e("fht ", "download URL " + app_url); // if (!SaveListUtils.isDownLoading(app_package)) { - Aria.download(this) - .load(app_url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) - .setExtendField(jsonObject.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(app_url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(app_package) + ".apk", true) +// .setExtendField(jsonObject.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, app_url, jsonObject); // SaveListUtils.addDownLoadList(app_package); // } } @@ -492,11 +493,13 @@ public class InitJpushServer extends Service { com.alibaba.fastjson.JSONObject packageObj = new com.alibaba.fastjson.JSONObject(); packageObj.put("app_name", forceDownloadData.getApp_name()); packageObj.put("app_package", forceDownloadData.getApp_package()); - Aria.download(this) - .load(forceDownloadData.getApp_url()) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString("com.jiaoguanyi.appstore") + ".apk", true) - .setExtendField(packageObj.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(forceDownloadData.getApp_url()) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString("com.jiaoguanyi.appstore") + ".apk", true) +// .setExtendField(packageObj.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, forceDownloadData.getApp_url(), packageObj); + } else { Log.e("fht", "未上传应用"); } @@ -1043,11 +1046,12 @@ public class InitJpushServer extends Service { e.printStackTrace(); } if (packageInfo == null || packageInfo.versionCode < versionCode) { - Aria.download(this) - .load(url) //读取下载地址 - .setFilePath(PathUtils.getExternalDownloadsPath() + "/ygj/" + EncryptUtils.encryptMD5ToString(packageName) + ".apk", true) - .setExtendField(object.toJSONString()) - .create(); //启动下载} +// Aria.download(this) +// .load(url) //读取下载地址 +// .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + EncryptUtils.encryptMD5ToString(packageName) + ".apk", true) +// .setExtendField(object.toJSONString()) +// .create(); //启动下载} + Utils.ariaDownload(this, url, object); } else { Log.e("fht", "无需更新"); } diff --git a/app/src/main/java/com/mjsheng/myappstore/utils/Utils.java b/app/src/main/java/com/mjsheng/myappstore/utils/Utils.java index 533f887..a2b4d1a 100644 --- a/app/src/main/java/com/mjsheng/myappstore/utils/Utils.java +++ b/app/src/main/java/com/mjsheng/myappstore/utils/Utils.java @@ -39,6 +39,10 @@ import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import android.widget.Toast; +import com.alibaba.fastjson.JSONObject; +import com.arialyy.aria.core.Aria; +import com.blankj.utilcode.util.EncryptUtils; +import com.blankj.utilcode.util.PathUtils; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com.google.zxing.WriterException; @@ -969,4 +973,26 @@ public class Utils { context.startActivity(iReboot); } -} \ No newline at end of file + private static String getFileNamefromURL(String url) { + int position = url.lastIndexOf("/"); + return url.substring(position + 1); + } + + private String getMD5fromFileName(String fileName) { + int position = fileName.lastIndexOf("/"); + return fileName.substring(position + 9); + + } + + public static void ariaDownload(Context context, String url, JSONObject jsonObject) { + String fileName = getFileNamefromURL(url); + Aria.download(context) + .load(url) //读取下载地址 + .setFilePath(PathUtils.getExternalDownloadsPath() + "/jgy/" + fileName, true) + .setExtendField(jsonObject.toJSONString()) + .create(); //启动下载} +// SaveListUtils.addDownLoadList(app_package); +// } + } +} +