Merge branch 'fixes-for-1.0-alpha2' into 'master'
Fixes for 1.0 alpha2 Closes #1149 See merge request !573
@ -207,6 +207,10 @@ android {
|
||||
targetCompatibility JavaVersion.VERSION_1_7
|
||||
}
|
||||
|
||||
aaptOptions {
|
||||
cruncherEnabled = false
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
versionCode 1000001
|
||||
versionName getVersionName()
|
||||
|
Before ![]() (image error) Size: 3.5 KiB After ![]() (image error) Size: 3.6 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.2 KiB After ![]() (image error) Size: 1.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 887 B After ![]() (image error) Size: 853 B ![]() ![]() |
@ -93,7 +93,7 @@ public class CleanCacheService extends IntentService {
|
||||
}
|
||||
|
||||
for (File f : files) {
|
||||
if (f.getName().startsWith("install-")) {
|
||||
if (f.getName().endsWith(".apk")) {
|
||||
clearOldFiles(f, TimeUnit.HOURS.toMillis(1));
|
||||
}
|
||||
}
|
||||
|
@ -138,6 +138,10 @@ public class RepoXMLHandler extends DefaultHandler {
|
||||
break;
|
||||
case ApkTable.Cols.SIGNATURE:
|
||||
curapk.sig = str;
|
||||
// the first APK in the list provides the preferred signature
|
||||
if (curapp.preferredSigner == null) {
|
||||
curapp.preferredSigner = str;
|
||||
}
|
||||
break;
|
||||
case ApkTable.Cols.SOURCE_NAME:
|
||||
curapk.srcname = str;
|
||||
|
@ -15,6 +15,7 @@ import android.os.Environment;
|
||||
import android.os.LocaleList;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
@ -101,6 +102,7 @@ public class App extends ValueObject implements Comparable<App>, Parcelable {
|
||||
@JsonIgnore
|
||||
private AppPrefs prefs;
|
||||
@JsonIgnore
|
||||
@NonNull
|
||||
public String preferredSigner;
|
||||
|
||||
@JacksonInject("repoId")
|
||||
@ -159,6 +161,7 @@ public class App extends ValueObject implements Comparable<App>, Parcelable {
|
||||
* The index-v1 metadata uses the term `suggestedVersionCode` but we need that
|
||||
* value to end up in the `upstreamVersionCode` property here. These variables
|
||||
* need to be renamed across the whole F-Droid ecosystem to make sense.
|
||||
*
|
||||
* @see <a href="https://gitlab.com/fdroid/fdroidclient/issues/1063">issue #1063</a>
|
||||
*/
|
||||
@JsonProperty("suggestedVersionCode")
|
||||
@ -210,7 +213,7 @@ public class App extends ValueObject implements Comparable<App>, Parcelable {
|
||||
}
|
||||
|
||||
@Override
|
||||
public int compareTo(App app) {
|
||||
public int compareTo(@NonNull App app) {
|
||||
return name.compareToIgnoreCase(app.name);
|
||||
}
|
||||
|
||||
@ -1137,17 +1140,14 @@ public class App extends ValueObject implements Comparable<App>, Parcelable {
|
||||
* However, if the app is installed, then we override this and instead want to only encourage
|
||||
* the user to try and install versions with that signature (because thats all the OS will let
|
||||
* them do).
|
||||
* TODO: I don't think preferredSigner should ever be null, because if an app has apks then
|
||||
* we should have chosen the first and used that. If so, then we should change to @NonNull and
|
||||
* throw an exception if it is null.
|
||||
*/
|
||||
@Nullable
|
||||
@NonNull
|
||||
public String getMostAppropriateSignature() {
|
||||
if (!TextUtils.isEmpty(installedSig)) {
|
||||
return installedSig;
|
||||
} else if (!TextUtils.isEmpty(preferredSigner)) {
|
||||
return preferredSigner;
|
||||
}
|
||||
return null;
|
||||
throw new IllegalStateException("Most Appropriate Signature not found!");
|
||||
}
|
||||
}
|
||||
|
@ -127,10 +127,10 @@ public final class LocalRepoManager {
|
||||
try {
|
||||
appInfo = pm.getApplicationInfo(fdroidPackageName, PackageManager.GET_META_DATA);
|
||||
SanitizedFile apkFile = SanitizedFile.knownSanitized(appInfo.publicSourceDir);
|
||||
SanitizedFile fdroidApkLink = new SanitizedFile(webRoot, "fdroid.client.apk");
|
||||
SanitizedFile fdroidApkLink = new SanitizedFile(fdroidDir, "F-Droid.apk");
|
||||
attemptToDelete(fdroidApkLink);
|
||||
if (Utils.symlinkOrCopyFileQuietly(apkFile, fdroidApkLink)) {
|
||||
fdroidClientURL = "/" + fdroidApkLink.getName();
|
||||
fdroidClientURL = "/" + fdroidDir.getName() + "/" + fdroidApkLink.getName();
|
||||
}
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
Log.e(TAG, "Could not set up F-Droid apk in the webroot", e);
|
||||
|
Before ![]() (image error) Size: 498 B After ![]() (image error) Size: 313 B ![]() ![]() |
Before ![]() (image error) Size: 8.4 KiB After ![]() (image error) Size: 8.0 KiB ![]() ![]() |
Before ![]() (image error) Size: 657 B After ![]() (image error) Size: 910 B ![]() ![]() |
Before ![]() (image error) Size: 947 B After ![]() (image error) Size: 1.3 KiB ![]() ![]() |
Before ![]() (image error) Size: 127 B After ![]() (image error) Size: 157 B ![]() ![]() |
Before ![]() (image error) Size: 195 B After ![]() (image error) Size: 248 B ![]() ![]() |
Before ![]() (image error) Size: 307 B After ![]() (image error) Size: 427 B ![]() ![]() |
Before ![]() (image error) Size: 579 B After ![]() (image error) Size: 280 B ![]() ![]() |
Before ![]() (image error) Size: 788 B After ![]() (image error) Size: 557 B ![]() ![]() |
Before ![]() (image error) Size: 738 B After ![]() (image error) Size: 1.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 634 B After ![]() (image error) Size: 451 B ![]() ![]() |
Before ![]() (image error) Size: 1.1 KiB After ![]() (image error) Size: 982 B ![]() ![]() |
Before ![]() (image error) Size: 161 B After ![]() (image error) Size: 230 B ![]() ![]() |
Before ![]() (image error) Size: 476 B After ![]() (image error) Size: 718 B ![]() ![]() |
Before ![]() (image error) Size: 974 B After ![]() (image error) Size: 763 B ![]() ![]() |
Before ![]() (image error) Size: 841 B After ![]() (image error) Size: 682 B ![]() ![]() |
Before ![]() (image error) Size: 280 B After ![]() (image error) Size: 212 B ![]() ![]() |
Before ![]() (image error) Size: 291 B After ![]() (image error) Size: 223 B ![]() ![]() |
Before ![]() (image error) Size: 494 B After ![]() (image error) Size: 446 B ![]() ![]() |
Before ![]() (image error) Size: 367 B After ![]() (image error) Size: 206 B ![]() ![]() |
Before ![]() (image error) Size: 690 B After ![]() (image error) Size: 383 B ![]() ![]() |
Before ![]() (image error) Size: 760 B After ![]() (image error) Size: 533 B ![]() ![]() |
Before ![]() (image error) Size: 4.0 KiB After ![]() (image error) Size: 4.0 KiB ![]() ![]() |
Before ![]() (image error) Size: 365 B After ![]() (image error) Size: 365 B ![]() ![]() |
Before ![]() (image error) Size: 786 B After ![]() (image error) Size: 1.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 216 B After ![]() (image error) Size: 298 B ![]() ![]() |
Before ![]() (image error) Size: 746 B After ![]() (image error) Size: 519 B ![]() ![]() |
Before ![]() (image error) Size: 387 B After ![]() (image error) Size: 675 B ![]() ![]() |
Before ![]() (image error) Size: 1.4 KiB After ![]() (image error) Size: 1.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 396 B After ![]() (image error) Size: 579 B ![]() ![]() |
Before ![]() (image error) Size: 397 B After ![]() (image error) Size: 757 B ![]() ![]() |
Before ![]() (image error) Size: 416 B After ![]() (image error) Size: 386 B ![]() ![]() |
Before ![]() (image error) Size: 1.5 KiB After ![]() (image error) Size: 1.6 KiB ![]() ![]() |
Before ![]() (image error) Size: 928 B After ![]() (image error) Size: 823 B ![]() ![]() |
Before ![]() (image error) Size: 12 KiB After ![]() (image error) Size: 9.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 13 KiB After ![]() (image error) Size: 14 KiB ![]() ![]() |
Before ![]() (image error) Size: 7.6 KiB After ![]() (image error) Size: 5.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 351 B After ![]() (image error) Size: 135 B ![]() ![]() |
Before ![]() (image error) Size: 1.7 KiB After ![]() (image error) Size: 1.5 KiB ![]() ![]() |
Before ![]() (image error) Size: 356 B After ![]() (image error) Size: 113 B ![]() ![]() |
Before ![]() (image error) Size: 1.9 KiB After ![]() (image error) Size: 1.8 KiB ![]() ![]() |
Before ![]() (image error) Size: 360 B After ![]() (image error) Size: 114 B ![]() ![]() |
Before ![]() (image error) Size: 890 B After ![]() (image error) Size: 730 B ![]() ![]() |
Before ![]() (image error) Size: 460 B After ![]() (image error) Size: 243 B ![]() ![]() |
Before ![]() (image error) Size: 2.1 KiB After ![]() (image error) Size: 2.3 KiB ![]() ![]() |
Before ![]() (image error) Size: 3.1 KiB After ![]() (image error) Size: 2.8 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.4 KiB After ![]() (image error) Size: 1.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 370 B After ![]() (image error) Size: 157 B ![]() ![]() |
Before ![]() (image error) Size: 3.3 KiB After ![]() (image error) Size: 2.9 KiB ![]() ![]() |
Before ![]() (image error) Size: 427 B After ![]() (image error) Size: 604 B ![]() ![]() |
Before ![]() (image error) Size: 650 B After ![]() (image error) Size: 963 B ![]() ![]() |
Before ![]() (image error) Size: 88 B After ![]() (image error) Size: 115 B ![]() ![]() |
Before ![]() (image error) Size: 160 B After ![]() (image error) Size: 214 B ![]() ![]() |
Before ![]() (image error) Size: 718 B After ![]() (image error) Size: 715 B ![]() ![]() |
Before ![]() (image error) Size: 213 B After ![]() (image error) Size: 302 B ![]() ![]() |
Before ![]() (image error) Size: 541 B After ![]() (image error) Size: 271 B ![]() ![]() |
Before ![]() (image error) Size: 623 B After ![]() (image error) Size: 394 B ![]() ![]() |
Before ![]() (image error) Size: 510 B After ![]() (image error) Size: 744 B ![]() ![]() |
Before ![]() (image error) Size: 495 B After ![]() (image error) Size: 368 B ![]() ![]() |
Before ![]() (image error) Size: 741 B After ![]() (image error) Size: 712 B ![]() ![]() |
Before ![]() (image error) Size: 115 B After ![]() (image error) Size: 163 B ![]() ![]() |
Before ![]() (image error) Size: 324 B After ![]() (image error) Size: 485 B ![]() ![]() |
Before ![]() (image error) Size: 801 B After ![]() (image error) Size: 573 B ![]() ![]() |
Before ![]() (image error) Size: 617 B After ![]() (image error) Size: 462 B ![]() ![]() |
Before ![]() (image error) Size: 240 B After ![]() (image error) Size: 184 B ![]() ![]() |
Before ![]() (image error) Size: 222 B After ![]() (image error) Size: 178 B ![]() ![]() |
Before ![]() (image error) Size: 384 B After ![]() (image error) Size: 142 B ![]() ![]() |
Before ![]() (image error) Size: 263 B After ![]() (image error) Size: 154 B ![]() ![]() |
Before ![]() (image error) Size: 506 B After ![]() (image error) Size: 302 B ![]() ![]() |
Before ![]() (image error) Size: 621 B After ![]() (image error) Size: 395 B ![]() ![]() |
Before ![]() (image error) Size: 2.4 KiB After ![]() (image error) Size: 2.4 KiB ![]() ![]() |
Before ![]() (image error) Size: 225 B After ![]() (image error) Size: 237 B ![]() ![]() |
Before ![]() (image error) Size: 607 B After ![]() (image error) Size: 546 B ![]() ![]() |
Before ![]() (image error) Size: 538 B After ![]() (image error) Size: 901 B ![]() ![]() |
Before ![]() (image error) Size: 160 B After ![]() (image error) Size: 224 B ![]() ![]() |
Before ![]() (image error) Size: 417 B After ![]() (image error) Size: 177 B ![]() ![]() |
Before ![]() (image error) Size: 254 B After ![]() (image error) Size: 426 B ![]() ![]() |
Before ![]() (image error) Size: 1.0 KiB After ![]() (image error) Size: 884 B ![]() ![]() |
Before ![]() (image error) Size: 247 B After ![]() (image error) Size: 389 B ![]() ![]() |
Before ![]() (image error) Size: 1.2 KiB After ![]() (image error) Size: 1.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 436 B After ![]() (image error) Size: 400 B ![]() ![]() |
Before ![]() (image error) Size: 684 B After ![]() (image error) Size: 449 B ![]() ![]() |
Before ![]() (image error) Size: 710 B After ![]() (image error) Size: 601 B ![]() ![]() |
Before ![]() (image error) Size: 4.4 KiB After ![]() (image error) Size: 3.9 KiB ![]() ![]() |
Before ![]() (image error) Size: 5.5 KiB After ![]() (image error) Size: 5.5 KiB ![]() ![]() |
Before ![]() (image error) Size: 2.3 KiB After ![]() (image error) Size: 2.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 625 B After ![]() (image error) Size: 491 B ![]() ![]() |
Before ![]() (image error) Size: 880 B After ![]() (image error) Size: 1.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.3 KiB After ![]() (image error) Size: 1.7 KiB ![]() ![]() |
Before ![]() (image error) Size: 97 B After ![]() (image error) Size: 127 B ![]() ![]() |
Before ![]() (image error) Size: 235 B After ![]() (image error) Size: 269 B ![]() ![]() |
Before ![]() (image error) Size: 1.4 KiB After ![]() (image error) Size: 1.1 KiB ![]() ![]() |