5085 Commits

Author SHA1 Message Date
Hans-Christoph Steiner
35471db83c always use sanitized URI from ApkFileProvider in install process
The previous commit makes this issue a lot easier to see. ApkFileProvider
getSafeUri() was already making the right URI for SDK_INT < 24, but then
this bit of logic was using the original URI, which didn't work. Installing
from the app's cache dir triggered a "Parse Error".  The Android default
installer API needs file:// URIs from getFiles().

closes #1310
2018-03-21 19:30:22 +01:00
Hans-Christoph Steiner
72fcc3d2c5 clean up content:// vs file:// logic in installation process
This hopefully makes apparent which pieces are only related to APKs, and
which pieces are used for all installable file types (media, OTA ZIPs, etc)

ExtensionInstaller only works on < android-20 anyway, so that's self-
enforcing in terms of URI scheme: it'll only ever see file:// URIs.
2018-03-21 19:30:22 +01:00
Hans-Christoph Steiner
32e5471d6c Merge branch '1.1-bug-fixes' into 'master'
1.1 bug fixes

Closes #1270

See merge request fdroid/fdroidclient!655
2018-03-20 19:03:20 +00:00
Marcus
ce0dfa48f9 Merge branch 'launch_crash_fix' into 'master'
don't crash when launching an app that isn't installed

See merge request fdroid/fdroidclient!656
2018-03-20 17:49:17 +00:00
Marcus Hoffmann
f32ed1eaed
don't crash when launching an app that isn't installed
This fixes the following crash:

* Install an app form F-Droid
* go to home screen
* uninstall app
* quickly switch to F-Droid the button will still show 'run' for a few
seconds
* launch the app you just uninstalled
2018-03-20 18:21:24 +01:00
Hans-Christoph Steiner
f52194ef7e Merge branch 'weblate' into 'master'
Weblate

Closes #1270

See merge request fdroid/fdroidclient!657
2018-03-20 16:56:13 +00:00
Hans-Christoph Steiner
806580acd3 Weblate 2018-03-20 16:56:13 +00:00
Hans-Christoph Steiner
dbfac03b52 sync AppUpdateStatusManager docs and varnames to InstallManagerService 2018-03-20 13:49:34 +01:00
Hans-Christoph Steiner
7c1e2ee09c actually remove Updates entries when they are swiped away 2018-03-20 13:49:34 +01:00
Hans-Christoph Steiner
52d09e6418 do not set cached APKs as ReadyToInstall if they are already installed
If an APK is already installed, and it is still in the cache, it should
never be marked "Ready to Install".

#1271
2018-03-20 13:49:34 +01:00
Hans-Christoph Steiner
23822cc247 switch English string to string resource
closes #1270
2018-03-20 13:49:34 +01:00
Hans-Christoph Steiner
9ffab6db0c Merge branch 'fix-detail-icon' into 'master'
fix-detail-icon

See merge request fdroid/fdroidclient!654
2018-03-19 14:14:13 +00:00
hotlittlewhitedog
e272badf8e fix-detail-icon
modified:   app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java
2018-03-10 22:10:54 +01:00
Hans-Christoph Steiner
9cf98ae158 Merge branch 'panic-app-list-crash' into 'master'
Prevent crash on screen rotation when showing panic app selector

See merge request fdroid/fdroidclient!652
2018-03-09 08:10:51 +00:00
Torsten Grote
50056317df
Prevent crash on screen rotation when showing panic app selector 2018-03-08 19:00:04 -03:00
Hans-Christoph Steiner
29a3016bd4 update CHANGELOG 1.1-alpha4 2018-03-08 00:11:37 +01:00
Hans-Christoph Steiner
10db3bc057 version code 1001004 2018-03-08 00:09:09 +01:00
Hans-Christoph Steiner
a74c68afd4 Merge branch 'ui' into 'master'
slight changes to the user interface

fdroid/fdroidclient!646
2018-03-07 23:58:24 +01:00
Hans-Christoph Steiner
016e65375e pre-compress and strip EXIF from all PNGs in app
This makes the build reproducible, and makes the files smaller.

 metadata/en-US/images/phoneScreenshots/screenshot-dark-details.png   | Bin 358916 -> 309386 bytes
 metadata/en-US/images/phoneScreenshots/screenshot-dark-home.png      | Bin 277413 -> 224844 bytes
 metadata/en-US/images/phoneScreenshots/screenshot-dark-knownvuln.png | Bin 158903 -> 123484 bytes
 metadata/en-US/images/phoneScreenshots/screenshot-knownvuln.png      | Bin 66707 -> 41670 bytes
2018-03-07 23:57:42 +01:00
Hans-Christoph Steiner
068e0d1a7e recompress screenshots using zopflipng, strip using exiftool
This makes them as small as possible.
2018-03-07 23:57:27 +01:00
Hans-Christoph Steiner
a7ebb7827a Merge branch 'more-crash-fixes' into 'master'
More crash fixes

Closes #1332

See merge request fdroid/fdroidclient!651
2018-03-07 22:08:51 +00:00
Hans-Christoph Steiner
40d6ffeb49 remove odd black border from screenshot-knownvuln.png
This is the only screenshot that shows the Updates tab in detail.
2018-03-07 23:07:44 +01:00
Hans-Christoph Steiner
29c70d998e Revert "remove image with an odd black border from the app metadata"
This reverts commit 8df7781eed17f3d10981fefc6fd741c16af856f5.
2018-03-07 23:01:48 +01:00
Hans-Christoph Steiner
215db81802 use warning suggestions for .addAll() method and null guard 2018-03-07 22:51:39 +01:00
Hans-Christoph Steiner
5547f12527 actually fix crashes from update notifications on < android-11
8600ce8d8a56398a4eb731f0cccb848c4e18d2eb didn't get all the affected places.

#1306
2018-03-07 22:51:39 +01:00
Hans-Christoph Steiner
978f4a2928 ignore potential filesystem corruption
As nice as it would be to help the users, F-Droid is not well positioned to
help the user with this problem.  The Android OS itself should do it. Plus
this issue has been open a long time, without much work on it, and the
existing solution is causing crashes.

#855
!440
!581

Utils.getBinaryHash() is used in a lot of places in the code, so its not
easy to handle this specific issue.  Here's one example:

org.fdroid.fdroid.Utils$PotentialFilesystemCorruptionException: java.io.IOException: read failed: EIO (I/O error)
	at org.fdroid.fdroid.Utils.getBinaryHash(Utils.java:426)
	at org.fdroid.fdroid.AppUpdateStatusService.findApkMatchingHash(AppUpdateStatusService.java:159)
	at org.fdroid.fdroid.AppUpdateStatusService.processDownloadedApk(AppUpdateStatusService.java:110)
	at org.fdroid.fdroid.AppUpdateStatusService.onHandleIntent(AppUpdateStatusService.java:65)
	at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:137)
	at android.os.HandlerThread.run(HandlerThread.java:60)
2018-03-07 22:51:39 +01:00
Hans-Christoph Steiner
b9144cc95d fix pedantic warnings in Provisioner.java to make null warnings clear
The NullPointerException fixed by the previous commit had a warning to that
effect.  This fixes almost all the warnings to make the warnings clearer:

* unused method
* unused result of File.delete()
* can have reduced visibility
* single char static "" strings can be '' chars
2018-03-07 22:51:39 +01:00
dkanada
64863bb1e1 add new screenshots for knownvuln replacement 2018-03-07 12:02:22 -07:00
dkanada
b4620bd0b6 fix right padding on version list 2018-03-07 12:02:22 -07:00
dkanada
8df7781eed remove image with an odd black border from the app metadata 2018-03-07 12:02:22 -07:00
dkanada
74bf125ccb modify layouts for donation buttons 2018-03-07 12:02:22 -07:00
dkanada
cf7b786054 wrap donate linear layout in a card view 2018-03-07 12:02:22 -07:00
dkanada
80915589ee improve UI for screenshots with dark theme 2018-03-07 12:02:22 -07:00
Hans-Christoph Steiner
dffac4e797 fix boot crash when Provisioner can't find ExternalFilesDir
closes #1332
!630
2018-03-07 16:46:18 +01:00
Hans-Christoph Steiner
6055874d9d do not crash if file vanishes during getBinaryHash()
APKs can be deleted at any time, either by being uninstalled or deleted
from the cache.
2018-03-07 16:46:17 +01:00
Hans-Christoph Steiner
86cc977746 Merge branch 'weblate' into 'master'
Weblate

See merge request fdroid/fdroidclient!650
2018-03-06 23:20:12 +00:00
Hans-Christoph Steiner
a0624639fc Weblate 2018-03-06 23:20:12 +00:00
Hans-Christoph Steiner
6bb8d5e92b a couple languages don't use "other" in plurals: be pl ru 2018-03-06 23:44:30 +01:00
Hans-Christoph Steiner
70370f5d88 LocalizationTest: hiding_dialog_message has new pattern: sds 2018-03-06 23:39:47 +01:00
Hans-Christoph Steiner
c76f7addd1 LocalizationTest: increase quantity test to 567 to test the whole range 2018-03-06 23:39:47 +01:00
Hans-Christoph Steiner
6ad3604a0e Merge branch 'afWarningQrCodeScan' into 'master'
* jif-afWarningQrCodeScan:
  do not include english string in translations
  Correct check style errors
  Add style for the poor QR code scanning autofocus capability warning
  Add 'poor QR code scanning capability' translations
  Call to the camera autofocus checker in the view
  Add camera characteristics checker

fdroid/fdroidclient!649
closes #260
2018-03-06 16:35:28 +01:00
Hans-Christoph Steiner
1ef1128cf7 do not include english string in translations 2018-03-06 15:15:43 +01:00
Hans-Christoph Steiner
7d45781611 Merge branch 'fix-download' into 'master'
fix download progress for large apps

Closes #1192

See merge request fdroid/fdroidclient!647
2018-03-06 14:04:54 +00:00
jif
3bf167e85f Correct check style errors 2018-03-01 20:52:13 +01:00
jif
6b484f4f01 Add style for the poor QR code scanning autofocus capability warning 2018-03-01 18:47:14 +01:00
jif
80b5addf62 Add 'poor QR code scanning capability' translations 2018-03-01 18:44:57 +01:00
jif
6d1fc68ff1 Call to the camera autofocus checker in the view 2018-03-01 18:40:30 +01:00
jif
b419b78c94 Add camera characteristics checker
Those classes consist of 1 abstract class, which provide a factory for
2 classes each of which implements different behaviors according to
the Android API version.
2018-03-01 18:35:45 +01:00
dkanada
1facc7d07c rename version layout 2018-02-27 22:40:19 -07:00
dkanada
216695285a fix int overflow 2018-02-27 22:38:54 -07:00