5263 Commits

Author SHA1 Message Date
Hans-Christoph Steiner
5043a081a7 update CHANGELOG 2018-04-25 23:17:58 +02:00
Hans-Christoph Steiner
8ab5487daa Merge branch 'weblate' into 'master'
Weblate

See merge request fdroid/fdroidclient!679
2018-04-25 21:20:28 +00:00
Hans-Christoph Steiner
3fcd880848 Weblate 2018-04-25 21:20:28 +00:00
Hans-Christoph Steiner
36b51c506f use separate IntentFilters to make App Links work
The App Links thing is quite strict, all possible scheme/hosts must have
a valid /.well-known/assetlinks.json file that is HTTP 200.

These two URLs are not 200, so they will fail for App Links:
* http://f-droid.org/.well-known/assetlinks.json
* http://www.f-droid.org/.well-known/assetlinks.json
2018-04-25 22:46:42 +02:00
Hans-Christoph Steiner
b1f0f43546 bump targetSdkVersion to 25
We have a lot of work to do to bump to the latest version: #1440
2018-04-25 22:46:42 +02:00
Hans-Christoph Steiner
76150db0c2 Merge branch 'JobIntentService-revamp' into 'master'
JobIntentService revamp

Closes #1426

See merge request fdroid/fdroidclient!678
2018-04-25 20:48:39 +00:00
Hans-Christoph Steiner
2cab890e34 Merge branch 'network-pref-revamp' into 'master'
Network pref revamp

Closes #1381

See merge request fdroid/fdroidclient!677
2018-04-25 20:46:55 +00:00
Hans-Christoph Steiner
fb8cbd04c3 add text description for DisabledAlgorithm and KnownVuln anti-features 2018-04-25 17:29:08 +02:00
Hans-Christoph Steiner
e76aa0390d make Anti-Features list in App Details clickable
This should provide some more info about each anti-feature.
2018-04-25 17:28:43 +02:00
Hans-Christoph Steiner
3a5ecc5e8e do not crash when getting hash of APK that disappears
This changes the logic of Utils.getBinaryHash() to return null on failure
rather than only throwing exceptions.  That makes it easier to handle these
failures where Utils.getBinaryHash() is called.

 #1305
 #855
2018-04-25 17:10:03 +02:00
Hans-Christoph Steiner
94b70608d0 format ApkProvider using Android Studio Ctrl-Alt-L 2018-04-25 11:23:39 +02:00
Hans-Christoph Steiner
80734891a6 Installer instances require an Apk instance, mark @NonNull #1436 2018-04-25 11:13:47 +02:00
Hans-Christoph Steiner
7b66ad4920 don't crash if installerPackageName is null #1436
This will instead lead users with Privileged Extension to the F-Droid
uninstall screen which will probably fail.  But that's better than crashing
in my opinion.

Introduced in c095a85c3dd3c505951bebb52e4ae010c69cc9f9
2018-04-25 11:12:18 +02:00
Hans-Christoph Steiner
e6fb837af0 use JobSchedule to better schedule CleanCacheService
#588
 #1426
2018-04-24 21:09:41 +02:00
Hans-Christoph Steiner
34ac465438 convert ConnectivityMonitorService to JobIntentService #1426 2018-04-24 21:09:41 +02:00
Hans-Christoph Steiner
07ada4e6b2 switch UpdateService to a JobIntentService
closes #1426
2018-04-24 21:09:36 +02:00
Hans-Christoph Steiner
fe260d931c use JobIntentService for CleanCache, DeleteCache, Installer, InstalledApp
This should ensure that these jobs complete before sleep, and also, they
should work more reliably with the new Android 8.0 background restrictions.
https://developer.android.com/reference/android/support/v4/app/JobIntentService.html #1426
2018-04-24 21:05:43 +02:00
Hans-Christoph Steiner
3785aecc26 UpdateService: use data URI rather than custom extra
Just proper Android style.
2018-04-24 21:05:43 +02:00
Hans-Christoph Steiner
94e5519d23 migrate "Only on Wifi" preference to "Over Wi-Fi" and "Over data"
This migrates the old "Only on Wifi" checkbox to something similar with the
new preferences layout.
2018-04-24 20:03:55 +02:00
Hans-Christoph Steiner
9c7d97a379 reschedule UpdateService based on data/wifi/interval preference changes
JobScheduler also take network type into account.

#1381
2018-04-24 20:03:55 +02:00
Hans-Christoph Steiner
5946d198b0 specify network type to JobScheduler based on new wifi/data prefs
#1381
2018-04-24 20:03:54 +02:00
Hans-Christoph Steiner
f8225f3122 update "Only on WiFi" pref to handle very low bandwidth better
This gives a lot more flexibility to the user to cover bandwidth, power,
and privacy issues related to network traffic.  The current implementation
does not represent these prefs as well as it should.  For example, it does
not force the traffic over the preferred network type if the other type is
set to "never".  Instead it just tracks the "unmetered" status of the
active network, and acts based on that.

closes #1381
2018-04-24 20:03:54 +02:00
Hans-Christoph Steiner
ce934d3846 change all Settings from CheckBox to Switch, except "expert"
This follows the Material preferred style using Switches instead of
CheckBoxes for boolean preferences.  This leaves the "expert" preferences
as CheckBoxes to differentiate them, and make them stand out as something
different.
2018-04-24 20:03:54 +02:00
Hans-Christoph Steiner
d0d0c1d62c standardize capitalization in Settings based on Material
https://material.io/guidelines/patterns/settings.html
2018-04-24 20:03:54 +02:00
Hans-Christoph Steiner
801d1693a7 convert "Update Interval" preference to a SeekBar 2018-04-24 20:03:51 +02:00
Hans-Christoph Steiner
f15c85146d fix lint warnings in PreferencesFragment 2018-04-24 18:07:38 +02:00
Hans-Christoph Steiner
50bce42940 switch to com.android.support:preference-v14 for Material themes 2018-04-24 18:07:38 +02:00
Hans-Christoph Steiner
c04a867b9b format preferences.xml with Android Studio Ctrl-Alt-L 2018-04-24 18:02:38 +02:00
Hans-Christoph Steiner
40635c36e5 rename Preferences constants to be readable, Java style 2018-04-24 18:02:38 +02:00
Hans-Christoph Steiner
16d15a358d include signer fingerprint in Apk instance created from a file 2018-04-24 18:02:38 +02:00
Hans-Christoph Steiner
ba2f1e1919 document AppListActivity 2018-04-24 18:02:38 +02:00
Hans-Christoph Steiner
4ff4f8056f Merge branch 'remove-gradle-witness' into 'master'
update to Gradle Android Plugin v3.0 semantics, remove gradle-witness

See merge request fdroid/fdroidclient!604
2018-04-24 16:01:07 +00:00
Hans-Christoph Steiner
b3bd4ff2f7 stop forcing Java 1.7, it is the oldest supported version now
This was introduced in 2014:
2f9c3b805675f02653a433637b33188b61f90c1e
2018-04-23 12:57:27 +02:00
Hans-Christoph Steiner
40fdccf262 purge gradle-witness until it is compatible with 'implementation'
https://github.com/signalapp/gradle-witness/issues/27
2018-04-23 12:57:18 +02:00
Hans-Christoph Steiner
518537f23a purge broken Javadoc generation that is very out of date
Introduced in 2014 to keep ant compatibility:
b3107eb6b249c9b1d595b32ea177f60b6040c709
2018-04-23 12:33:24 +02:00
Hans-Christoph Steiner
96e10d7bf1 migrate dependencies to new Gradle Android Plugin 3.0 terms
Fixes this warning:

WARNING: Configuration 'compile' is obsolete and has been replaced with
'implementation' and 'api'.  It will be removed at the end of 2018. For
more information see:
http://d.android.com/r/tools/update-dependency-configurations.html

https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html
2018-04-23 12:33:22 +02:00
Hans-Christoph Steiner
9f839bcca7 purge obsolete block in settings.gradle
missed this in dd169069823720a57d04a53b7e317e67cf55cf55
fdroid/fdroidclient!676
2018-04-23 12:31:28 +02:00
Hans-Christoph Steiner
b15fff082e force disk space calc to Long on < android-18
closes #1424
2018-04-23 11:46:31 +02:00
Hans-Christoph Steiner
8903a089ba Merge branch 'minSdkVersion-to-android14' into 'master'
The Great Upgrade to minSdkVersion 14!

Closes #1379, #1383, and #248

See merge request fdroid/fdroidclient!676
2018-04-23 08:16:46 +00:00
Hans-Christoph Steiner
71f7762521 remove unused NFC-ish <intent-filter> with lint error
Looks like an aborted effort to do:
https://developer.android.com/guide/topics/connectivity/nfc/nfc.html#mime
2018-04-19 16:36:35 +02:00
Hans-Christoph Steiner
15b0736252 new lint is more aggressive about erroring on upper case URI schemes 2018-04-19 16:29:53 +02:00
Hans-Christoph Steiner
7b679ef57c new version of lint is more aggressive at announcing UnusedResources
These are in fact needed:

  /export/share/code/fdroid/client/app/src/main/res/values/dimens.xml:25: Error: The resource R.dimen.fixed_width_padding appears to be unused [UnusedResources]
      <dimen name="fixed_width_padding">2dp</dimen>
             ~~~~~~~~~~~~~~~~~~~~~~~~~~
  /export/share/code/fdroid/client/app/src/main/res/values/styles.xml:162: Error: The resource R.style.SwapTheme_StartSwap appears to be unused [UnusedResources]
      <style name="SwapTheme.StartSwap" parent="AppThemeLight">
             ~~~~~~~~~~~~~~~~~~~~~~~~~~
  /export/share/code/fdroid/client/app/src/main/res/values/styles.xml:166: Error: The resource R.style.SwapTheme_StartSwap_Text appears to be unused [UnusedResources]
      <style name="SwapTheme.StartSwap.Text" parent="@style/SwapTheme.StartSwap">
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2018-04-19 16:27:41 +02:00
Hans-Christoph Steiner
898c731fcc don't run checkstyle or pmd on zipsigner, the format is too different
If someone wants to clean this up, feel free...
2018-04-19 16:19:21 +02:00
Hans-Christoph Steiner
4e4dd2385b reformat all zipsigner code with Android Studio Ctrl-Alt-L 2018-04-19 16:18:24 +02:00
Hans-Christoph Steiner
a3d9850a42 update to latest robolectric 3.8 and mockito 2.7.22
http://robolectric.org/getting-started/#building-with-gradle
2018-04-19 15:51:44 +02:00
Hans-Christoph Steiner
14474aed01 reenable line length errors on ProperMultiRepoUpdaterTest 2018-04-19 15:51:44 +02:00
Hans-Christoph Steiner
e00fe0dcda switch to latest official BottomNavigation release
#1379
2018-04-19 15:51:44 +02:00
Hans-Christoph Steiner
5c6c54cadf switch from spongycastle to latest official bouncycastle
#1379
2018-04-19 15:51:44 +02:00
Greg Leach
dd2f43dcde Make sure to close streams when done with them.
488f8cd3b4

closes #1383
2018-04-19 15:51:44 +02:00
Hans-Christoph Steiner
dd16906982 move zipsigner into this app, its not maintained anywhere else 2018-04-19 15:51:44 +02:00