This means that sometimes the NearbyView is updated from a
BroadcastReceiver's Context, which is not an Activity. So this has to
try a little harder to fetch the Activity instance needed for the
prompt to request permissions to a folder on the USB. This adds a
failsafe to fallback to the file:/// scanning in SDCardScannerService.
The USB-OTG device can be plugged and unplugged anytime, so the Nearby view
should be updated each time the user switches to this screen. Registered
callbacks should handle updating the USB-OTG status while the Nearby view
is active.
This disables the verification of .pom files. .pom files can add
dependencies, so it would be good to have them verified. But since this
current setup requires all JAR to be verified, any new dependencies would
fail anyway:
https://docs.gradle.org/current/userguide/dependency_verification.html#sec:disabling-metadata-verification
In some cases everything works fine, like on gitlab-ci, and in other places
it always gives errors like this:
```
A problem occurred configuring root project 'client'.
> Dependency verification failed for configuration ':classpath'
4 artifacts failed verification:
- all-1.2.0.pom (com.sun.activation:all:1.2.0) from repository MavenRepo
- jvnet-parent-1.pom (net.java:jvnet-parent:1) from repository MavenRepo
- oss-parent-7.pom (org.sonatype.oss:oss-parent:7) from repository MavenRepo
- oss-parent-9.pom (org.sonatype.oss:oss-parent:9) from repository MavenRepo
This can indicate that a dependency has been compromised. Please carefully verify the checksums.
Open this report for more details: file:///home/hans/code/fdroid/client/build/reports/dependency-verification/at-1603359642220/dependency-verification-report.html
```
@glennmen and @eighthave both are getting that error.
* fdroidserver uses case-sensitive naming since it is based on GNU/Linux
filesystems, which are case-sensitive by default.
* "the application ID looks like a traditional Java package name, the naming
rules for the application ID are a bit more restrictive"
https://developer.android.com/studio/build/application-id
* Java is a case-sensitive language for all names used in .java files:
"In the Java programming universe, case-sensitive String keys are ubiquitous"
"Java package names... are case-sensitive"
https://docs.oracle.com/javase/8/docs/technotes/guides/preferences/designfaq.html