In what world does a VPN need access to Camera and Bluetooth?
I am fully aware of what vpn services to use and not. I am not using Express VPN, I am simply doing research for a master thesis, when I came across these results from Express VPN. If you have any ideas or corrections, please let me know why a VPN provider would need to have access to these permissions.
Best practices would not require camera permissions to scan qr codes.
Scan barcodes
Android includes support for the Google Code Scanner API, powered by Google Play services, which allows you to decode barcodes without declaring any camera permissions. This API helps preserve user privacy and makes it less likely that you need to create a custom UI for your barcode-scanning use case.
The API scans the barcode and only returns the scan results to your app. Images are processed on-device, and Google doesn't store any data or scan results.
I'm going to assume they didn't implement this because money. Their app runs on everything, from iOS to Android to Windows. Cost savings they likely just flipped camera permissions and didn't care about small edge cases like these.
With that said, Mullvad is a million times better, cheaper and doesn't require even an email or account creation to use. They created a system that effectively anonymizes the user before they even subscribe.
To be fair, they didn't offer that level of granular control for a while.
If you're a company with development prioritization that makes it difficult to say "we need to take a few weeks of not working of things that make money to reimplement something we already have that works, because of best practices that don't make us any money" then it can be really difficult to make changes like that.
Mate, you need to give access rights to someone. The camera won't open magically. The reality is that it's safer to do everything inside your app, especially when you advertise security.
That's good, but this post is encouraging wrong conclusion. Camera permission is not the problem, instead the problem is VPN having nothing to do with camera. Using VPN configuration files should be the way, or logging into an account securely (ExpressVPN in this case).