Speedify SDK for Android  10.7.0
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
com.speedify.speedifysdk.SpeedifySDK Class Reference

Detailed Description

Main SDK API.

Instantiate an instance of SpeedifySDK in your Applications class. SpeedifySDK will run its VPN services in a separate process, which needs access to a properly configured SpeedifySDK instance for your app. All calls are non-blocking. Create a subclass of SpeedifyHandler or implement ISpeedifyHandler, and implement the methods for the various callbacks which you are interesed in. The SpeedifySDK will call to inform you of changes through these callbacks.

Since
5.6

Classes

class  StatsRunnable
 

Public Member Functions

 SpeedifySDK (Context applicationContext) throws Exception
 Constructor for SpeedifySDK with default handler. More...
 
 SpeedifySDK (Context applicationContext, String name)
 Constructor for SpeedifySDK with default handler. More...
 
 SpeedifySDK (Context applicationContext, String name, int port)
 Constructor for SpeedifySDK with default handler. More...
 
 SpeedifySDK (Context applicationContext, String name, ISpeedifyHandler handler)
 Constructor for SpeedifySDK with provided handler. More...
 
 SpeedifySDK (Context applicationContext, String name, int port, ISpeedifyHandler handler)
 Constructor for SpeedifySDK with provided handler. More...
 
final void setHandler (ISpeedifyHandler newHandler)
 Sets the handler for event callbacks. More...
 
final void setServiceNotificationIcon (int drawableId)
 Sets the icon used by the default service foreground notification. More...
 
final void restartServices ()
 Ensures relevant services are started. More...
 
final void setServiceNotificationLaunchIntent (Intent intent)
 If using the default service forergound notification, sets the Intent used when use clicks the notification. More...
 
final void connectAuto (AutoConnectMethod method)
 Connect to a server by an automatic selection method. More...
 
final void connectProxy ()
 Runs the Speedify VPN as a local proxy, without a connection to a remote server. More...
 
final void connectByCountry (String country)
 Connect to a server by server country. More...
 
final void connectByCity (String country, String city)
 Connect to a server by server city. More...
 
final void connectByServer (String country, String city, int num)
 Connect to a specific server. More...
 
final void setConnectMethodAuto (AutoConnectMethod method)
 Set the default connection method to an automatic selection method. More...
 
final void setConnectMethodCountry (String country)
 Set the default connection method to a specific country. More...
 
final void setConnectMethodCity (String country, String city)
 Set the default connection method to a specific city. More...
 
final void setConnectMethodServer (String country, String city, int num)
 Set the default connection method to a specific server. More...
 
final void disconnect ()
 Disconnect from the server if connected, or cancel a connection attempt if currenty connecting. More...
 
final void login (String username, String password)
 Authenticate a new user. More...
 
final void loginOAuth (String oauthAccessToken)
 Authenticate a new user using an oauth access token. More...
 
final void logout ()
 Logout the current user. More...
 
final void setMode (BondingMode mode)
 Change the basic mode of operation, between optimizing for speed or maximizing reliability. More...
 
final void setConnectionPriorities (String adapterID, ConnectionPriority priority)
 Change priorities of a connection. More...
 
final void setConnectionEncryption (String adapterID, boolean encrypted)
 Change encryption settings per connection. More...
 
final void setTunnelEncrypted (boolean encrypted)
 Sets encryption status on all connections forming the tunnels. More...
 
final void setConnectionRateLimit (String adapterID, long bps)
 Set the speed rate limit on a connection. More...
 
final void resetConnectionRateLimit (String adapterID)
 Reset the speed rate limit on a connection to unlimited. More...
 
final void setOverflowThreshold (double mbpsOverflow)
 Set the overflow threshold. More...
 
final void setDirectoryDomain (String domain)
 Change directory server used for user authentication and server management. More...
 
final void setESNIEnabled (boolean enableEsni)
 Sets if ESNI is used when talking to the directory domain If using your own directory server, this should be called before login or loginAutoAccount. More...
 
final void resetDirectoryDomain ()
 Reset the directory server to defaults. More...
 
final void setDirectoryGatewayURI (String gatewayUri)
 Set an oauth gateway to use for directory server requests. More...
 
final void resetDirectoryGatewayURI ()
 Reset the directory oauth gateway to defaults. More...
 
final void enableConnectionStatUpdates (boolean enabled)
 This is equivalent to enableStatUpdates(enabled,Arrays.asList(SessionStatPeriods.PERIOD_TOTAL)); More...
 
final void enableStatUpdates (boolean enabled, List< Long > periods)
 Enable periodic connection stats, adapter list updates, session stats, and streaming stats to be sent while Speedify is connected. More...
 
final void refreshHistoricConnectionStats ()
 Gets historic tunnel stats for last 5 minutes. More...
 
final void refreshSessionStats ()
 Refreshes session stats. More...
 
final void refreshStreamingStats ()
 Refreshes streaming stats. More...
 
final void refreshDirectory ()
 Refresh a list of available servers from the directory list. More...
 
final void refreshDirectoryDomain ()
 
final void refreshDirectorySettings ()
 Refresh the current directory settings. More...
 
final void refreshState ()
 Refresh the current connection state and connected/last server. More...
 
final String Version ()
 SpeedifySDK version. More...
 
final void refreshNetworks ()
 Refresh the list of current connection. More...
 
final void refreshSettings ()
 Refresh the current settings information. More...
 
final void refreshAll ()
 Shortcut to refresh all data. More...
 
final void handleNewAdapter (String adapterID)
 Acknowledge and clear message about a new adapter. More...
 
final void handleAdapterOverlimit (String adapterID)
 Acknowledge and clear message about an overlimit adapter. More...
 
final void addAdapterDailyDataLimitBoost (String adapterID, long additionalBytes)
 Adds additional bytes to the adapter's daily data usage limit for today. More...
 
final void setAdapterDailyDataLimit (String adapterID, long allowedBytes)
 Set the data usage, in bytes, allowed on this adapter in a single day. More...
 
final void disableAdapterDailyDataLimit (String adapterID)
 Sets the adapter to unlimited daily data usage. More...
 
final void setAdapterMonthlyDataLimit (String adapterID, long allowedBytes, long resetDay)
 Set the data usage, in bytes, allowed on this adapter in a single month. More...
 
final void disableAdapterMonthlyDataLimit (String adapterID)
 Sets the adapter to unlimited daily data usage. More...
 
final void setExcludedIPRanges (List< IPRange > excludedRanges)
 Set IP address ranges to exclude from going over the VPN tunnel. More...
 
final void setExcludeDefaultPrivateIPRanges (boolean exclude)
 Set whether the default private IP ranges are excluded from going over the VPN tunnel. More...
 
final void setAllowTunnelBypass (boolean allowTunnelBypass)
 Allows other apps to bind their sockets around the VPN tunnel, directly on other network adapters. More...
 
final void setEnableDefaultRoute (boolean enable)
 Set whether the default route (0.0.0.0/0) goes over the VPN tunnel. More...
 
final void setJumboPackets (boolean useJumbo)
 Sets whether to allow jumbo packets over the VPN tunnel. More...
 
final void setConnectionTransportMode (TransportMode transportMode)
 Sets the transport mode selection used for each connection. More...
 
final void setAllowChaChaEncryption (boolean allowChaCha)
 Allow or disallow use of ChaCha for connection encryptions. More...
 
final void startSpeedtest ()
 Start a speedtest. More...
 
final void stopSpeedtest ()
 Stop a speedtest. More...
 
final void setAdapterOverlimitRatelimit (String adapterID, long bps)
 Sets how to handle an adapter that has hit its daily or monthly data limit. More...
 
final void resetAdapterUsage (String adapterID)
 Resets the tracked data usage on an adapter. More...
 
final void loginAutoAccount ()
 Logs out of any current account and logs in to an automatically generated account for this device. More...
 
final void loginLocalLoopbackOnly ()
 Comcast Loopback Function. More...
 
final void accountCheck (String email)
 Check if there is already an account using this email address. More...
 
final void accountCreate (String email, String password)
 Create a new account using this email address. More...
 
final void accountPasswordChange (String email, String originalPassword, String newPassword)
 Change the password on the account. More...
 
final void refreshNonVPNApplications ()
 Refreshes list of applications that should not go over the VPN. More...
 
final void setNonVPNApplications (List< String > nonVpnApps)
 Set applications that should not go over the VPN. More...
 
final void refreshAccounting ()
 Refresh account data. More...
 
final void refreshPrivacy ()
 Refresh privacy settings. More...
 
final void setCrashReporting (boolean enable)
 Sets if crash reporting should be enabled. More...
 
final void setDoNotStoreCredentials (boolean doNotStore)
 Sets if credentials will not be stored. More...
 
final void setReportingEncryptionKey (String key128bit)
 Set reporting encryption key. More...
 
final void setDisconnectOnExit (boolean shouldDisconnect)
 Sets the behavior of the VPN service upon task swipe/close all. More...
 
final void setNeverExitOnSwipe (boolean neverExitOnSwipe)
 Setting this disables all disconnect/exit on swipe logic. More...
 
final void setDNSServers (List< String > dnsAddrs)
 Set IP addresses of the DNS servers to use Current value available from OnPrivacySettings. More...
 
final void setForwardPorts (List< ForwardedPort > ports)
 Set ports to be forwarded to this client when connected to a dedicated server. More...
 
final void setLocalVendorSettings (JSONObject settings, boolean merge)
 Set local vendor settings Current value available from OnLocalVendorSettings. More...
 
final void refreshLocalVendorSettings ()
 Gets the local vendor settings Triggers OnLocalVendorSettings. More...
 
final void refreshRemoteVendorSettings ()
 Gets the remote vendor settings Triggers OnRemoteVendorSettings. More...
 
final void setVendorUserData (String vendorUserData)
 Set vendor user data Current value available from OnVendorUserData. More...
 
final void refreshVendorUserData ()
 Gets the vendor user data Triggers OnVendorUserData. More...
 
final void refreshLocalProxy ()
 Get configuration of the local proxy Triggers OnLocalProxySettings. More...
 
final void setLocalProxyEnabled (boolean enabled)
 Enables or disables the local proxy. More...
 
final void setLocalProxyMatchMode (ProxyMatchMode matchMode)
 Set the match mode used by the local proxy. More...
 
final void setLocalProxyDomains (List< String > domains)
 Set domains to proxy locally, instead of going through the VPN. More...
 
final void setLocalProxyIPv4 (List< String > ipv4)
 Set IPv4 address to proxy locally, instead of going through the VPN. More...
 
final void setLocalProxyPorts (List< LocalProxyPort > ports)
 Set ports to proxy. More...
 
final void setLocalProxyDomainWatchlist (List< LocalProxyDomainWatchlistItem > domainWatchlist)
 Set domain watchlist settings for the local proxy. More...
 
final void setLocalProxyDomainWatchlistEnable (String title, boolean enabled)
 Toggle a single domain watchlist item from being enabled over the local proxy. More...
 
final void refreshCaptivePortals ()
 Checks connected networks for captive portals Triggers OnCaptivePortals. More...
 
final void refreshFirewall ()
 Get configuration of the firewall Triggers OnFirewallSettings. More...
 
final void setFirewallMode (FirewallMode mode)
 Set the mode used by the firewall. More...
 
final void setFirewallDomains (List< String > domains)
 Set domains to firewall. More...
 
final void setFirewallIPv4 (List< String > ipv4)
 Set IPv4 address to firewall. More...
 
final void setFirewallIPv6 (List< String > ipv6)
 Set IPv6 address to firewall. More...
 
final void setFirewallPorts (List< FirewallPort > ports)
 Set ports to firewall. More...
 
final void setKillswitch (boolean enabled)
 Sets if Internet Killswitch should be enabled. More...
 
final void setStartupConnect (boolean enabled)
 Set if Speedify should autmatically connect when the daemon starts. More...
 
final void initSafeBrowsing (String initConfig)
 Initialize Safe Browsing library If initialized is available from OnSafeBrowsing. More...
 
final void setSafeBrowsingConfig (String safeBrowsingConfig)
 Sets the optional Safe Browsing config If config set is available from OnSafeBrowsing. More...
 
final void setSafeBrowsingEnabled (boolean enabled)
 Sets if Safe Browsing is enabled Current value available from OnSafeBrowsing. More...
 
final void refreshSafeBrowsing ()
 Gets Safe Browsing settings Triggers OnSafeBrowsing. More...
 
final void refreshSafeBrowsingStats ()
 Gets Safe Browsing stats Triggers OnSafeBrowsingStats. More...
 
final void refreshLastDisconnectEvent ()
 Get the last session disconnect event Triggers OnLastDisconnectEvent. More...
 
final void refreshLogSettings ()
 Get the current log settings Triggers OnLogSettings. More...
 
final void setDaemonLogSettings (DaemonLogSettings daemon)
 Set daemon log file settings Triggers OnLogSettings. More...
 
final void eraseAllLogFiles ()
 Erase all log files and log zips. More...
 
final void setHeaderCompression (boolean enable)
 Sets whether to allow header compression of packets over the VPN tunnel. More...
 
final boolean hasVPNPermission ()
 Checks if the SDK currently has VPN permission. More...
 
final void initializeVPNPermission ()
 Requests VPN permission from the user through the system VPN dialog Triggers OnVPNPermissionResult. More...
 
final void sendRawMessage (String messageType, JSONObject data)
 internal use More...
 
final boolean isBackgroundProcess ()
 Test if currently in sdk background process (:vpnservice). More...
 
void destroy ()
 Destroys this instance of the SpeedifySDK. More...
 

Static Public Member Functions

static SpeedifySDK getInstance (Context context)
 Gets the current SpeedifySDK instance. More...
 
static SpeedifySDK getInstance ()
 Gets the current SpeedifySDK instance. More...
 
static boolean IsBackgroundProcess (Application application)
 Test if currently in sdk background process (:vpnservice). More...
 
static boolean IsBackgroundProcess (Context context)
 Test if currently in sdk background process (:vpnservice). More...
 
static void ForceExit (Context context)
 Force Speedify SDK to exit and all SpeedifySDK objects to cleanup themselves. More...
 

Protected Member Functions

Context getApplicationContext ()
 
void onMessage (String messageType, JSONArray data)
 internal use More...
 
void onMessage (String messageType, JSONObject data)
 internal use More...
 
void onMessage (String messageType)
 internal use More...
 
void subscribeToEvent (String event)
 internal use More...
 

Constructor & Destructor Documentation

◆ SpeedifySDK() [1/5]

com.speedify.speedifysdk.SpeedifySDK.SpeedifySDK ( Context  applicationContext) throws Exception

Constructor for SpeedifySDK with default handler.

To use this constructor, you must define speedify_sdk_name resource value. This is the only version of the constructor that does not require you to create your SpeedifySDK instance in your Application object. You may supply your custom SpeedifyHandler via setHandler. This constructor does not allow for customizing the foreground notification beyond overriding resource strings.

Parameters
applicationContextApplication Context
Exceptions
java.lang.Exceptionif resource values could not be read
Since
7.2.1

◆ SpeedifySDK() [2/5]

com.speedify.speedifysdk.SpeedifySDK.SpeedifySDK ( Context  applicationContext,
String  name 
)

Constructor for SpeedifySDK with default handler.

This should be created in the Application class, as SpeedifySDK will start a second process for running the VPN service, and will need access to data from this object.

Parameters
applicationContextApplication Context
nameName of the application. Used in notifications.
Since
10.6

◆ SpeedifySDK() [3/5]

com.speedify.speedifysdk.SpeedifySDK.SpeedifySDK ( Context  applicationContext,
String  name,
int  port 
)

Constructor for SpeedifySDK with default handler.

This should be created in the Application class, as SpeedifySDK will start a second process for running the VPN service, and will need access to data from this object.

It is recommened to use a version of this constructor without the port argument.

Parameters
applicationContextApplication Context
nameName of the application. Used in notifications.
portPort used for websocket communication with the SpeedifySDK service, or 0 to let the SDK automatically choose
Since
5.6

◆ SpeedifySDK() [4/5]

com.speedify.speedifysdk.SpeedifySDK.SpeedifySDK ( Context  applicationContext,
String  name,
ISpeedifyHandler  handler 
)

Constructor for SpeedifySDK with provided handler.

This should be created in the Application class, as SpeedifySDK will start a second process for running the VPN service, and will need access to data from this object.

Parameters
applicationContextApplication Context
nameName of the application. Used in notifications.
handlerHandler for event callbacks
Since
10.6

◆ SpeedifySDK() [5/5]

com.speedify.speedifysdk.SpeedifySDK.SpeedifySDK ( Context  applicationContext,
String  name,
int  port,
ISpeedifyHandler  handler 
)

Constructor for SpeedifySDK with provided handler.

This should be created in the Application class, as SpeedifySDK will start a second process for running the VPN service, and will need access to data from this object.

It is recommened to use a version of this constructor without the port argument.

Parameters
applicationContextApplication Context
nameName of the application. Used in notifications.
portPort used for websocket communication with the SpeedifySDK service, or 0 to let the SDK automatically choose
handlerHandler for event callbacks
Since
5.6

Member Function Documentation

◆ accountCheck()

final void com.speedify.speedifysdk.SpeedifySDK.accountCheck ( String  email)

Check if there is already an account using this email address.

Triggers OnAccountCheckResult.

Parameters
emailaccount to check for
Since
7.5

◆ accountCreate()

final void com.speedify.speedifysdk.SpeedifySDK.accountCreate ( String  email,
String  password 
)

Create a new account using this email address.

Triggers OnAccountCreateResult.

Parameters
emailaccount to create
passwordpassword of the new account
Since
7.5

◆ accountPasswordChange()

final void com.speedify.speedifysdk.SpeedifySDK.accountPasswordChange ( String  email,
String  originalPassword,
String  newPassword 
)

Change the password on the account.

Triggers OnPasswordChangeResult.

Parameters
emailaccount to change
originalPasswordoriginal password of the account
newPasswordnew password of the account
Since
7.5

◆ addAdapterDailyDataLimitBoost()

final void com.speedify.speedifysdk.SpeedifySDK.addAdapterDailyDataLimitBoost ( String  adapterID,
long  additionalBytes 
)

Adds additional bytes to the adapter's daily data usage limit for today.

This value is not added to the base daily data usage limit. Current value available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDID of the adapterID
additionalBytesadditional bytes that may be used today
Since
5.8

◆ connectAuto()

final void com.speedify.speedifysdk.SpeedifySDK.connectAuto ( AutoConnectMethod  method)

Connect to a server by an automatic selection method.

If already connected, this will disconnect before reconnecting. Connect errors will be signalled in OnConnectError. Chosen server will be signalled via OnConnectedServer as connections to them are attempted.

Parameters
methodhow to choose a server
Since
5.6

◆ connectByCity()

final void com.speedify.speedifysdk.SpeedifySDK.connectByCity ( String  country,
String  city 
)

Connect to a server by server city.

If already connected, this will disconnect before reconnecting. A list of valid servers can be obtained from OnDirectory. Connect errors will be signalled in OnConnectError. Chosen server will be signalled via OnConnectedServer as connections to them are attempted.

Parameters
country2-char ISO country code
citycity name
Since
5.6

◆ connectByCountry()

final void com.speedify.speedifysdk.SpeedifySDK.connectByCountry ( String  country)

Connect to a server by server country.

If already connected, this will disconnect before reconnecting. A list of valid servers can be obtained from OnDirectory. Connect errors will be signalled in OnConnectError. Chosen server will be signalled via OnConnectedServer as connections to them are attempted.

Parameters
country2-char ISO country code
Since
5.6

◆ connectByServer()

final void com.speedify.speedifysdk.SpeedifySDK.connectByServer ( String  country,
String  city,
int  num 
)

Connect to a specific server.

If already connected, this will disconnect before reconnecting. A list of valid servers can be obtained from OnDirectory. Connect errors will be signalled in OnConnectError. Chosen server will be signalled via OnConnectedServer as connections to them are attempted.

Parameters
country2-char ISO country code
citycity name
numserver number
Since
5.6

◆ connectProxy()

final void com.speedify.speedifysdk.SpeedifySDK.connectProxy ( )

Runs the Speedify VPN as a local proxy, without a connection to a remote server.

If already connected, this will disconnect before reconnecting. Connect errors will be signalled in OnConnectError.

Since
10.4

◆ destroy()

void com.speedify.speedifysdk.SpeedifySDK.destroy ( )

Destroys this instance of the SpeedifySDK.

This does not stop the service. NOTE : This instance of the SpeedifySDK object becomes invalid. You must create a new SpeedifySDK object after calling this.

Since
8.0

◆ disableAdapterDailyDataLimit()

final void com.speedify.speedifysdk.SpeedifySDK.disableAdapterDailyDataLimit ( String  adapterID)

Sets the adapter to unlimited daily data usage.

This is a wrapper for setAdapterDailyDataLimit(adapterID,0). Current value available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDID of the adapterID
Since
6.2

◆ disableAdapterMonthlyDataLimit()

final void com.speedify.speedifysdk.SpeedifySDK.disableAdapterMonthlyDataLimit ( String  adapterID)

Sets the adapter to unlimited daily data usage.

This is a wrapper for setAdapterMonthlyDataLimit(adapterID,0,0). Current value available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDID of the adapterID
Since
6.2

◆ disconnect()

final void com.speedify.speedifysdk.SpeedifySDK.disconnect ( )

Disconnect from the server if connected, or cancel a connection attempt if currenty connecting.

Since
5.6

◆ enableConnectionStatUpdates()

final void com.speedify.speedifysdk.SpeedifySDK.enableConnectionStatUpdates ( boolean  enabled)

This is equivalent to enableStatUpdates(enabled,Arrays.asList(SessionStatPeriods.PERIOD_TOTAL));

Deprecated:
As of 10.0. Use enableStatUpdates.

◆ enableStatUpdates()

final void com.speedify.speedifysdk.SpeedifySDK.enableStatUpdates ( boolean  enabled,
List< Long >  periods 
)

Enable periodic connection stats, adapter list updates, session stats, and streaming stats to be sent while Speedify is connected.

Triggers OnConnectionStats once per second while connected. Triggers OnAdaptersList once every 30 seconds while connected. Triggers OnSessionStats once per second while connected. Triggers OnStreamingStats once per second while connected.

Parameters
enabledif connection stat updates should be continuously received
periodstimeframes of requested session stats, values in hours, PERIOD_CURRENT for current, PERIOD_TOTAL for total, or empty/null for previously configured periods
Since
10.0

◆ eraseAllLogFiles()

final void com.speedify.speedifysdk.SpeedifySDK.eraseAllLogFiles ( )

Erase all log files and log zips.

Note that the current active log file is not erased.

Since
10.5

◆ ForceExit()

static void com.speedify.speedifysdk.SpeedifySDK.ForceExit ( Context  context)
static

Force Speedify SDK to exit and all SpeedifySDK objects to cleanup themselves.

NOTE : Any SpeedifySDK object you have previously contructed will become unuseable after this. You must construct a new SpeedifySDK object or call restartServices on the old one.

Parameters
contextcontext to issue the broadcast on
Since
8.0

◆ getApplicationContext()

Context com.speedify.speedifysdk.SpeedifySDK.getApplicationContext ( )
protected

◆ getInstance() [1/2]

static SpeedifySDK com.speedify.speedifysdk.SpeedifySDK.getInstance ( Context  context)
static

Gets the current SpeedifySDK instance.

If there is no current instance and a context is passed, a new SpeedifySDK instance is created. The application context will always be used when creating a SpeedifySDK from this call.

Parameters
contextContext used to create the sdk object.
Returns
the SpeedifySDK instance, or null
Since
7.2.1

◆ getInstance() [2/2]

static SpeedifySDK com.speedify.speedifysdk.SpeedifySDK.getInstance ( )
static

Gets the current SpeedifySDK instance.

Returns
the SpeedifySDK instance, or null
Since
7.2.1

◆ handleAdapterOverlimit()

final void com.speedify.speedifysdk.SpeedifySDK.handleAdapterOverlimit ( String  adapterID)

Acknowledge and clear message about an overlimit adapter.

Parameters
adapterIDID of the adapterID
Since
5.8

◆ handleNewAdapter()

final void com.speedify.speedifysdk.SpeedifySDK.handleNewAdapter ( String  adapterID)

Acknowledge and clear message about a new adapter.

Parameters
adapterIDID of the adapterID
Since
5.8

◆ hasVPNPermission()

final boolean com.speedify.speedifysdk.SpeedifySDK.hasVPNPermission ( )

Checks if the SDK currently has VPN permission.

Returns
true if permission is already granted
Since
10.0

◆ initializeVPNPermission()

final void com.speedify.speedifysdk.SpeedifySDK.initializeVPNPermission ( )

Requests VPN permission from the user through the system VPN dialog Triggers OnVPNPermissionResult.

Since
10.0

◆ initSafeBrowsing()

final void com.speedify.speedifysdk.SpeedifySDK.initSafeBrowsing ( String  initConfig)

Initialize Safe Browsing library If initialized is available from OnSafeBrowsing.

Errors initializing will be signalled in OnSafeBrowsingConnectError.

Parameters
initConfiga configuration string for the safe browsing service
Since
10.6

◆ IsBackgroundProcess() [1/2]

static boolean com.speedify.speedifysdk.SpeedifySDK.IsBackgroundProcess ( Application  application)
static

Test if currently in sdk background process (:vpnservice).

Parameters
applicationan android Application
Returns
true if running from background process
Since
8.0

◆ isBackgroundProcess()

final boolean com.speedify.speedifysdk.SpeedifySDK.isBackgroundProcess ( )

Test if currently in sdk background process (:vpnservice).

Returns
true if running from background process
Since
5.8

◆ IsBackgroundProcess() [2/2]

static boolean com.speedify.speedifysdk.SpeedifySDK.IsBackgroundProcess ( Context  context)
static

Test if currently in sdk background process (:vpnservice).

Parameters
contextan android Context
Returns
true if running from background process
Since
5.9

◆ login()

final void com.speedify.speedifysdk.SpeedifySDK.login ( String  username,
String  password 
)

Authenticate a new user.

If setting a custom directory, call setDirectoryDomain before calling this. Login errors will be signalled in OnLoginError.

Parameters
usernameUsername of the user you wish to authenticate
passwordPassword of the user you wish to authenticate
Since
5.6

◆ loginAutoAccount()

final void com.speedify.speedifysdk.SpeedifySDK.loginAutoAccount ( )

Logs out of any current account and logs in to an automatically generated account for this device.

If setting a custom directory, call setDirectoryDomain before calling this. This may take several seconds as the OS is queryied for the device id. Login or auto-account creation errors will be signalled in OnLoginError. Automatic accounts have an email address in the form of <platform>.<deviceID>@autoaccount.speedify.com.

Since
6.1

◆ loginLocalLoopbackOnly()

final void com.speedify.speedifysdk.SpeedifySDK.loginLocalLoopbackOnly ( )

Comcast Loopback Function.

Since
10.6

◆ loginOAuth()

final void com.speedify.speedifysdk.SpeedifySDK.loginOAuth ( String  oauthAccessToken)

Authenticate a new user using an oauth access token.

The application is responsible for fetching updated access tokens if using this method. If setting a custom directory, call setDirectoryDomain before calling this. Login errors will be signalled in OnLoginError. An expired access token will give an error of type TOKEN_EXPIRED, while invalid tokens will give CREDENTIAL.

Parameters
oauthAccessTokenAccess token for the user you wish to authenticate
Since
6.3.4

◆ logout()

final void com.speedify.speedifysdk.SpeedifySDK.logout ( )

Logout the current user.

This will reset your connect method to CLOSEST.

Since
5.6

◆ onMessage() [1/3]

void com.speedify.speedifysdk.SpeedifySDK.onMessage ( String  messageType,
JSONArray  data 
)
protected

internal use

Parameters
messageTypethe message identifier
datajson array of message data

◆ onMessage() [2/3]

void com.speedify.speedifysdk.SpeedifySDK.onMessage ( String  messageType,
JSONObject  data 
)
protected

internal use

Parameters
messageTypethe message identifier
datajson object of message data

◆ onMessage() [3/3]

void com.speedify.speedifysdk.SpeedifySDK.onMessage ( String  messageType)
protected

internal use

Parameters
messageTypethe message identifier

◆ refreshAccounting()

final void com.speedify.speedifysdk.SpeedifySDK.refreshAccounting ( )

Refresh account data.

Triggers OnAccountingData.

Since
6.1

◆ refreshAll()

final void com.speedify.speedifysdk.SpeedifySDK.refreshAll ( )

◆ refreshCaptivePortals()

final void com.speedify.speedifysdk.SpeedifySDK.refreshCaptivePortals ( )

Checks connected networks for captive portals Triggers OnCaptivePortals.

Since
9.3

◆ refreshDirectory()

final void com.speedify.speedifysdk.SpeedifySDK.refreshDirectory ( )

Refresh a list of available servers from the directory list.

Triggers OnDirectory.

Since
5.6

◆ refreshDirectoryDomain()

final void com.speedify.speedifysdk.SpeedifySDK.refreshDirectoryDomain ( )
Since
7.5
Deprecated:
as of 10.5. Use refreshDirectorySettings

◆ refreshDirectorySettings()

final void com.speedify.speedifysdk.SpeedifySDK.refreshDirectorySettings ( )

Refresh the current directory settings.

Triggers OnDirectorySettings.

Since
10.5

◆ refreshFirewall()

final void com.speedify.speedifysdk.SpeedifySDK.refreshFirewall ( )

Get configuration of the firewall Triggers OnFirewallSettings.

Since
9.2

◆ refreshHistoricConnectionStats()

final void com.speedify.speedifysdk.SpeedifySDK.refreshHistoricConnectionStats ( )

Gets historic tunnel stats for last 5 minutes.

Triggers OnConnectionStats.

Since
5.8

◆ refreshLastDisconnectEvent()

final void com.speedify.speedifysdk.SpeedifySDK.refreshLastDisconnectEvent ( )

Get the last session disconnect event Triggers OnLastDisconnectEvent.

Since
10.4

◆ refreshLocalProxy()

final void com.speedify.speedifysdk.SpeedifySDK.refreshLocalProxy ( )

Get configuration of the local proxy Triggers OnLocalProxySettings.

Since
9.2

◆ refreshLocalVendorSettings()

final void com.speedify.speedifysdk.SpeedifySDK.refreshLocalVendorSettings ( )

Gets the local vendor settings Triggers OnLocalVendorSettings.

Since
9.2

◆ refreshLogSettings()

final void com.speedify.speedifysdk.SpeedifySDK.refreshLogSettings ( )

Get the current log settings Triggers OnLogSettings.

Since
10.5

◆ refreshNetworks()

final void com.speedify.speedifysdk.SpeedifySDK.refreshNetworks ( )

Refresh the list of current connection.

Triggers OnAdaptersList.

Since
5.8

◆ refreshNonVPNApplications()

final void com.speedify.speedifysdk.SpeedifySDK.refreshNonVPNApplications ( )

Refreshes list of applications that should not go over the VPN.

Triggers OnNonVPNApplications.

Since
7.6.1

◆ refreshPrivacy()

final void com.speedify.speedifysdk.SpeedifySDK.refreshPrivacy ( )

Refresh privacy settings.

Triggers OnPrivacySettings.

Since
6.3

◆ refreshRemoteVendorSettings()

final void com.speedify.speedifysdk.SpeedifySDK.refreshRemoteVendorSettings ( )

Gets the remote vendor settings Triggers OnRemoteVendorSettings.

Since
9.2

◆ refreshSafeBrowsing()

final void com.speedify.speedifysdk.SpeedifySDK.refreshSafeBrowsing ( )

Gets Safe Browsing settings Triggers OnSafeBrowsing.

Since
10.6

◆ refreshSafeBrowsingStats()

final void com.speedify.speedifysdk.SpeedifySDK.refreshSafeBrowsingStats ( )

Gets Safe Browsing stats Triggers OnSafeBrowsingStats.

Since
10.6

◆ refreshSessionStats()

final void com.speedify.speedifysdk.SpeedifySDK.refreshSessionStats ( )

Refreshes session stats.

Triggers OnSessionStats.

Since
9.5

◆ refreshSettings()

final void com.speedify.speedifysdk.SpeedifySDK.refreshSettings ( )

Refresh the current settings information.

Triggers OnSettings.

Since
5.8

◆ refreshState()

final void com.speedify.speedifysdk.SpeedifySDK.refreshState ( )

Refresh the current connection state and connected/last server.

Triggers OnState, OnConnectedServer.

Since
5.6

◆ refreshStreamingStats()

final void com.speedify.speedifysdk.SpeedifySDK.refreshStreamingStats ( )

Refreshes streaming stats.

Triggers OnStreamingStats.

Since
9.6

◆ refreshVendorUserData()

final void com.speedify.speedifysdk.SpeedifySDK.refreshVendorUserData ( )

Gets the vendor user data Triggers OnVendorUserData.

Since
9.8

◆ resetAdapterUsage()

final void com.speedify.speedifysdk.SpeedifySDK.resetAdapterUsage ( String  adapterID)

Resets the tracked data usage on an adapter.

Parameters
adapterIDID of the adapterID
Since
7.8.3

◆ resetConnectionRateLimit()

final void com.speedify.speedifysdk.SpeedifySDK.resetConnectionRateLimit ( String  adapterID)

Reset the speed rate limit on a connection to unlimited.

Current rateLimit available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDguid of adapter, from adapter list.
Since
5.6

◆ resetDirectoryDomain()

final void com.speedify.speedifysdk.SpeedifySDK.resetDirectoryDomain ( )

Reset the directory server to defaults.

Triggers OnDirectorySettings, and (if logged in) OnDirectory on domain change.

Since
7.5

◆ resetDirectoryGatewayURI()

final void com.speedify.speedifysdk.SpeedifySDK.resetDirectoryGatewayURI ( )

Reset the directory oauth gateway to defaults.

Triggers OnDirectorySettings.

Since
10.5

◆ restartServices()

final void com.speedify.speedifysdk.SpeedifySDK.restartServices ( )

Ensures relevant services are started.

Since
5.6

◆ sendRawMessage()

final void com.speedify.speedifysdk.SpeedifySDK.sendRawMessage ( String  messageType,
JSONObject  data 
)

internal use

Parameters
messageTypethe message identifier to send
datajson object of message data

◆ setAdapterDailyDataLimit()

final void com.speedify.speedifysdk.SpeedifySDK.setAdapterDailyDataLimit ( String  adapterID,
long  allowedBytes 
)

Set the data usage, in bytes, allowed on this adapter in a single day.

Setting allowedBytes to 0 will disable this limit. Current value available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDID of the adapterID
allowedBytesbytes that may be used in a single day. 0 for unlimited
Since
5.8

◆ setAdapterMonthlyDataLimit()

final void com.speedify.speedifysdk.SpeedifySDK.setAdapterMonthlyDataLimit ( String  adapterID,
long  allowedBytes,
long  resetDay 
)

Set the data usage, in bytes, allowed on this adapter in a single month.

Setting allowedBytes to 0 will disable this limit. Current value available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDID of the adapterID
allowedBytesbytes that may be used in a single month. 0 for unlimited
resetDayday of the month that monthly usage is tracked from. 0 for last 30 days. unused if allowedBytes is 0
Since
5.8

◆ setAdapterOverlimitRatelimit()

final void com.speedify.speedifysdk.SpeedifySDK.setAdapterOverlimitRatelimit ( String  adapterID,
long  bps 
)

Sets how to handle an adapter that has hit its daily or monthly data limit.

Current value available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDID of the adapterID
bpsrate limit, in bits per second. 0 to not use the adapter.
Since
6.0

◆ setAllowChaChaEncryption()

final void com.speedify.speedifysdk.SpeedifySDK.setAllowChaChaEncryption ( boolean  allowChaCha)

Allow or disallow use of ChaCha for connection encryptions.

Current value available from OnSettings.

Since
5.9
Parameters
allowChaChaallow use of ChaCha

◆ setAllowTunnelBypass()

final void com.speedify.speedifysdk.SpeedifySDK.setAllowTunnelBypass ( boolean  allowTunnelBypass)

Allows other apps to bind their sockets around the VPN tunnel, directly on other network adapters.

This also allows apps to receive multicast. Current value available from OnSettings.

Parameters
allowTunnelBypassif other apps can bind sockets around the tunnel
Since
9.8

◆ setConnectionEncryption()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectionEncryption ( String  adapterID,
boolean  encrypted 
)

Change encryption settings per connection.

Current settings available from OnSettings.

Parameters
adapterIDguid of adapter, from adapters list
encryptedwhether to encrypt
Since
5.6

◆ setConnectionPriorities()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectionPriorities ( String  adapterID,
ConnectionPriority  priority 
)

Change priorities of a connection.

Current priority available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDguid of adapter, from adapters list.
prioritypriority level
Since
5.6

◆ setConnectionRateLimit()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectionRateLimit ( String  adapterID,
long  bps 
)

Set the speed rate limit on a connection.

Current rateLimit available on AdapterData objects returned from OnAdaptersList.

Parameters
adapterIDguid of adapter, from adapters list
bpsrate limit, in bits per second
Since
5.6

◆ setConnectionTransportMode()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectionTransportMode ( TransportMode  transportMode)

Sets the transport mode selection used for each connection.

Current value available from OnSettings.

Parameters
transportModeselection mode to use
Since
5.8

◆ setConnectMethodAuto()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectMethodAuto ( AutoConnectMethod  method)

Set the default connection method to an automatic selection method.

Current settings available from OnServerSettings.

Parameters
methodautomatic server selection method to use
Since
9.4

◆ setConnectMethodCity()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectMethodCity ( String  country,
String  city 
)

Set the default connection method to a specific city.

Current settings available from OnServerSettings.

Parameters
country2-char ISO country code
citycity name
Since
9.4

◆ setConnectMethodCountry()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectMethodCountry ( String  country)

Set the default connection method to a specific country.

Current settings available from OnServerSettings.

Parameters
country2-char ISO country code
Since
9.4

◆ setConnectMethodServer()

final void com.speedify.speedifysdk.SpeedifySDK.setConnectMethodServer ( String  country,
String  city,
int  num 
)

Set the default connection method to a specific server.

Current settings available from OnServerSettings.

Parameters
country2-char ISO country code
citycity name
numserver number
Since
9.4

◆ setCrashReporting()

final void com.speedify.speedifysdk.SpeedifySDK.setCrashReporting ( boolean  enable)

Sets if crash reporting should be enabled.

Parameters
enableIf reporting is enabled
Deprecated:
As of 10.5. Functionality removed.
Since
6.3

◆ setDaemonLogSettings()

final void com.speedify.speedifysdk.SpeedifySDK.setDaemonLogSettings ( DaemonLogSettings  daemon)

Set daemon log file settings Triggers OnLogSettings.

Requires daemon restart to take effect.

Parameters
daemondaemon log settings
Since
10.5

◆ setDirectoryDomain()

final void com.speedify.speedifysdk.SpeedifySDK.setDirectoryDomain ( String  domain)

Change directory server used for user authentication and server management.

If using your own directory server, this should be called before login or loginAutoAccount. Triggers OnDirectorySettings, and (if logged in) OnDirectory on domain change.

Parameters
domaindirectory server domain
Since
7.5

◆ setDirectoryGatewayURI()

final void com.speedify.speedifysdk.SpeedifySDK.setDirectoryGatewayURI ( String  gatewayUri)

Set an oauth gateway to use for directory server requests.

If using your own directory gateway, this should be called before loginOAuth. Triggers OnDirectorySettings, and (if logged in) OnDirectory on domain change.

Parameters
gatewayUridirectory gateway uri
Since
10.5

◆ setDisconnectOnExit()

final void com.speedify.speedifysdk.SpeedifySDK.setDisconnectOnExit ( boolean  shouldDisconnect)

Sets the behavior of the VPN service upon task swipe/close all.

If true (default), the VPN will disconnect and its services will exit. Current value available from OnSettings.

Parameters
shouldDisconnectif the vpn service should disconnect and exit
Since
7.0

◆ setDNSServers()

final void com.speedify.speedifysdk.SpeedifySDK.setDNSServers ( List< String >  dnsAddrs)

Set IP addresses of the DNS servers to use Current value available from OnPrivacySettings.

Parameters
dnsAddrsip addresses of the DNS server to use
Since
7.4

◆ setDoNotStoreCredentials()

final void com.speedify.speedifysdk.SpeedifySDK.setDoNotStoreCredentials ( boolean  doNotStore)

Sets if credentials will not be stored.

This includes passwords, OAuth tokens, and Safe Browsing init config. Triggers OnPrivacySettings. If true, automatic login and connect at boot will not work.

Parameters
doNotStoreIf credentials will not be stored
Since
10.5

◆ setEnableDefaultRoute()

final void com.speedify.speedifysdk.SpeedifySDK.setEnableDefaultRoute ( boolean  enable)

Set whether the default route (0.0.0.0/0) goes over the VPN tunnel.

If connected, this triggers a reconnect. Current value available from OnSettings.

Parameters
enableif default route is added to the interface
Since
9.4

◆ setESNIEnabled()

final void com.speedify.speedifysdk.SpeedifySDK.setESNIEnabled ( boolean  enableEsni)

Sets if ESNI is used when talking to the directory domain If using your own directory server, this should be called before login or loginAutoAccount.

Triggers OnDirectorySettings, and (if logged in) OnDirectory on domain change.

Parameters
enableEsniis ESNI is used to talk to the directory
Since
10.4

◆ setExcludeDefaultPrivateIPRanges()

final void com.speedify.speedifysdk.SpeedifySDK.setExcludeDefaultPrivateIPRanges ( boolean  exclude)

Set whether the default private IP ranges are excluded from going over the VPN tunnel.

This range includes: 224.0.0.0/4, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 Current value available from OnSettings.

Parameters
excludeif default private IP ranges are excluded
Since
8.0.2

◆ setExcludedIPRanges()

final void com.speedify.speedifysdk.SpeedifySDK.setExcludedIPRanges ( List< IPRange excludedRanges)

Set IP address ranges to exclude from going over the VPN tunnel.

If connected, this triggers a reconnect. This only has effect if enableDefaultRoute is true. Current value available from OnSettings. The following ranges are automatically excluded: 224.0.0.0/4, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

Parameters
excludedRangesip ranges to exclude from the tunnel
Since
5.8

◆ setFirewallDomains()

final void com.speedify.speedifysdk.SpeedifySDK.setFirewallDomains ( List< String >  domains)

Set domains to firewall.

Parameters
domainsdomain names to deny/allow Triggers OnFirewallSettings.
Since
9.2

◆ setFirewallIPv4()

final void com.speedify.speedifysdk.SpeedifySDK.setFirewallIPv4 ( List< String >  ipv4)

Set IPv4 address to firewall.

Parameters
ipv4ipv4 addresses to deny/allow Triggers OnFirewallSettings.
Since
9.2

◆ setFirewallIPv6()

final void com.speedify.speedifysdk.SpeedifySDK.setFirewallIPv6 ( List< String >  ipv6)

Set IPv6 address to firewall.

Parameters
ipv6ipv6 addresses to deny/allow Triggers OnFirewallSettings.
Since
9.3

◆ setFirewallMode()

final void com.speedify.speedifysdk.SpeedifySDK.setFirewallMode ( FirewallMode  mode)

Set the mode used by the firewall.

Parameters
modehow matches are treated Triggers OnFirewallSettings.
Since
9.2

◆ setFirewallPorts()

final void com.speedify.speedifysdk.SpeedifySDK.setFirewallPorts ( List< FirewallPort ports)

Set ports to firewall.

Triggers OnFirewallSettings.

Parameters
portsports to be firewalled
Since
9.2

◆ setForwardPorts()

final void com.speedify.speedifysdk.SpeedifySDK.setForwardPorts ( List< ForwardedPort ports)

Set ports to be forwarded to this client when connected to a dedicated server.

Current value available from OnSettings.

Parameters
portsports to be forwarded
Since
8.2

◆ setHandler()

final void com.speedify.speedifysdk.SpeedifySDK.setHandler ( ISpeedifyHandler  newHandler)

Sets the handler for event callbacks.

Parameters
newHandlerevent callback handler
Since
5.6

◆ setHeaderCompression()

final void com.speedify.speedifysdk.SpeedifySDK.setHeaderCompression ( boolean  enable)

Sets whether to allow header compression of packets over the VPN tunnel.

Current value available from OnSettings.

Parameters
enableallow header compression
Since
10.6

◆ setJumboPackets()

final void com.speedify.speedifysdk.SpeedifySDK.setJumboPackets ( boolean  useJumbo)

Sets whether to allow jumbo packets over the VPN tunnel.

Current value available from OnSettings.

Parameters
useJumboallow jumbo packets
Since
5.8

◆ setKillswitch()

final void com.speedify.speedifysdk.SpeedifySDK.setKillswitch ( boolean  enabled)

Sets if Internet Killswitch should be enabled.

When enabled, Internet connectivity is disabled if Speedify is not connected. Triggers OnPrivacySettings.

Parameters
enabledIf killswitch is enabled
Since
9.4

◆ setLocalProxyDomains()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyDomains ( List< String >  domains)

Set domains to proxy locally, instead of going through the VPN.

Parameters
domainsdomain names to redirect through the local proxy Triggers OnLocalProxySettings.
Since
9.2

◆ setLocalProxyDomainWatchlist()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyDomainWatchlist ( List< LocalProxyDomainWatchlistItem domainWatchlist)

Set domain watchlist settings for the local proxy.

Parameters
domainWatchlistdomain watchlist items Triggers OnLocalProxySettings.
Since
9.3

◆ setLocalProxyDomainWatchlistEnable()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyDomainWatchlistEnable ( String  title,
boolean  enabled 
)

Toggle a single domain watchlist item from being enabled over the local proxy.

Parameters
titlewatchlist item title
enabledif this watchlist item's domains should be included in the local proxy filter Triggers OnLocalProxySettings.
Since
9.3

◆ setLocalProxyEnabled()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyEnabled ( boolean  enabled)

Enables or disables the local proxy.

Parameters
enabledenable the local proxy Triggers OnLocalProxySettings.
Since
9.2

◆ setLocalProxyIPv4()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyIPv4 ( List< String >  ipv4)

Set IPv4 address to proxy locally, instead of going through the VPN.

Parameters
ipv4ipv4 addresses to redirect through the local proxy Triggers OnLocalProxySettings.
Since
9.2

◆ setLocalProxyMatchMode()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyMatchMode ( ProxyMatchMode  matchMode)

Set the match mode used by the local proxy.

Parameters
matchModehow matches are treated Triggers OnLocalProxySettings.
Since
9.2

◆ setLocalProxyPorts()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalProxyPorts ( List< LocalProxyPort ports)

Set ports to proxy.

Triggers OnLocalProxySettings.

Parameters
portsports to be proxied
Since
9.9

◆ setLocalVendorSettings()

final void com.speedify.speedifysdk.SpeedifySDK.setLocalVendorSettings ( JSONObject  settings,
boolean  merge 
)

Set local vendor settings Current value available from OnLocalVendorSettings.

Parameters
settingsa json object
mergeif true, settingsJson is merged in to existing local vendor settings. if false, settingsJson replaces existing local vendor settings
Since
9.2

◆ setMode()

final void com.speedify.speedifysdk.SpeedifySDK.setMode ( BondingMode  mode)

Change the basic mode of operation, between optimizing for speed or maximizing reliability.

Current value available from OnSettings.

Parameters
modedesired mode
Since
5.6

◆ setNeverExitOnSwipe()

final void com.speedify.speedifysdk.SpeedifySDK.setNeverExitOnSwipe ( boolean  neverExitOnSwipe)

Setting this disables all disconnect/exit on swipe logic.

Your app will be responsible for calling ForceExit to close the daemon and foreground notification when you want to exit.

Parameters
neverExitOnSwipeif all swipe logic should be ignored
Since
10.7

◆ setNonVPNApplications()

final void com.speedify.speedifysdk.SpeedifySDK.setNonVPNApplications ( List< String >  nonVpnApps)

Set applications that should not go over the VPN.

This change takes effect on the next VPN connect. If not set or an empty list is provided, Speedify will use a default list of common apps that do not work with VPNs. Common apps that do not work over VPNs include the default Android VoLTE app (com.ipsec.service), Netflix, Amazon Prime Video, and other video services. Current value available from OnNonVPNApplications via refreshNonVPNApplications.

Parameters
nonVpnAppslist of package ids
Since
7.6.1

◆ setOverflowThreshold()

final void com.speedify.speedifysdk.SpeedifySDK.setOverflowThreshold ( double  mbpsOverflow)

Set the overflow threshold.

Current value available from OnSettings.

Parameters
mbpsOverflowoverflow threshold, in megabits per second
Since
5.6

◆ setReportingEncryptionKey()

final void com.speedify.speedifysdk.SpeedifySDK.setReportingEncryptionKey ( String  key128bit)

Set reporting encryption key.

Parameters
key128bitA 16 byte ascii encoded, 32byte hex encoded, or base64 encoded string used to encrypt sensitive reports, or null to use default.
Since
6.3

◆ setSafeBrowsingConfig()

final void com.speedify.speedifysdk.SpeedifySDK.setSafeBrowsingConfig ( String  safeBrowsingConfig)

Sets the optional Safe Browsing config If config set is available from OnSafeBrowsing.

Parameters
safeBrowsingConfiga configuration string for the safe browsing service
Since
10.6

◆ setSafeBrowsingEnabled()

final void com.speedify.speedifysdk.SpeedifySDK.setSafeBrowsingEnabled ( boolean  enabled)

Sets if Safe Browsing is enabled Current value available from OnSafeBrowsing.

Parameters
enabledif safe browsing should be enabled
Since
10.6

◆ setServiceNotificationIcon()

final void com.speedify.speedifysdk.SpeedifySDK.setServiceNotificationIcon ( int  drawableId)

Sets the icon used by the default service foreground notification.

Parameters
drawableIdresource id of the drawable to use
Since
5.6

◆ setServiceNotificationLaunchIntent()

final void com.speedify.speedifysdk.SpeedifySDK.setServiceNotificationLaunchIntent ( Intent  intent)

If using the default service forergound notification, sets the Intent used when use clicks the notification.

Parameters
intentIntent launched when clicking default foreground notification
Since
5.6

◆ setStartupConnect()

final void com.speedify.speedifysdk.SpeedifySDK.setStartupConnect ( boolean  enabled)

Set if Speedify should autmatically connect when the daemon starts.

Register a StartupBroadcastReceiver to obtain on-boot functionality. Triggers OnSettings.

Parameters
enabledautomatically connect
Since
9.4

◆ setTunnelEncrypted()

final void com.speedify.speedifysdk.SpeedifySDK.setTunnelEncrypted ( boolean  encrypted)

Sets encryption status on all connections forming the tunnels.

This is equivalent to calling setConnectionEncryption for all adapterIDs. Current value available from OnSettings.

Parameters
encryptedwhether to encrypt
Since
5.8

◆ setVendorUserData()

final void com.speedify.speedifysdk.SpeedifySDK.setVendorUserData ( String  vendorUserData)

Set vendor user data Current value available from OnVendorUserData.

Parameters
vendorUserDatauser data string
Since
9.8

◆ startSpeedtest()

final void com.speedify.speedifysdk.SpeedifySDK.startSpeedtest ( )

Start a speedtest.

This runs various tests over each individual connection, except those set to BACKUP or NEVER priorities, as well as over the combined tunnel connection. Trigers OnSpeedtestResults once per second while testing.

Since
5.9

◆ stopSpeedtest()

final void com.speedify.speedifysdk.SpeedifySDK.stopSpeedtest ( )

Stop a speedtest.

Since
5.9

◆ subscribeToEvent()

void com.speedify.speedifysdk.SpeedifySDK.subscribeToEvent ( String  event)
protected

internal use

Parameters
eventevent to subscribe to

◆ Version()

final String com.speedify.speedifysdk.SpeedifySDK.Version ( )

SpeedifySDK version.

Returns
string of the version, ie: 5.6.0.0
Since
5.6

The documentation for this class was generated from the following file: