Giter Site home page Giter Site logo

ivpn / android-app Goto Github PK

View Code? Open in Web Editor NEW
309.0 309.0 53.0 176.58 MB

Official IVPN Android app

Home Page: https://www.ivpn.net/apps-android

License: GNU General Public License v3.0

Java 21.38% Kotlin 21.63% C 29.14% CMake 0.75% C++ 3.04% Makefile 1.98% Batchfile 0.83% Shell 14.01% AGS Script 0.54% Assembly 2.49% M4 0.71% xBase 3.10% Perl 0.28% Go 0.12%
android ivpn privacy security vpn vpn-client

android-app's People

Contributors

alexkorvin avatar dependabot[bot] avatar jurajhilje avatar lazytownfan avatar poussinou avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

android-app's Issues

error in compile

i get this error in compile time

executing external native build for cmake C:\android-app\app\CMakeLists.txt
Affected Modules: Project-android-app-app

i use android studio 4 and windows 10

this is my cmake file:

cmake_minimum_required (VERSION 3.4.1)
project(IVPN)

add_subdirectory(tools)
add_subdirectory(src/main/cpp)

i think tools directory is problem i can not find it

App randomly disconnecting from VPN

Bug report

Describe your environment

  • Device: OP5T
  • OS name and version: 10
  • IVPN app version: 1.68

Describe the problem

The app will randomly disconnect from VPN. Last time this happened I was actively using my phone, the device vibrated twice and I noticed a notification from always-on agent:

Screenshot_1

Notice the notification above - IVPN is supposedly "still connected". This is not correct and can be verified by looking up one's IP address. At this time, the device was not connected to VPN anymore.

Steps to reproduce:

  1. connect to IVPN & make sure always-on VPN is enabled
  2. ??? let time pass
  3. observe the always-on notification appearing signalizing you're no longer connected. Alternatively, check your public IP from time to time.

Observed Results:

Additional screenshot shows my battery optimization setting:

Screenshot_2

Expected Results:

  • What did you expect to happen?
    VPN should stay ON at all times. If not, the notification of connection must disappear.

Logging in with a non activated account doesn't present the IVPN plans

###Description
In the current Google Play Store build, 2.3.0, when attempting to login with a non activated account, the plans are not presented, the user is redirected to the home screen, but without logging in.

Actual result:

Logging in with a non activated account doesn't present the IVPN plans.

Expected result:

When a user tries to login with a non activated account, the Select IVPN Plan screen should be presented, so the user can continue with the account creation flow.

Environment:

Devices, OS: Samsung G S10/Android 10, Huawei MediPad T5/Android 8
IVPN app version: 2.3.0

'Color theme by battery saver' not working on old devices

Description:

On version 2.4.1, so far on Android 8 devices, the option 'Color theme by battery saver' does not work. When setting this option and enabling 'Battery saver' in the device, the app still uses light mode instead of dark mode.

Note:
So far only reproduced on Android 8 OS devices.

Actual result:

'Color theme by battery saver' not working old devices.

Expected result:

'Color theme by battery saver' should work as expected, i.e. Dark mode when Battery Saver is enabled in the device, otherwise, light mode.

Steps to reproduce:

  1. Install 2.4.1 on an Android 8 OS device.
  2. Login.
  3. Select 'Color theme by battery saver'.
  4. Enable 'Battery Saver' in the device.
  5. Open the IVPN app and observe that light mode is used.

Environment:

IVPN: 2.4.1
Devices: Xiaomi Redmi 5/Android 8.1, Huawei MediPad T5/Android 8

Refactoring

Bug report

Describe your environment

  • Device: All
  • OS name and version: >5.0
  • IVPN app version: 2.5.0

Describe the problem

Needs code improvements:

  1. Merge v1 and v2 folders;
  2. Rewrite preferences;

No crash reports in some cases.

Bug report

Describe your environment

  • Device: Pixel 3
  • OS name and version: 11
  • IVPN app version: 2.4.0

Describe the problem

Steps to reproduce:

  1. Crash the app in any way

Observed Results:

No crash logs in the Sentry

Allow android app to be installed on external storage

Feature request

Description

Allow android app to be installed on external storage.

Describe the solution you'd like

Allow android app to be installed on external storage.

Describe alternatives you've considered

None. My phone isn't rooted and has "only" 4GB internal memory, which has been progressively hogged by the system over time. I move all apps i can to external storage SDCard but quite a few don't allow this. I know it's not just a matter of changing the manifest: on certain conditions external storage gets unmounted. Still, i'd very much prefer to move apps to external storage whenever possible.

Use same fastest server configuration for OpenVPN and WireGuard

Description:

Currently, each protocol can have a different fastest server configuration to be used as the fastest servers.

The fastest server configuration should be the same for all protocols, so even if the server lists differs, if user deselect one location, it should be saved for all protocols.

Note:
Already implemented on iOS.

Prevent users from enable/disable IPv6 for WireGuard while connected

Description:

Currently, it is possible to enable or disable IPv6 for WireGuard while connected, however these changes won't take effect unless the user reconnects manually. This behavior could lead to confusion since once the users enable the feature, they will expect it to work immediately.

Expected result:

If the user attempts to enable/disable IPv6 for WireGuard while connected to the VPN, perform one of the following:

  • Ask the user to disconnect first (simplest solution and consistent with similar scenarios).
  • Reconnect either automatically or ask the user to reconnect in a dialog with two action buttons 'Reconnect' + 'Cancel'.

2.4.0 crashes when connecting on MIUI 12 device

Bug report

Describe your environment

  • Device: MI Pocophone F1 USA Xiomi
  • OS name and version: MIUI 12
  • IVPN app version: 2.4.0

Describe the problem

The IVPN App for Android crashes when initiating a VPN connection soon after launching the app.

It is possible to open the app and check/adjust settings without crashing. It also seems possible to launch the app, wait for three minutes, then connect without crashing.

Steps to reproduce:

  1. Launch the IVPN App.
  2. Connect via OpenVPN (single-and Multi-hop) or WireGuard.

Observed Results:

Crash logging is enabled, but no logs are received.

Phone reports that IVPN app keeps stopping. If app is open it just disappears and phone app launcher screen appears.

Expected Results:

The app connects and operates normally. No issues were present on the same device with 2.3.0 site APK.

Relevant Code:

n/a

Tapjacking protection

Feature request

Description

I don't think I need any descriction for this issue. Tapjacking protection is absolute need of any app which can have any possibility of finance related activity.

Auto-connect Feature

Feature request

Description

Currently I cannot set IVPN to remain connected always without giving location access for Network protection.

Describe the solution you'd like

There should be option to remain connected even when we are connected to any network or not. App should automatically reconnect every time device has network. Current settings should stay but option of Auto-connect should be introduced, which may include connect on boot also.
(Hopefully I am not missing anything..)

Firewall activated via Network Protection does not block traffic in certain cases

Description:

The Firewall stops blocking the traffic after manually disconnecting from the VPN server, then connecting and disconnecting from the VPN server again while being on 'Untrusted network' and having the 'Enable kill-switch' option checked in Network Protection Rules area.

Although 'Kill-switch active' notification is displayed, the Internet access is not blocked.

The issue does not seem to occur when the 'main' Killswitch is toggled 'On'.

Steps to reproduce:

  1. Activate Network Protection and have 'Enable kill-switch' option checked for 'Untrusted networks.
  2. Connect device to an 'Untrusted network' - the app connects to the VPN and enables the Firewall as expected.
  3. Manually disconnect from the VPN - the Firewall is blocking the traffic as expected.
  4. Reconnect to the VPN server, then disconnect back - the app's notification shows the Firewall is enabled but traffic is not blocked.

Environment:

Device, OS: Samsung G S10/Android 11, Huawei MediPad T5/Android 8
IVPN version: 2.3.0

Sort servers by proximity

Description:

To keep consistency across all clients, we need to add sorting by proximity. This has already been implemented on iOS and Desktop clients.

Screenshot from iOS:

servers by proximity

Allow LAN access with VPN on

Feature request

Allow LAN while being connected to VPN

Description

This is so that I can connect for example youtube app to chromecast/google tv etc. while still being behind vpn. Currently, I either need to disable vpn or turn off vpn access for specific apps for lan access. (Hope I'm not missing something obvious :D )

Describe the solution you'd like

This already seems to work in the linux cli app with ivpn firewall -lan_allow. So I guess something similar to that.

Describe alternatives you've considered

Currently, I either need to turn off VPN or disable VPN access for some apps, which would be really nice to avoid :)

IPv6 inside WireGuard tunnel

Description

Allow users access to the IPv6 internet after they connect to the WireGuard VPN.

In current clients, WireGuard [Interface] is only configured with IPv4 address.
By adding IPv6 address in the client config, VPN tunnel will have IPv6 traffic as well, when connected to gateway which support IPv6.

Example client config:

[Interface]
Address = 192.0.2.0,2001:0db8:0:0::2001:0db8/64
ListenPort = 51820
PrivateKey = <PrivateKey>
DNS = 198.51.100.0

[Peer]
PublicKey = <PublicKey>
AllowedIPs = 0.0.0.0/0,::/0
Endpoint = 203.0.113.0:2049
PersistentKeepalive = 25

There should be an option in the app settings that enables IPv6 inside VPN tunnel, which is off by default.

App connects without WG key when connecting to an untrusted network

Description:

Currently If the current network is set to untrusted and the app fails to regenerate a WG key because of e.g. no internet connection (airplane mode for testing), once you reestablish the connection, the app will not generate a new key upon connecting automatically (because trust status), so the app will be connected to the VPN without a key, consequently there will be no internet traffic on the device.

Actual result:

When WG rotation fails, the app will connect without WG key when connecting to an untrusted network

Expected result:

The app should present an error and remain disconnected, so the user can connect manually and regenerate the new key.

Steps to reproduce:

  1. Install 2.4.1.
  2. Login.
  3. Enable Network Protection + set current network to untrusted.
  4. Enable Airplane mode.
  5. Disconnect from the VPN.
  6. Attempt to regenerate manually a new key - it fails, so the app removes the old key.
  7. Disable Airplane mode.
  8. Observe that the app connects to the VPN (due to untrusted status), but there is no internet traffic.
  9. When going to the WG details screen, it is observed that the new key is not generated.

Environment:

IVPN: 2.4.1
Devices: Samsung Galaxy S10, Android 11

Feature Request Android- "Mock Location"

-Hello @AlexKorvin @jurajhilje I have another feature request for the Android version of IVPN if you don't mind.

1.) Is there any plans to utilize or introduce the Mock Location feature under Android Developer Settings?

-If a feature such as GPS Override ("Mock Location") is supported and enabled within the IVPN application.
-Any app on your Android device that requests access to your physical coordinates will be overridden by the coordinates of a selected VPN server when in use.

-For example, say a user is physically located in the USA and is connected to one of IVPN's servers in Switzerland. Whenever any app on there Android device asks for their location it will now receive the location of the VPN server in Switzerland as opposed to their actual GPS location in the USA.

-One current and well known vpn service called ''Surf Shark" offers this feature already, and it already works on there Android version of there VPN application. I tested there service and utilized this feature and it was easy to enable under developer options. They included easy to follow step by step instructions how to enable the feature.

-I used it on two diffrent Android phones and two diffrent versions of Android. Versions being Android 9 pie and Android 10 Q. The feature worked seamlessly and didn't leak my location ever, and matched the same location of the server I was connected too.

-Overall I think its a useful feature and better then having to use a third party app alongside your vpn to spoof your GPS Location.

-Thank you and I hope I explained everything well enough. I hope to hear back from someone here soon.

Black screen when interacting with Android app on ChromeOS

Bug report

Describe your environment

  • Device: ChromeBox
  • OS name and version: ChromeOS release version: 13729.72.0, Chrome version: 89.0.4389.116, ChromeOS Arc Android SDK version: 28
  • IVPN app version: 2.3.1 Google Play Store release

Describe the problem

There is one report of an issue with the IVPN App for Android on ChromeOS where the app's screen goes black when there is any interaction with the app. It is possible to install the app and log in, but connecting or adjusting any settings results in a black screen. The map and actual location are displayed, but toggling the connect switch causes the screen to go black. It is possible to open the app's Settings screen, but any interaction causes the black screen. Changing the app's theme results in a black screen.

Steps to reproduce:

[I do not have a ChromeOS device to use to try to replicate the issue.]

Observed Results:

  • Any tapping-based interaction with the IVPN App causes a black screen.
    IVPN3

Expected Results:

  • There would be no black screen and the IVPN App would connect and be configurable as expected.

Relevant Code:

n/a

IPv6 connection information

Description

IVPN apps load connection information from IVPN API server (https://api.ivpn.net/v4/geo-lookup), in several cases:

  • After app is launched
  • After VPN is connected
  • After VPN is disconnected

Current apps only load IPv4 information.

New version of apps will call /geo-lookup API with both IPv4 and IPv6 IP addresses by default.

Control panel IPv4/IPv6 tabs

When both IPv4 and IPv6 connection info is available, results needs to be visible in the Control panel.
A toggle is used to show IPv4 or IPv6 connection information.

Map IPv4/IPv6 tabs

When both IPv4 and IPv6 connection info is available, but location (city or country) is different, apps need to show "IPv4/IPv6" tabs on the map view with label "Location does not match".

API access with IP addresses

Our app are using a range of IPv4 addresses used as a fallback if API server cannot be reached with api.ivpn.net hostname.

When app is loading both IPv4 and IPv6 connection information from IVPN API server, app should use provided IPv4 and IPv6 IP address ranges, and not using hostname.

Missing validation when trying to purchase a plan without a Google Play account

Description:

On IVPN version 2.4.1, when accessing the "Add funds" screen without a Google Play Store account, the discounts on the plans are missing, furthermore, if attempting to make a payment, nothing happens, the validation is missing when tapping on "Pay".

Note:
See attached screenshot for further details.

Actual result:

Missing validation when trying to purchase a plan without a Google Play account

Expected result:

When a user attempts to make a payment without a Google Play Store account, the app should present an error message.

Steps to reproduce:

*Make sure the device does not have a Google Play Store account.

  1. Install version 2.4.1.
  2. Create a new account.
  3. Proceed to the "Add funds" screen
  4. Observe that the discounts percentages are missing.
  5. Tap on "Pay" and observe that nothing happens.

Environment:

Device: Xiaomi Redmi 5, Android 8.1
IVPN version: 2.4.1

Screenshot

add funds screen issue

Connection status notification disappears after WireGuard key is regenerated

One user has reported a minor issue with VPN connection status notification disappearing after our app generates a new WireGuard key:

I have an issue with the Android app where every time the wireguard key changes (I've set it to daily), the notification disappears. The VPN is still connected, but I have to reconnect to make the notification appear again.
I'm on Lineage OS Android 10.

KillSwitch Not working if Always-on VPN is not set to ON in Android settings.

Bug report

Describe your environment

  • Device:
  • OS name and version: Android 10
  • IVPN app version: 2.4.0 site apk

Describe the problem

KillSwitch toggle goes off whenever we quit settings. This seems to occur when app is not set as always-on-VPN in android settings but I haven't looked into that much.

Steps to reproduce:

  1. Launch app and go to kill switch settings. Turn it ON.
  2. Press back and again go into KillSwitch settings.
  3. Find that turned off.

Observed Results:

KillSwitch toggle goes off. And also killswitch isn't working.

Expected Results:

It should remain turn on.

Relevant Code:

v2.4.1 `CHECK FOR UPDATES` didn't work

Bug report

Describe your environment

  • Device: Samsung Note 9
  • OS name and version: Android 10
  • IVPN app version: 2.4.1

Describe the problem

Steps to reproduce:

  1. On 2.4.1, hit CHECK FOR UPDATES in Settings -> Updates

Observed Results:

Says You are using the latest version

Expected Results:

Should've shown me 2.5.1 available.

Server connection popup can be displayed inside Settings, Select Server or Account screen

Description:

It is possible to open the server connection popup inside Settings, Account or Select Server screens, the issue happens when selecting a server and immediately open one fo these screens.

Note:
See attached screenshot for further details.

Actual result:

Server connection popup can be displayed inside Settings, Select Server or Account screen.

Expected result:

The connection popup should not be opened inside Settings, Account or Select Server screens.

Steps to reproduce:

  1. Install 2.3.0.
  2. While connected or disconnected.
  3. Tap on a server in the map and open immediately either Settings, Select Server or Account screen

Environment:

Devices: Samsung G S10/Android 11 and Huawei MediPad T5/Android 8
IVPN version: 2.3.0

Screenshot:

connection popup issue

Default trust status is always reverted to None

Description:

On version 2.4.1, when setting the default trust status to Untrusted/Trusted, the trust status is always reverted back to None. The issue does not happen the first time the trust status is changed, but when logging out and logging back in, from this moment on, it is not possible to change the default to Untrusted or Trusted.

Note:
The issue happens in all devices, Android OS.
This issue might be related to the changes implemented on #48

Actual result:

Default trust status is always reverted to None.

Expected result:

User should always be able to change the trust status of default, mobile and current network.

Steps to reproduce:

  1. Install 2.4.1.
  2. Login.
  3. Enable Network Protection.
  4. Set default to untrusted - app connects automatically.
  5. Disconnect from VPN.
  6. Enable KillSwitch.
  7. Logout.
  8. Log back in.
  9. Set default to Untrusted - nothing happens.
  10. Access network protection again, default is reverted to none.

Environment:

IVPN: 2.4.1
Devices: Samsung Galaxy S10/Android 11, Xiaomi Redmi 5/Android 8.1

Local SOCKS5 Proxy

Description

Have the option to run a SOCKS5 proxy on localhost that connects to the VPN. This would allow you to use IVPN with apps such as NetGuard which have an option to connect to a SOCKS5 proxy.

Show gateways without IPv6 support

Description

This setting should be disabled (or hidden) and on by default.

When user enabled IPv6 for VPN tunnel, this setting should became visible.

When both "Enable IPv4" and "Show gateways without IPv6 support" are enabled, on the servers list there should be "IPv6" label next to servers that support IPv6.

Restart instead of stop for settings changes

Feature request

Description

Currently, I need to stop the vpn before I can change any settings.

Describe the solution you'd like

It would be really nice if I could instead change the settings first and then get prompted whether to restart the connection or not.

Small UI issue in the connection toggle

Description:

On the latest beta version, as well as on our live version, there is a small UI issue in the connection toggle, it seems that the toggle is cropped to the left.

Note:
See attached screenshot for further details.

Actual result:

Small UI issue in the connection toggle.

Expected result:

The connection toggle should be displayed correctly.

Steps to reproduce:

  1. Install version 2.3.0 (preferably on newer device).
  2. Launch the app.
  3. Observe the issue in connection the toggle.

Environment:

Device: Samsung Galaxy S10, Android 11
IVPN versio: 2.3.0

Screenshot:

connection toggle_UI issue

Google TV support

Feature request

Description

Would be nice to get support for Google TV :) . Sorry if this has been discussed prior and decided against, but I didn't notice anything in the issues list.

Latency is measured when connected to the VPN server

Our Android app is measuring and updating latency when connected to the VPN server and pings other servers from the location of the VPN server you are connected to, which confuses some customers.

The correct behaviour (which is also observed in our desktop and iOS apps) should be the following - latency is calculated when you are NOT connected to the VPN server and when:

  1. The application is started;
  2. You navigate to the Server Selection area;
  3. You change VPN protocols;
  4. Once an hour in the background;
  5. Immediately when swiping down in the Server Selection area (applies to mobile apps only. On the iOS app, Swipe down function is disabled when connected to the VPN server).

When user is connected and navigates to the Server Selection area, he should expect to see latency values that were calculated prior to connecting to the VPN.

Steps to reproduce:

  1. Connect to any VPN servers using any VPN protocol
  2. Navigate to the Server Selection area
  3. Swipe down and observe the latency is calculated from the location of the VPN server you are connected to.

Support force log in when 2FA or Captcha is required

Description

With the current app implementation, there is a case when it is not possible to force login when reaching session limit with 2FA or captcha enabled.

Apps need to handle the case like this:

  • 2FA or captcha code is sent to /session/new API
  • If API returns "Too many sessions" response and user starts /session/new with force: true, app needs to also include 2FA or captcha code from the previous API call

Expected result

User should be able to force the login when reaching the session limit after entering the correct captcha or 2FA code.

Steps to reproduce

  1. Login with 2FA until reaching the session limit.
  2. Tap on "Logout from all other devices".
  3. Observe the issue.
  4. Repeat the same steps, but this time by reaching the session limit after entering the captcha code.

Network Protection notification does not disappear

Description:

On Android 11 OS, when Network Protection and KillSwitch are enabled, if the user logs out, the notification about Network Protection does not disappear. When logging back in, the notification will remain visible, even though Network Protection is disabled.
At this point, the only way to make the notification to disappear is to enable Network Protection and disable it again.

Note:
So far only reproduced on my Android 11 device - Samsung Galaxy S10

Actual result:

Network Protection notification does not disappear after logging out.

Expected result:

Network Protection notification should disappear after logging out since the feature is disabled automatically.

Steps to reproduce:

  1. Install version 2.4.1 on an Android 11 device.
  2. Login.
  3. Enable Network Protection.
  4. Observe that the notification appears.
  5. Enable KillSwitch.
  6. Logout.
  7. Observe that the notification about Network Protection does not disappear.

Environment:

Device: Samsung G S10/Android 11
IVPN version: 2.4.1

Split Tunneling for system-apps

Feature request

Description

I'm not sure if this is already used but I want to make sure that the split tunnelling is working also for system-apps so that I can mimic the behaviour of network filtering apps like NetGuard.

The idea is to enable Kill switch and Always-on VPN both from the app and natively in the system, then using tunnelling enable only apps that I'm willingly giving permission for internet access.

I found the kill switch really useful for this to replace NetGuard as it already uses the only VPN slot in Android, but at least it allows managing the rules for system apps while in IVPN I see only user apps in the list, so I'm not quite sure if this is working well.

Describe the solution you'd like

If possible, allow managing system apps in split tunnelling or add a feature that block access to internet for certain app.

Describe alternatives you've considered

Alternatives that I'm aware of are rooting the phone to use apps that filter based on iptables like AFWall+ then use the VPN app. rooting is not a good solution for many people. NetGuard supports using SOCKS for routing but that's not possible with IVPN

Thank you

Option to prevent same provider Multihop chain

Feature request

Description

A multi hop connection is of limited value when the two hops rely on the same hosting provider.

Describe the solution you'd like

Very simple: If enabled, when a user selects an ingress server any egress options that uses on the same hosting provider will be marked or grayed out. Vice versa. Or an option in settings that simply prevents same provide cascades from being created (eg if user has selected random ingress and/or egress option)

Describe alternatives you've considered

Studying the ivpn server list and painstakingly configuring chains by referencing this list .

2.4.0 crashes on android 10 with mock location setup enabled + server change

Bug report

Describe your environment

  • Device: Samsung Galaxy Note 9
  • OS name and version: Android 10
  • IVPN app version: 2.4.0 [Downloaded from ivpn.net]

Describe the problem

Steps to reproduce:

  1. Setup Mock location provider to IVPN
  2. Choose any server on IVPN and connect to VPN [Works fine once]
  3. Change to any other server

Observed Results:

Once the app crashes, the crash keeps occurring on relaunching the app, even after undoing the mock location app change. The app crash persists across reboots as well. I had to uninstall and reinstall the app to get it working again.

Expected Results:

No crash when I change server repeatedly with mock location enabled.

Do not switch to OpenVPN when WG key rotation fails

Currently, when the app fails to generate manually a new WireGuard key (e.g. internet connection error), the app shows an error, but immediately switches the protocol to OpenVPN.

Since we now use WireGuard as the default protocol and for consistency with the other clients, we should do the following.

When manual key rotation fails:

  • Show an error (see screenshot below taken from iOS for reference)

iOS_WG key error

  • Once the error is dismissed, the app keeps WireGuard as protocol + old active key

Steps to reproduce:

  1. Enable Airplane mode
  2. Attempt to generate manually a new key

Connection Switcher ignores touches in some cases.

Bug report

Describe your environment

  • Device: Pixel 3
  • OS name and version: Android 10
  • IVPN app version: 2.4.0-beta

Describe the problem

Steps to reproduce:

  1. Install 2.4.0_beta6.
  2. Login.
  3. Connect with WireGuard using the switcher.
  4. Disconnect using the switcher.
  5. Select OpenVPN and connect using the switcher.
  6. Disconnect using the switcher.
  7. Select WireGuard and connect using the switcher.
  8. Disconnect using the switcher.
  9. Try to connect using the switcher (the issue happens).

Observed Results:

  • Switcher ignores touches.

Expected Results:

  • IVPN Client starts to establish VPN connection.

Shadowsocks support

Feature request

Description

Currently Mobile platforms don't offer any censorship circumvention. So they may not work in restrictive areas of world.

Describe the solution you'd like

Shadowsocks support should be introduced.

Describe alternatives you've considered

Mobile platforms can support obfsproxy.

Feature requests

@AlexKorvin @jurajhilje

1.) Expand Anti Tracker by improving Its blocking capabilities by allowing users the ability: To add a custom blocking list option too improve upon Anti Trackers current blocking capabilities.

(Examples of popular and open source block list/filters include- Easy List, Easy Privacy, Ad Guards filters, Fanboys filters, etc...)

-"Edward De, From IVPN Support" informed me via email on 01/18/21 the following- "Yes, it's on our to-do list, though I have no firm ETA to share for when this feature becomes available."

Thank you and hope to hear back from someone soon!

Map Enhancement

Feature request

Description

Map should support Zoom in/out feature on mobile platforms. Currently Map support this on Desktop. It's hard to navigate into Map without this feature.

Besides that Green is more apropriate colour for connected state. It gives better visual information than current blue colour.

TransactionTooLargeException

We used a static analysis tool to analyze ivpn and found that ivpn will invoke getInstalledApplications in SplitTunnelingViewModel.InflateApplicationInfoAsyncTask.

This function will use binder to get all apps' infos in this device, which will cause TransactionTooLargeException and crash ivpn with many apps installs.
Some similar issues could be found in AdAway, ShoppingList.
We suggest that the invocation should be surrounded by try/catch, or add more arguments to limit return data size.

InflateApplicationInfoAsyncTask(PackageManager packageManager) {
    this.packageManager = packageManager;
    this.applicationInfoList = packageManager.getInstalledApplications(PackageManager.GET_META_DATA);
}

Change plan action is displayed when trying to add more time

Description:

In the current Google Play Store build 2.3.0, when trying to add more time to an account, the action "Change" is shown in the Add Funds screen, this action does nothing since the user cannot change plans once he's logged in.

Note:
See attached screenshot for further details.

Actual result:

Change plan action button "Change" is displayed when trying to add more time.

Expected result:

The action "Change" should never be present in the Add Funds screen when the user tries to add more time to an existing subscription.

Steps to reproduce:

  1. Install IVPNv 2.3.0.
  2. Login with an active account.
  3. Go to the Profile screen.
  4. Tap on Add more time.
  5. Observe that the add funds screen shows the action "Change".
  6. Tap on "Change", nothing happens.

Environment

Devices, OS: Samsung G S10/Android 10, Huawei MediPad T5/Android 8
IVPN version: 2.3.0

Screenshot:

change plan_link

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.