always set App.icon when instantiating from installed app
The App(Context context, PackageManager pm, String packageName) constructor was not setting App.icon, which is required for lots of things. This makes it always get set, since its just a standard file name, and it does not have to even exist yet.
This commit is contained in:
parent
2038b7e1cb
commit
507f17e19e
@ -112,6 +112,10 @@ public class App extends ValueObject implements Comparable<App> {
|
||||
|
||||
public boolean uninstallable;
|
||||
|
||||
public static String getIconName(String packageName, int versionCode) {
|
||||
return packageName + "_" + versionCode + ".png";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int compareTo(App app) {
|
||||
return name.compareToIgnoreCase(app.name);
|
||||
@ -278,6 +282,7 @@ public class App extends ValueObject implements Comparable<App> {
|
||||
+ ", last updated on " + this.lastUpdated + ")</p>";
|
||||
|
||||
this.name = (String) appInfo.loadLabel(pm);
|
||||
this.icon = getIconName(packageName, packageInfo.versionCode);
|
||||
|
||||
final Apk apk = new Apk();
|
||||
apk.versionName = packageInfo.versionName;
|
||||
|
@ -3,7 +3,6 @@ package org.fdroid.fdroid.localrepo;
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.res.AssetManager;
|
||||
import android.graphics.Bitmap;
|
||||
@ -274,8 +273,6 @@ public final class LocalRepoManager {
|
||||
if (!app.isValid()) {
|
||||
return;
|
||||
}
|
||||
PackageInfo packageInfo = pm.getPackageInfo(packageName, PackageManager.GET_META_DATA);
|
||||
app.icon = getIconFile(packageName, packageInfo.versionCode).getName();
|
||||
} catch (PackageManager.NameNotFoundException | CertificateEncodingException | IOException e) {
|
||||
Log.e(TAG, "Error adding app to local repo", e);
|
||||
return;
|
||||
@ -324,7 +321,7 @@ public final class LocalRepoManager {
|
||||
}
|
||||
|
||||
private File getIconFile(String packageName, int versionCode) {
|
||||
return new File(iconsDir, packageName + "_" + versionCode + ".png");
|
||||
return new File(iconsDir, App.getIconName(packageName, versionCode));
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user