3.4.0
Breaking changes
- On
IterableApi, changed two static methods—handleAppLinkandgetAndTrackDeepLink—to instance methods. To call them, first grab an instance ofIterableApiby callingIterableApi.getInstance(). For example,IterableApi.getInstance().handleAppLink(...).
Added
-
Added the
allowedProtocolsfield to theIterableConfigclass.Use this array to declare the specific URL protocols that the SDK can expect to see on incoming links (and that it should therefore handle). Doing this will prevent the SDK from opening links that use unexpected URL protocols.
For example, this code allows the SDK to handle
httpandcustomlinks:Java
IterableConfig.Builder configBuilder = new IterableConfig.Builder() .setAllowedProtocols(new String[]{"http", "custom"}); IterableApi.initialize(context, "<YOUR_API_KEY>", config);
Kotlin
val configBuilder = IterableConfig.Builder() .setAllowedProtocols(arrayOf("http","custom")) IterableApi.initialize(context, "<YOUR_API_KEY>", configBuilder.build());
Iterable's Android SDK handles
https,action,itbl, anditerablelinks, regardless of the contents of this array. However, you must explicitly declare any other types of URL protocols you'd like the SDK to handle (otherwise, the SDK won't open them in the web browser or as deep links).
Fixed
- Prevented in-app messages from executing JavaScript code included in their HTML templates.
- Prevented web views from accessing local files.