优化版本更新的逻辑,避免上传空版本号

TempBranch
Matthew 9 months ago
parent 6ceeba91cf
commit 160b599c6e

@ -417,22 +417,33 @@ public class MpMasterService extends Service {
} }
public String getMpAppVersion() { public String getMpAppVersion() {
if (TextUtils.isEmpty(mMpAppVersion)) { if (!TextUtils.isEmpty(mMpAppVersion)) {
PackageManager packageManager = getPackageManager(); return mMpAppVersion;
PackageInfo packageInfo = null; }
try {
packageInfo = packageManager.getPackageInfo(MicroPhotoContext.PACKAGE_NAME_MPAPP, 0); String version = buildMpAppVersion(getApplicationContext());
} catch (Exception ex) { mMpAppVersion = version;
ex.printStackTrace(); return version;
} }
mMpAppVersion = packageInfo == null ? "" : packageInfo.versionName;
public static String buildMpAppVersion(Context context) {
String version = null;
PackageManager packageManager = context.getPackageManager();
PackageInfo packageInfo = null;
try {
packageInfo = packageManager.getPackageInfo(MicroPhotoContext.PACKAGE_NAME_MPAPP, 0);
} catch (Exception ex) {
ex.printStackTrace();
} }
return mMpAppVersion;
version = packageInfo == null ? "" : packageInfo.versionName;
return version;
} }
public static void resetVersions() { public static void resetVersions(Context context) {
mMpAppVersion = null; mMpAppVersion = null;
mMpMasterVersion = null; mMpMasterVersion = null;
mMpAppVersion = buildMpAppVersion(context);
} }
public String getMasterAppVersion() { public String getMasterAppVersion() {

@ -28,14 +28,14 @@ public class UpdateReceiver extends BroadcastReceiver {
private void packageChanged(Context context, String action, String packageName, String targetPackageName) { private void packageChanged(Context context, String action, String packageName, String targetPackageName) {
if (action.equals(Intent.ACTION_PACKAGE_REPLACED)) { // Upgrade Broadcast if (action.equals(Intent.ACTION_PACKAGE_REPLACED)) { // Upgrade Broadcast
Log.e(TAG, "onReceive:Upgraded and Restart the App:" + targetPackageName); Log.e(TAG, "onReceive:Upgraded and Restart the App:" + targetPackageName);
MpMasterService.resetVersions(); MpMasterService.resetVersions(context);
if (packageName.equals("package:" + targetPackageName)) { if (packageName.equals("package:" + targetPackageName)) {
// SysApi.enableApp(context, targetPackageName); // SysApi.enableApp(context, targetPackageName);
restartAPP(context, targetPackageName); restartAPP(context, targetPackageName);
} }
} else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast } else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast
Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName); Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName);
MpMasterService.resetVersions(); MpMasterService.resetVersions(context);
if (packageName.equals("package:" + targetPackageName)) { if (packageName.equals("package:" + targetPackageName)) {
/*SystemUtil.reBootDevice();*/ /*SystemUtil.reBootDevice();*/
// SysApi.enableApp(context, targetPackageName); // SysApi.enableApp(context, targetPackageName);
@ -49,14 +49,14 @@ public class UpdateReceiver extends BroadcastReceiver {
private void packageChanged(Context context, String action, String packageName, String targetPackageName, String aliveFileName) { private void packageChanged(Context context, String action, String packageName, String targetPackageName, String aliveFileName) {
if (action.equals(Intent.ACTION_PACKAGE_REPLACED)) { // Upgrade Broadcast if (action.equals(Intent.ACTION_PACKAGE_REPLACED)) { // Upgrade Broadcast
Log.e(TAG, "onReceive:Upgraded and Restart the App:" + targetPackageName); Log.e(TAG, "onReceive:Upgraded and Restart the App:" + targetPackageName);
MpMasterService.resetVersions(); MpMasterService.resetVersions(context);
if (packageName.equals("package:" + targetPackageName)) { if (packageName.equals("package:" + targetPackageName)) {
// SysApi.enableApp(context, targetPackageName); // SysApi.enableApp(context, targetPackageName);
tryToRestartApp(context, targetPackageName); tryToRestartApp(context, targetPackageName);
} }
} else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast } else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast
Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName); Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName);
MpMasterService.resetVersions(); MpMasterService.resetVersions(context);
if (packageName.equals("package:" + targetPackageName)) { if (packageName.equals("package:" + targetPackageName)) {
/*SystemUtil.reBootDevice();*/ /*SystemUtil.reBootDevice();*/
// SysApi.enableApp(context, targetPackageName); // SysApi.enableApp(context, targetPackageName);

Loading…
Cancel
Save