下载管理相关优化

This commit is contained in:
chenjuntao
2021-08-21 10:57:45 +08:00
parent 9c044ae98b
commit 1d9e1bc9d8
74 changed files with 1763 additions and 118 deletions

View File

@ -87,6 +87,9 @@ public class PackageUtils {
updateEntity.setIndexPlugin(gameEntity.getIndexPlugin());
updateEntity.setPluginDesc(gameEntity.getPluginDesc());
updateEntity.setFormat(apkEntity.getFormat());
updateEntity.setSignature(apkEntity.getSignature());
updateEntity.setCategory(gameEntity.getCategory());
updateEntity.setCurrentVersion(PackageUtils.getVersionNameByPackageName(apkEntity.getPackageName()));
updateList.add(updateEntity);
}
}
@ -97,7 +100,7 @@ public class PackageUtils {
// ghVersion 不存在即是非插件游戏
if (TextUtils.isEmpty(apkEntity.getGhVersion())) {
String versionFromRequest = apkEntity.getVersion();
String versionFromInstalledApp = getVersionByPackage(apkEntity.getPackageName());
String versionFromInstalledApp = getVersionNameByPackageName(apkEntity.getPackageName());
// 是否需要显示更新
boolean shouldShowUpdate = apkEntity.getForce();
@ -125,6 +128,9 @@ public class PackageUtils {
updateEntity.setIndexPlugin(gameEntity.getIndexPlugin());
updateEntity.setPluginDesc(gameEntity.getPluginDesc());
updateEntity.setFormat(apkEntity.getFormat());
updateEntity.setSignature(apkEntity.getSignature());
updateEntity.setCategory(gameEntity.getCategory());
updateEntity.setCurrentVersion(PackageUtils.getVersionNameByPackageName(apkEntity.getPackageName()));
updateList.add(updateEntity);
}
}
@ -438,21 +444,21 @@ public class PackageUtils {
/*
* 返回光环助手的版本信息
*/
public static String getVersionName() {
public static String getGhVersionName() {
return BuildConfig.VERSION_NAME;
}
/*
* 返回光环助手的版本code
*/
public static int getVersionCode() {
public static int getGhVersionCode() {
return BuildConfig.VERSION_CODE;
}
/*
* 获取apk的版本
* 获取apk的 versionName
*/
public static String getVersionByPackage(String packageName) {
public static String getVersionNameByPackageName(String packageName) {
try {
return HaloApp.getInstance().getApplication().getPackageManager().getPackageInfo(packageName,
PackageManager.COMPONENT_ENABLED_STATE_DEFAULT).versionName;
@ -462,11 +468,24 @@ public class PackageUtils {
return null;
}
/*
* 获取apk的版本 versionCode
*/
public static int getVersionCodeByPackageName(String packageName) {
try {
return HaloApp.getInstance().getApplication().getPackageManager().getPackageInfo(packageName,
PackageManager.COMPONENT_ENABLED_STATE_DEFAULT).versionCode;
} catch (NameNotFoundException e) {
e.printStackTrace();
}
return 0;
}
/*
* 获取apk的版本
* 获取应用的 icon
*/
public static Drawable getIconByPackage(Context context, String packageName) {
public static Drawable getIconByPackageName(Context context, String packageName) {
try {
PackageManager packageManager = context.getApplicationContext().getPackageManager();
return packageManager.getApplicationIcon(packageName);
@ -630,7 +649,7 @@ public class PackageUtils {
// ghVersion 不存在即是非插件游戏
if (TextUtils.isEmpty(apkEntity.getGhVersion())) {
String versionFromRequest = apkEntity.getVersion();
String versionFromInstalledApp = getVersionByPackage(apkEntity.getPackageName());
String versionFromInstalledApp = getVersionNameByPackageName(apkEntity.getPackageName());
// 是否需要显示更新
boolean shouldShowUpdate = apkEntity.getForce();