Reputation: 63
I have found the following code to establish a new vpn programmatically but I do not know how to use it to create my app
VpnService service = context.getSystemService(VPN_SERVICE);
VpnProfile profile = VpnProfile.create(L2TP_PROFILE);
profile.setName(myServerName);
profile.setServerName(myServerAddress);
profile.setRouteList("192.168.1.0/255.255.255.0,192.168.10.0/255.255.255.0");
service.connect(profile, "myUserName", "myPassword");
service.setNotificationIntent(myIntent);
can anyone please help me with a sample code? Is it even possible to to achieve dis?
Upvotes: 6
Views: 13833
Reputation: 73024
Note: this answer is dated and may now be inaccurate.
Take a look at this question: How to configure VPN programmatically?
While yours isn't necessarily a duplicate, the answer is likely the same, in that you're going to need to expose the hidden API (if it's available) or worse, be dependent on the device being rooted.
Understandably, programmatically creating a VPN connection poses an inherent security risk for the end user, and shouldn't be implemented without consideration.
Upvotes: 2