VPN Clients for the Project Guardian's Android VPN product
$ git submodule update --init --recursive
DEPRECATED - Mozilla VPN for Android
Home Page: https://vpn.mozilla.org
License: Mozilla Public License 2.0
app-preview-debug-118
logcat: https://drive.google.com/file/d/1qJvKzLpZ2br4vvQ_nA6qHnHIeBmS_czW/view?usp=sharing
Steps to reproduce
Firefox VPN preview's and Firefox VPN app's autograph token to sign android app
followup - https://bugzilla.mozilla.org/show_bug.cgi?id=1586185
Follow up of https://bugzilla.mozilla.org/show_bug.cgi?id=1586268
When listing android app on Playstore , Playstore needs app's description ,icons in place.
refer: https://wiki.mozilla.org/Release_Management/Adding_a_new_app_on_Google_play
This is just a wording concern.
I've noticed two things when using FPN:
(1) After I've had FPN connected for a while (many hours, I think?), it tends to automatically disconnect for some reason. (I'm not sure if this is common or it's just me -- it's possible it's due to my "Google Fi" VPN automatically co-opting my phone's VPN configuration after some period of time, and forcing FPN off?)
(2) Whenever I become disconnected, I get an Android notification saying:
VPN is off
You disconnected
I'm specifically filing this bug about that wording.
MY CONCERN:
The phrase "You disconnected" sounds like it's saying that I took some action that resulted in the VPN disconnecting. This is often incorrect, & it can cause confusion. ("Wait, it says You disconnected
, but I don't remember disconnecting... Did I accidentally mash the button? [no, I did not]")
SUGGESTION: Reword this language to something clearer, that doesn't imply that I personally/intentionally took any action.
For example, maybe it should say:
Android has an Always-On VPN mode which can be turned on by the user via System VPN settings.
Android can start a VPN service when the device boots and keep it running while the device is on. This feature is called always-on VPN and is available in Android 7.0 (API Level 24) or higher. While Android maintains the service lifecycle, it’s your VPN service that’s responsible for the VPN-gateway connection. Always-on VPN can also block connections that don’t use the VPN.
Currently, Mozilla VPN doesn't work well when "always-on" is enabled in system Settings. It simply doesn't work - service isn't started on boot, and Android displays a persistent notification telling the user that VPN app isn't configured correctly.
Because the system (and not a person) starts and stops an always-on connection, you need to adapt your app’s behavior and user interface:
1) Disable any UI that disconnects the connection because the system and Settings app control the connection.
2) Save any config between each app start and configure a connection with the latest settings.
Because the system starts your app on demand, the person using the device might not always want to configure a connection.
For (2), we already persist all of the relevant configurations (selected server config, etc).
For (1), the user experience is such that when user manually disables the VPN from the app, Android will display a persistent notification telling the user that the VPN app is disconnect. I think that since the notification is obviously directly connected to the user action within the app, it's okay if we allow user to manually disable VPN from the UI (that is, don't change any of the current UIs).
We have no clear way to detect that "always-on" mode is enabled. When it's enabled, our VPN service will be started without any extra flags. This is what Android docs suggest we use as a way to determine if we've been started by the system - always add extra flags when we're starting it from within the app.
We support API23+, and there's no "always-on" functionality on API23. We'll need to make sure we behave sensibly there.
If custom tabs are possible with the selected browser, auto-close them and return the user to the VPN application.
STR:
(1) Wait until the Play Store shows that you've got an update available for Firefox VPN. (Don't update yet, though)
(2) Open the Firefox VPN app and connect.
(3) Switch to Google Play Store, and accept the Firefox VPN app update.
ACTUAL RESULTS:
Firefox VPN silently disconnects (and its icon in your Android tray disappears). It don't get any notification or warning that I'm unprotected.
EXPECTED RESULTS:
Not sure what's feasible, but we should avoid silently disconnecting, if at all possible. e.g. perhaps (if doable):
STR:
(1) Have a Garmin watch, configured to show you notifications from your Android apps on your phone.
(2) Open the Mozilla VPN app and click the slider to connect.
(3) Wait a little bit (optional), and then click the slider again to disconnect.
ACTUAL RESULTS:
EXPECTED RESULTS:
To the extent that our notifications are sent to smart watches, we should make sure they show the right message.
(I'm guessing this has to do with us inadvertently misusing some piece of the Android persistent-notification API.)
The pull requests and issues need to be closed (and transferred when appropriate).
I can't find the new repo. Is it private?
Sample UserAgent string from Windows client
Guardian / 0.2 (Microsoft Windows NT 10.0.17763.0; x64)
We need confirmation from the product side that how much information we need from the client
Guardian/0.2_219(Android 9.0; arm64-v8a)
Suggest including the build number(219) as well.
ABI(arm64-v8a) is useful, but we can always get the quantitative data from Google Play Console. Is it required? @chrismore
No idea how this happened, but my Firefox VPN on Android got into a broken/misleading state today.
Details:
follow up of https://bugzilla.mozilla.org/show_bug.cgi?id=1586267
when listing android app on Playstore , Playstore needs app's description ,icons in place.
refer: https://wiki.mozilla.org/Release_Management/Adding_a_new_app_on_Google_play
This was reported to me via a side-channel:
the android studio output showed the following for the :libwg:externalNativeBuildDebug task compile: version "go1.12" does not match go tool version "go1.13.3" go1.13.3 was downloaded and used in the compilation process and is not the systems golang version
Not sure if this is a missing upper bound on software deps and/or an assumption built into the build process, but worth having knowledge to ensure everything stays in sync.
Reference from Figma 303,304, would you also provide other redirects, please?
Contact us
Help & Support
Terms of Service
Privacy Policy
if after opening the vpn client after a previous Internet connection and pull from the Guardian API, cache the server list until the next connection is made and then refresh it. This will prevent the client from showing a blank list and in some cases, the VPN will be able to get through a firewall with the WireGuard UDP even if it isn't able to pull the list from the Guardian API.
STR:
ACTUAL RESULTS:
A ready-to-send email is populated for me, addressed to the literal email address "[email protected]".
EXPECTED RESULTS:
The email should be populated either with an empty email address, or with a legitimate Mozilla email address.
Steps To Reproduce
Expected behavior
Actual behavior
4. back to welcome page
Device info (please complete the following information):
Reproduce rate
8/8
Additional context
need product effort to define flow
Usually, I can say "Google, help me find my phone" to my Google Home and my phone will ring. This doesn't work when Mozilla VPN is on. It doesn't work even if I mark the Find my Device application as Unprotected.
It seems that Android can never connect to the device when the VPN is on. So you cannot lock, ring, or erase the device from https://www.google.com/android/find
Steps to reproduce
Cut network connect with no internet. I was able to replicate this on airplane wifi where I was connected to wifi AND not really be on the internet
Open the FPN VPN on Android
See main interface with on/off switch. Denote a blank server list.
Attempt to connect
Expected results
No connection attempted
Actual Results
On/off switch functional. Says connected and disconnected states, but since the sever list is blank and there is no connection, it is not real
I would recommend we:
a) Cache the server list from the previous connect (unless this is a new install and there will be no default list (issue #158)
b) If the server list is blank, disable the on/off toggle button and display an error message saying no Internet connection is available.
I'm in the UK and I can't download the Mozilla VPN app.
I'm not sure if it's because the MozillaVPN app has been disabled in the UK or if it's because google believes I'm in another country.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.