3.4.0
Breaking changes
- On
IterableApi
, changed two static methods—handleAppLink
andgetAndTrackDeepLink
—to instance methods. To call them, first grab an instance ofIterableApi
by callingIterableApi.getInstance()
. For example,IterableApi.getInstance().handleAppLink(...)
.
Added
-
Added the
allowedProtocols
field to theIterableConfig
class.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
http
andcustom
links: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
, anditerable
links, 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.