Skip to content

Commit d9917a4

Browse files
author
“Akshay
committed
Adding MOB-3876
Cherry picking 3876 which seemed lost in Encryption branch
1 parent fbddd09 commit d9917a4

File tree

1 file changed

+27
-21
lines changed

1 file changed

+27
-21
lines changed

iterableapi/src/main/java/com/iterable/iterableapi/IterableNetworkConnectivityManager.java

+27-21
Original file line numberDiff line numberDiff line change
@@ -47,29 +47,35 @@ private void startNetworkCallback(Context context) {
4747
NetworkRequest.Builder networkBuilder = new NetworkRequest.Builder();
4848

4949
if (connectivityManager != null) {
50-
connectivityManager.registerNetworkCallback(networkBuilder.build(), new ConnectivityManager.NetworkCallback() {
51-
@Override
52-
public void onAvailable(@NonNull Network network) {
53-
super.onAvailable(network);
54-
IterableLogger.v(TAG, "Network Connected");
55-
isConnected = true;
56-
ArrayList<IterableNetworkMonitorListener> networkListenersCopy = new ArrayList<>(networkMonitorListeners);
57-
for (IterableNetworkMonitorListener listener : networkListenersCopy) {
58-
listener.onNetworkConnected();
50+
try {
51+
connectivityManager.registerNetworkCallback(networkBuilder.build(), new ConnectivityManager.NetworkCallback() {
52+
@Override
53+
public void onAvailable(@NonNull Network network) {
54+
super.onAvailable(network);
55+
IterableLogger.v(TAG, "Network Connected");
56+
isConnected = true;
57+
ArrayList<IterableNetworkMonitorListener> networkListenersCopy = new ArrayList<>(networkMonitorListeners);
58+
for (IterableNetworkMonitorListener listener : networkListenersCopy) {
59+
listener.onNetworkConnected();
60+
}
5961
}
60-
}
61-
62-
@Override
63-
public void onLost(@NonNull Network network) {
64-
super.onLost(network);
65-
IterableLogger.v(TAG, "Network Disconnected");
66-
isConnected = false;
67-
ArrayList<IterableNetworkMonitorListener> networkListenersCopy = new ArrayList<>(networkMonitorListeners);
68-
for (IterableNetworkMonitorListener listener : networkListenersCopy) {
69-
listener.onNetworkDisconnected();
62+
63+
@Override
64+
public void onLost(@NonNull Network network) {
65+
super.onLost(network);
66+
IterableLogger.v(TAG, "Network Disconnected");
67+
isConnected = false;
68+
ArrayList<IterableNetworkMonitorListener> networkListenersCopy = new ArrayList<>(networkMonitorListeners);
69+
for (IterableNetworkMonitorListener listener : networkListenersCopy) {
70+
listener.onNetworkDisconnected();
71+
}
7072
}
71-
}
72-
});
73+
});
74+
} catch (SecurityException e) {
75+
// This security exception seems to be affecting few devices.
76+
// More information here: https://issuetracker.google.com/issues/175055271?pli=1
77+
IterableLogger.e(TAG, e.getLocalizedMessage());
78+
}
7379
}
7480
}
7581

0 commit comments

Comments
 (0)