Open github-user-1 opened 7 years ago
It might not be as easy as you might think since all HTTP connections are made through the public-transport-enabler library and not directly by Transportr. However, this is definitely something worth looking into.
With https://github.com/schildbach/public-transport-enabler/commit/86b2d5a2f3c8e0a03f8d59cb3dad1b5ee04679e8 this might now be possible.
As far as I can tell there are two ways network connections are used:
setProxy()
function for the AbstractNetworkProvider
this is easy. (I don't think there are any providers that don't extend the AbstractNetworkProvider
, but that needs to be checked)setHttpProxy()
configuration option (and while we are on the subject of staying anonymous, doesn't do any telemetry))Are there any other places where networking takes place that I forgot?
I don't think there are any providers that don't extend the AbstractNetworkProvider
There aren't any.
The new beta uses the Mapbox Android SDK, which has no support for proxies
That is too bad. Maybe someone can make a PR or request proxy support.
and while we are on the subject of staying anonymous, doesn't do any telemetry
Yes, in this regard, the library is better. Unfortunately, it isn't in others. The mapbox telemetry should be disabled however.
Are there any other places where networking takes place that I forgot?
I can't think of any right now.
I can't think of any right now.
There are the reverse geocoder requests in Transportr 2. There's two different geocoders. When Tor is used, the Google one should be blocked and only the one where we control the HTTP request should be used.
@grote does this mean tor support will come in v2? I would really love such a feature.
No it doesn't mean that. It instead means that adding this for all network requests got even more complicated for Transportr v2.
Looks like the map requests can now also be made via Tor: mapbox/mapbox-gl-native#10948
Something nice and straightforward to implement that I would like to see is (optional) support for Tor (via Orbot). It adds some additional level of anonymity and should be (I think) easy to implement - it requires to route through the proxy provided by Orbot (additionally the app could check if Orbot is running already or start it).