You will need your
PROXY_SECRET. Refer to the Proxy documentation
First we must add unleash-android-proxy-sdk as a dependency to our project.
NB - Your app will need internet permission in order to reach the proxy. So in your manifest add
Since the proxy works by evaluating all feature toggles server side and returning the evaluated toggles back to the client, we'll need to configure the context to send to the proxy for evaluation.
Configuring the client includes adding the URL for your proxy host, your proxy secret and deciding how you want to load the toggle status. As of v0.1 the SDK supports an automatic polling with an adjustable poll period or loading the state from disk. Most users will probably use the polling client, but it's nice to know that you can instantiate your client without actually needing Internet if you choose loading from File
Configuring a client with a 60 seconds poll interval
If you need to have a known state for your UnleashClient, you can perform a query against the proxy using your HTTP client of choice and save the output as a json file. Then you can tell Unleash to use this file to setup toggle states.
Having created your
UnleashContext and your
UnleashConfig you can now instantiate your client. Make sure you only do this once, and pass the instantiated client to classes/functions that need it.
Now that we have initialized the proxy SDK we can start using feature toggles defined in Unleash in our application. To achieve this we have the “isEnabled” method available, which will allow us to check the value of a feature toggle. This method will return true or false based on whether the feature should be enabled or disabled for the current state.
When using the AutoPoll mode you are able to pass in a listener which will get notified everytime our toggles changes, allowing you to recheck your toggles. For an example, see our android-sample-app
KDoc for the api is available at https://docs.getunleash.io/unleash-android-proxy-sdk
Readme for the client and source code is available at https://github.com/Unleash/unleash-android-proxy-sdk