reactnative-plugin-appice 1.6.3 → 1.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +3 -3
- package/android/src/main/AndroidManifest.xml +47 -127
- package/android/src/main/java/com/reactlibrary/AppICEUtils.java +151 -21
- package/android/src/main/java/com/reactlibrary/AppIceReactPluginModule.java +307 -240
- package/android/src/main/java/com/reactlibrary/CampaignCampsReceiver.java +6 -23
- package/android/src/main/java/com/reactlibrary/EnumConstants.java +251 -0
- package/android/src/main/java/com/reactlibrary/NotificationEventService.java +2 -4
- package/example/App.js +76 -0
- package/example/package.json +1 -1
- package/index.js +201 -61
- package/ios/AppIceReactPlugin.h +36 -0
- package/ios/AppIceReactPlugin.m +202 -1
- package/ios/AppIceReactPlugin.xcodeproj/xcuserdata/artherajesh.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/ios/AppIceReactPlugin.xcworkspace/xcuserdata/artherajesh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/Pods/Pods.xcodeproj/xcuserdata/artherajesh.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/package.json +1 -1
- package/android/src/main/java/com/reactlibrary/ClickCallback.java +0 -5
- package/android/src/main/java/com/reactlibrary/InAppWebView.java +0 -68
|
@@ -3,33 +3,15 @@ package com.reactlibrary;
|
|
|
3
3
|
import android.content.BroadcastReceiver;
|
|
4
4
|
import android.content.Context;
|
|
5
5
|
import android.content.Intent;
|
|
6
|
-
import android.net.Uri;
|
|
7
6
|
import android.os.Bundle;
|
|
8
|
-
import android.util.Log;
|
|
9
7
|
|
|
10
8
|
import com.facebook.react.bridge.Arguments;
|
|
11
9
|
import com.facebook.react.bridge.WritableMap;
|
|
12
10
|
|
|
13
|
-
import org.json.JSONException;
|
|
14
11
|
import org.json.JSONObject;
|
|
15
12
|
|
|
16
|
-
import java.net.URLDecoder;
|
|
17
|
-
import java.util.HashMap;
|
|
18
|
-
import java.util.Iterator;
|
|
19
|
-
import java.util.Map;
|
|
20
|
-
import java.util.Set;
|
|
21
|
-
|
|
22
|
-
import semusi.activitysdk.ContextSdk;
|
|
23
|
-
|
|
24
|
-
|
|
25
13
|
public class CampaignCampsReceiver extends BroadcastReceiver {
|
|
26
14
|
private static final String TAG = "CampaignCampsReceiver";
|
|
27
|
-
|
|
28
|
-
public static ClickCallback clickCallback;
|
|
29
|
-
|
|
30
|
-
public CampaignCampsReceiver(ClickCallback clickCallback){
|
|
31
|
-
this.clickCallback = clickCallback;
|
|
32
|
-
}
|
|
33
15
|
public CampaignCampsReceiver(){
|
|
34
16
|
}
|
|
35
17
|
|
|
@@ -38,6 +20,7 @@ public class CampaignCampsReceiver extends BroadcastReceiver {
|
|
|
38
20
|
try {
|
|
39
21
|
sendCallback(intent.getExtras(), context);
|
|
40
22
|
} catch (Exception e) {
|
|
23
|
+
AppICEUtils.printLog(TAG,e.getMessage());
|
|
41
24
|
}
|
|
42
25
|
}
|
|
43
26
|
|
|
@@ -51,8 +34,8 @@ public class CampaignCampsReceiver extends BroadcastReceiver {
|
|
|
51
34
|
if (category) {
|
|
52
35
|
if (cdata != null && cdata.length() > 0) {
|
|
53
36
|
WritableMap params = Arguments.createMap();
|
|
54
|
-
params.putString(
|
|
55
|
-
AppIceReactPluginModule.sendEvent(
|
|
37
|
+
params.putString(EnumConstants.APPICE_INAPP_NOTIFICATION_CLICKED.getValue(), cdata);
|
|
38
|
+
AppIceReactPluginModule.sendEvent(EnumConstants.APPICE_INAPP_NOTIFICATION_CLICKED.getValue(), params);
|
|
56
39
|
}
|
|
57
40
|
}
|
|
58
41
|
|
|
@@ -61,13 +44,13 @@ public class CampaignCampsReceiver extends BroadcastReceiver {
|
|
|
61
44
|
if (pushContent != null){
|
|
62
45
|
WritableMap params = Arguments.createMap();
|
|
63
46
|
if (pushContent != null){
|
|
64
|
-
params.putString(
|
|
65
|
-
AppIceReactPluginModule.sendEvent(
|
|
47
|
+
params.putString(EnumConstants.APPICE_PUSH_NOTIFICATION_CLICKED.getValue(), pushContent.toString());
|
|
48
|
+
AppIceReactPluginModule.sendEvent(EnumConstants.APPICE_PUSH_NOTIFICATION_CLICKED.getValue(), params);
|
|
66
49
|
}
|
|
67
50
|
}
|
|
68
51
|
}
|
|
69
52
|
} catch (Exception e) {
|
|
70
|
-
e.
|
|
53
|
+
AppICEUtils.printLog(TAG,e.getMessage());
|
|
71
54
|
}
|
|
72
55
|
}
|
|
73
56
|
}
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
package com.reactlibrary;
|
|
2
|
+
|
|
3
|
+
//Common place for constant and SDK constants
|
|
4
|
+
public enum EnumConstants {
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
// TODO: 02/01/24 once iOS will ready to rename it we will rename the key, because right now key and value are same.
|
|
8
|
+
//=========================
|
|
9
|
+
//USER-PROFILE
|
|
10
|
+
//=========================
|
|
11
|
+
APPICE_USER_NAME("n"),
|
|
12
|
+
APPICE_USER_PHONE("ph"),
|
|
13
|
+
APPICE_USER_EMAIL("em"),
|
|
14
|
+
APPICE_DATE_OF_BIRTH("APPICE_DATE_OF_BIRTH"),
|
|
15
|
+
APPICE_USER_AGE("a"),
|
|
16
|
+
APPICE_USER_EDUCATION("ed"),
|
|
17
|
+
APPICE_USER_GENDER("g"),
|
|
18
|
+
APPICE_USER_IS_EMPLOYED("is_emp"),
|
|
19
|
+
APPICE_USER_EMPLOYMENT_TYPE ("et"),
|
|
20
|
+
APPICE_USER_MARRIED("m"),
|
|
21
|
+
|
|
22
|
+
//===========================
|
|
23
|
+
//PUSH
|
|
24
|
+
//============================
|
|
25
|
+
APPICE_PUSH_NOTIFICATION_CLICKED("AppICEPushNotificationClicked"),
|
|
26
|
+
|
|
27
|
+
//===========================
|
|
28
|
+
//IN-APP
|
|
29
|
+
//============================
|
|
30
|
+
APPICE_INAPP_NOTIFICATION_CLICKED("AppICEInAppClicked"),
|
|
31
|
+
|
|
32
|
+
//============================
|
|
33
|
+
//INBOX
|
|
34
|
+
//=============================
|
|
35
|
+
INBOX_MESSAGE("INBOX_MESSAGE"),
|
|
36
|
+
INBOX_TITLE("INBOX_TITLE"),
|
|
37
|
+
INBOX_MESSAGE_STATUS("INBOX_MESSAGE_STATUS"),
|
|
38
|
+
INBOX_CAMPAIGN_TYPE("INBOX_CAMPAIGN_TYPE"),
|
|
39
|
+
INBOX_MESSAGE_LANGUAGE("INBOX_MESSAGE_LANGUAGE"),
|
|
40
|
+
INBOX_MESSAGE_ID("INBOX_MESSAGE_ID"),
|
|
41
|
+
INBOX_CAMPAIGN_ID("INBOX_CAMPAIGN_ID"),
|
|
42
|
+
INBOX_MESSAGE_CATEGORY("INBOX_MESSAGE_CATEGORY"),
|
|
43
|
+
INBOX_MESSAGE_ICON("INBOX_MESSAGE_ICON"),
|
|
44
|
+
INBOX_CUSTOM_DATA("INBOX_CUSTOM_DATA"),
|
|
45
|
+
|
|
46
|
+
//==================================
|
|
47
|
+
// custom user data
|
|
48
|
+
//==================================
|
|
49
|
+
|
|
50
|
+
FIRST_SEEN("FIRST_SEEN"),
|
|
51
|
+
LAST_SEEN("LAST_SEEN"),
|
|
52
|
+
TOP_N_PRODUCTS_VIEWED("TOP_N_PRODUCTS_VIEWED"),
|
|
53
|
+
N_COMPLAINTS_RAISED("N_COMPLAINTS_RAISED"),
|
|
54
|
+
PREF_LOGIN_DEVICE("PREF_LOGIN_DEVICE"),
|
|
55
|
+
REFERRAL_CAMPAIGN("REFERRAL_CAMPAIGN"),
|
|
56
|
+
DEMOGRAPHIC_INFO("DEMOGRAPHIC_INFO"),
|
|
57
|
+
|
|
58
|
+
//================
|
|
59
|
+
// ECOMMERCE
|
|
60
|
+
//================
|
|
61
|
+
TOTAL_ORDER_VALUE("TOTAL_ORDER_VALUE"),
|
|
62
|
+
ADD_TO_CART_N_DAYS("ADD_TO_CART_N_DAYS"),
|
|
63
|
+
|
|
64
|
+
//====================
|
|
65
|
+
// FinancialServices
|
|
66
|
+
//====================
|
|
67
|
+
FINANCIAL_SERVICES("FINANCIAL_SERVICES"),
|
|
68
|
+
CREDIT_SCORE("CREDIT_SCORE"),
|
|
69
|
+
DEBT_TO_INCOME_RATIO("DEBT_TO_INCOME_RATIO"),
|
|
70
|
+
SAVINGS_BALANCE("SAVINGS_BALANCE"),
|
|
71
|
+
CHECKING_BALANCE("CHECKING_BALANCE"),
|
|
72
|
+
AVERAGE_TRANSACTION_AMOUNT("AVERAGE_TRANSACTION_AMOUNT"),
|
|
73
|
+
FREQUENCY_OF_TRANSACTION("FREQUENCY_OF_TRANSACTION"),
|
|
74
|
+
TYPE_OF_TRANSACTION("TYPE_OF_TRANSACTION");
|
|
75
|
+
|
|
76
|
+
private String constants;
|
|
77
|
+
|
|
78
|
+
EnumConstants(String constants) {
|
|
79
|
+
this.constants = constants;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
public String getConstants() {
|
|
83
|
+
return constants;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// TODO: 29/12/23 {
|
|
87
|
+
// replace static value with sdk value
|
|
88
|
+
// }
|
|
89
|
+
public String getValue(){
|
|
90
|
+
switch (constants){
|
|
91
|
+
case "APPICE_USER_NAME":{
|
|
92
|
+
return "n";
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
case "APPICE_USER_PHONE":{
|
|
96
|
+
return "ph";
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
case "APPICE_USER_EMAIL":{
|
|
100
|
+
return "em";
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
case "APPICE_DATE_OF_BIRTH":{
|
|
104
|
+
return "dob";
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
case "APPICE_USER_AGE":{
|
|
108
|
+
return "a";
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
case "APPICE_USER_EDUCATION":{
|
|
112
|
+
return "ed";
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
case "APPICE_USER_GENDER":{
|
|
116
|
+
return "g";
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
case "APPICE_USER_IS_EMPLOYED":{
|
|
120
|
+
return "is_emp";
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
case "APPICE_USER_EMPLOYMENT_TYPE":{
|
|
124
|
+
return "et";
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
case "APPICE_USER_MARRIED":{
|
|
128
|
+
return "m";
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
case "APPICE_PUSH_NOTIFICATION_CLICKED":{
|
|
132
|
+
return "AppICEPushNotificationClicked";
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
case "APPICE_INAPP_NOTIFICATION_CLICKED":{
|
|
136
|
+
return "AppICEInAppClicked";
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
case "INBOX_MESSAGE":{
|
|
140
|
+
return "message";
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
case "INBOX_TITLE":{
|
|
144
|
+
return "title";
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
case "INBOX_MESSAGE_STATUS":{
|
|
148
|
+
return "messageStatus";
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
case "INBOX_CAMPAIGN_TYPE":{
|
|
152
|
+
return "campType";
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
case "INBOX_MESSAGE_LANGUAGE":{
|
|
156
|
+
return "messageLanguage";
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
case "INBOX_MESSAGE_ID":{
|
|
160
|
+
return "id";
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
case "INBOX_CAMPAIGN_ID":{
|
|
164
|
+
return "campId";
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
case "INBOX_MESSAGE_CATEGORY":{
|
|
168
|
+
return "category";
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
case "INBOX_MESSAGE_ICON":{
|
|
172
|
+
return "icon";
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
case "INBOX_CUSTOM_DATA":{
|
|
176
|
+
return "cdata";
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
case "FIRST_SEEN":{
|
|
180
|
+
return "fsn";
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
case "LAST_SEEN":{
|
|
184
|
+
return "lsn";
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
case "TOP_N_PRODUCTS_VIEWED":{
|
|
188
|
+
return "tn";
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
case "N_COMPLAINTS_RAISED":{
|
|
192
|
+
return "nc";
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
case "PREF_LOGIN_DEVICE":{
|
|
196
|
+
return "pl";
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
case "REFERRAL_CAMPAIGN":{
|
|
200
|
+
return "rc";
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
case "DEMOGRAPHIC_INFO":{
|
|
204
|
+
return "customProperties";
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
case "TOTAL_ORDER_VALUE":{
|
|
208
|
+
return "tv";
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
case "ADD_TO_CART_N_DAYS":{
|
|
212
|
+
return "an";
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
case "FINANCIAL_SERVICES":{
|
|
216
|
+
return "fs";
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
case "CREDIT_SCORE":{
|
|
220
|
+
return "cs";
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
case "DEBT_TO_INCOME_RATIO":{
|
|
224
|
+
return "di";
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
case "SAVINGS_BALANCE":{
|
|
228
|
+
return "sb";
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
case "CHECKING_BALANCE":{
|
|
232
|
+
return "cb";
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
case "AVERAGE_TRANSACTION_AMOUNT":{
|
|
236
|
+
return "at";
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
case "FREQUENCY_OF_TRANSACTION":{
|
|
240
|
+
return "ft";
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
case "TYPE_OF_TRANSACTION":{
|
|
244
|
+
return "tt";
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
default:
|
|
248
|
+
return "";
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
@@ -15,7 +15,6 @@ import java.util.concurrent.atomic.AtomicReference;
|
|
|
15
15
|
|
|
16
16
|
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
|
17
17
|
public class NotificationEventService extends JobService {
|
|
18
|
-
|
|
19
18
|
@Override
|
|
20
19
|
public boolean onStartJob(final JobParameters params) {
|
|
21
20
|
if (params != null) {
|
|
@@ -27,7 +26,7 @@ public class NotificationEventService extends JobService {
|
|
|
27
26
|
@Override
|
|
28
27
|
public void run() {
|
|
29
28
|
CampaignCampsReceiver rc = new CampaignCampsReceiver();
|
|
30
|
-
|
|
29
|
+
AppICEUtils.printLog("NotificationEventService"," data "+bundle1);
|
|
31
30
|
rc.sendCallback(bundle1, getApplicationContext());
|
|
32
31
|
jobFinished(params,false);
|
|
33
32
|
}
|
|
@@ -58,5 +57,4 @@ public class NotificationEventService extends JobService {
|
|
|
58
57
|
public boolean onStopJob(JobParameters params) {
|
|
59
58
|
return false;
|
|
60
59
|
}
|
|
61
|
-
}
|
|
62
|
-
|
|
60
|
+
}
|
package/example/App.js
CHANGED
|
@@ -89,6 +89,32 @@ addAppICEAPIListeners();
|
|
|
89
89
|
color="#841584"
|
|
90
90
|
|
|
91
91
|
/>
|
|
92
|
+
<Button
|
|
93
|
+
onPress={getInboxMessage}
|
|
94
|
+
title="getInboxMessage"
|
|
95
|
+
color="#841584"
|
|
96
|
+
|
|
97
|
+
/>
|
|
98
|
+
<Button
|
|
99
|
+
onPress={getMessageCount}
|
|
100
|
+
title="getMessageCount"
|
|
101
|
+
color="#841584"
|
|
102
|
+
/>
|
|
103
|
+
<Button
|
|
104
|
+
onPress={getInboxMessageForId}
|
|
105
|
+
title="getInboxMessageForId"
|
|
106
|
+
color="#841584"
|
|
107
|
+
/>
|
|
108
|
+
<Button
|
|
109
|
+
onPress={updateInboxMessage}
|
|
110
|
+
title="updateInboxMessage"
|
|
111
|
+
color="#841584"
|
|
112
|
+
/>
|
|
113
|
+
<Button
|
|
114
|
+
onPress={synchronizeInbox}
|
|
115
|
+
title="synchronizeInbox"
|
|
116
|
+
color="#841584"
|
|
117
|
+
/>
|
|
92
118
|
</View>
|
|
93
119
|
)
|
|
94
120
|
|
|
@@ -157,4 +183,54 @@ const getUserId = () => {
|
|
|
157
183
|
});
|
|
158
184
|
};
|
|
159
185
|
|
|
186
|
+
const type = 1;
|
|
187
|
+
const userIds = ['1232323' , 'kuOEN8bCqdrROmJPVCeKSg=='];
|
|
188
|
+
|
|
189
|
+
const getInboxMessage = () => {
|
|
190
|
+
AppICE.getInboxMessages(type, userIds, (inboxMessages: any[]) => {
|
|
191
|
+
console.log('Received Inbox Messages:', inboxMessages);
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
const getMessageCount = () => {
|
|
196
|
+
AppICE.getMessageCount(type, userIds, (count: number) => {
|
|
197
|
+
console.log('Messages count :', count);
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
const getInboxMessageForId = () => {
|
|
203
|
+
const messageId = "df73e314-2a61-4615-9fa5-348419e3fc82";
|
|
204
|
+
const userIds = ['1232323' , 'kuOEN8bCqdrROmJPVCeKSg=='];
|
|
205
|
+
|
|
206
|
+
AppICE.getInboxMessageForId(messageId, userIds, (inboxMessage: any) => {
|
|
207
|
+
console.log('getInboxMessageForId in JS:', inboxMessage);
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
const updateInboxMessage = () => {
|
|
214
|
+
const messageId = "df73e314-2a61-4615-9fa5-348419e3fc82";
|
|
215
|
+
const userId = ['1232323' , 'kuOEN8bCqdrROmJPVCeKSg=='];
|
|
216
|
+
AppICE.updateInboxMessage(messageId, 1, userId, (isSuccess: boolean) => {
|
|
217
|
+
console.log('Update Inbox Message Success:', isSuccess);
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
const synchronizeInbox = () => {
|
|
224
|
+
AppICE.synchronizeInbox(10, (success: boolean) => {
|
|
225
|
+
console.log('Inbox synchronization success:', success);
|
|
226
|
+
const userIds = ['1232323' , 'kuOEN8bCqdrROmJPVCeKSg=='];
|
|
227
|
+
AppICE.getInboxMessages( 1, userIds, (inboxMessages: any[]) => {
|
|
228
|
+
console.log('Inbox Messages:', inboxMessages);
|
|
229
|
+
// everytime will return next set of data from payload
|
|
230
|
+
// var inbox = getInboxFilteredData (inbox, key= "Transaction", limit=10, offset=1 );
|
|
231
|
+
});
|
|
232
|
+
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
|
|
160
236
|
export default HelloWorldApp;
|