Changes for page React native integration
Last modified by Developer on 2020/01/03 12:47
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -2,7 +2,7 @@ 2 2 {{toc/}} 3 3 {{/box}} 4 4 5 -= Overview = 5 += 1. Overview = 6 6 7 7 The plugin is located at npmjs repositories [[(npm repositories)>>https://www.npmjs.com/package/react-native-mobigate]] 8 8 This plugin is built for: ... ... @@ -9,7 +9,7 @@ 9 9 10 10 * Mobigate SDK version 1.0.4 11 11 12 -= Adding SDK to the project = 12 += 2. Adding SDK to the project = 13 13 14 14 **First, install library from the repository with** 15 15 ... ... @@ -60,7 +60,7 @@ 60 60 } 61 61 {{/code}}{{/showhide}} 62 62 63 -= Api methods = 63 += 3. Api methods = 64 64 65 65 To use any method from the plugin add import: 66 66 ... ... @@ -68,7 +68,7 @@ 68 68 import Mobigate from 'react-native-mobigate' 69 69 {{/code}} 70 70 71 -== SDK initialization == 71 +== 3.1 SDK initialization == 72 72 73 73 You must initialize the library before running it. Use //init(apiKey, options, onSuccess, onError)// method for that: 74 74 ... ... @@ -81,29 +81,327 @@ 81 81 |onSuccess|Function|returns callback object 82 82 |onError|Function|returns callback object 83 83 84 -Options 85 - 84 +{{showhide id="2" showmessage="Options" hidemessage="Options"}} 86 86 (% class="table-bordered table-hover" style="border-color:powderblue" %) 87 87 |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 88 88 | appIdentifier|String| | Application identifier 89 -|appInstallationSource |String| | App installation source e.g., google-play, organic 90 -|email |String | | Set's user email 91 -|customUserId |String | | Set custom User Agent 92 -| enableUserFields|Json Array | | Enable custom fields in user data. By default MobienceSDK is gathering all identifiers, which it can read. You can choose one of these field: ["email", "imei", "imsi", "msisdn", "mac", "serial"] DODAĆ LINKA DO CONSTANTS 93 -| dataGatherPolicy| Json Object| | Enable custom data gater policy. By default MobienceSDK gather all data it can read and hide notification icon.You can choose one of these states: "BLOCK_DATA_BG","HIDE_TRAY","DEFAULT" DODAĆ LINKA DO CONSTANTS| | | 94 -| enableIdProfiles|Boolean |false | turns on / off the IDs profiles system 88 +|appInstallationSource |String| | App installation source e.g., google-play, organic. 89 +|email |String | | Set's user email. 90 +|customUserId |String | | You may use your custom userID for marking data. By default we are using device ID and emails for matching. Set it before starting the service using MobigateSDk.Builder method. 91 +| enableUserFields|Json Array | | Enable custom fields in user data. By default MobienceSDK is gathering all identifiers, which it can read. You can choose one of these field: ["email", "imei", "imsi", "msisdn", "mac", "serial"] DODAĆ LINKA DO CONSTANTS. 92 +| dataGatherPolicy| Json Object| | Enable custom data gater policy. By default MobienceSDK gather all data it can read and hide notification icon. Check below DataGatherPolicy options for more details. 93 +| enableIdProfiles|Boolean |false | turns on / off the IDs profiles system. 94 +{{/showhide}} 95 95 96 -DataGatherPolicy options 96 +{{showhide id="3" showmessage="DataGatherPolicy options" hidemessage="DataGatherPolicy options"}} 97 +(% class="table-bordered table-hover" style="border-color:powderblue" %) 98 +|=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 99 +| monitorState|String| | Possible monitor states: DODAĆ LINKA DO CONSTANTS. More info about gathering data [[here>>https://wiki.spicymobile.pl/wiki/mobigatesdk/view/Main/mobigatesdkintegrationforandroiddevelopers/#H5.8Datagatherpolicy]] 100 +|notificationText|String| | if state = Mobigate.DATA_GATHER_POLICY_DEFAULT you can pass custom foreground service notification text 101 +{{/showhide}} 97 97 103 + 104 +When the library is already initialized run it. Use //startSDK(onSuccess, onError)// method for that: 105 + 106 +**Mobigate.startSDK(onSuccess, onError)** 107 + 98 98 (% class="table-bordered table-hover" style="border-color:powderblue" %) 109 +|=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description 110 +|onSuccess|Function|returns callback object 111 +|onError|Function|returns callback object 112 + 113 +{{showhide id="3" showmessage="Example" hidemessage="Example"}} 114 +{{code language="javascript"}} 115 + initLibrary = () => { 116 + if (Platform.OS === 'android') { 117 + Mobigate.init("V0K6jhiIfem6CRWHYZ59Nmj3oFBBKbJsnSsWfR2JNq7ktblOUXwbJoBQTpWnw2uSwW76gpiu2kun50jweTY69B", 118 + { 119 + /*custom options, check docs for more details 120 + appIdentifier: 'customUserAppIdentifier', 121 + appInstallationSource: "customAppInstallationSourcexyz", 122 + email: 'testemail@gmail.com', 123 + userAgent: 'customUserAgent', 124 + customUserId: 'customUserId',*/ 125 + }, (success) => { 126 + /* You can configure custom collectors after init 127 + Mobigate.disableAllDataCollector() 128 + Mobigate.configureDataCollectors(true, [Mobigate.DATA_COLLECTOR_APPS_LIST, 129 + Mobigate.DATA_COLLECTOR_BATTERY, 130 + Mobigate.DATA_COLLECTOR_PHONE_INFO])*/ 131 + 132 + Mobigate.startSDK((result) => { 133 + this.setState({ 134 + status: 'started', 135 + }); 136 + 137 + }, (errorResult) => { 138 + this.setState({ 139 + status: errorResult, 140 + }); 141 + }) 142 + }, (initError) => { 143 + this.setState({ 144 + status: initError, 145 + }); 146 + }) 147 + }else{ 148 + this.setState({ 149 + status: 'Mobigate SDK supports only Android' 150 + }) 151 + } 152 + } 153 +{{/code}} 154 +{{/showhide}} 155 + 156 +== 3.2 Tracking in app events == 157 + 158 +In-App Events provide insight on what is happening in your app. It is recommended to take the time and define the events you would like to measure. 159 + 160 +=== 3.2.1 Overview === 161 + 162 +An event consists of two fields that you (% style="display:none" %) (%%)can use to describe a user's interaction with your app content: 163 + 164 +(% class="table-bordered table-hover" %) 165 +|(% style="background-color:powderblue; width:200px" %)**Field name**|(% style="background-color:powderblue; width:200px" %)**Type**|(% style="background-color:powderblue; width:200px" %)**Required**|(% style="background-color:powderblue; width:200px" %)**Description** 166 +|(% style="width:200px" %)Category|(% style="width:200px" %)String|(% style="width:200px" %)yes|(% style="width:200px" %)Event category 167 +|(% style="width:200px" %)Parameter|(% style="width:200px" %)String|(% style="width:200px" %)no|(% style="width:200px" %)Event parameter. 168 +There can be more than one 169 + 170 +You can use any event category or parameter string of your choice. However, react-native-mobigate plugin contains recommended event categories and parameters via String constants (see [[Event categories>>doc:||anchor="H3.2.3Eventcategories"]] and [[Event parameters>>doc:||anchor="H3.2.4Eventparameters"]]). 171 + 172 +=== 3.2.2 Implementation === 173 + 174 +Tracking in-app events is performed by two methods: 175 + 176 +**Mobigate.trackEvent(options)** 177 + 178 +{{showhide id="2" showmessage="Options" hidemessage="Options"}} 179 +(% class="table-bordered table-hover" style="border-color:powderblue" %) 99 99 |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 100 -| monitorState|String| | Application identifier 101 -|notificationText|String| | App installation source e.g., google-play, organic 181 +|name|String | | Event category name. 182 +|parameters|Json array| | Array of parameters. Look below on example. 183 +{{/showhide}} 102 102 103 -== Tracking in app events == 185 +{{showhide id="3" showmessage="Example" hidemessage="Example"}} 186 +{{code language="javascript"}} 187 + sendTrackEvent = () => { 188 + if (Platform.OS === 'android') { 189 + Mobigate.trackEvent({ 190 + name: Mobigate.CATEGORY_PURCHASE, 191 + parameters: { 192 + [Mobigate.PARAMETER_CONTENT_ID]: 42313532, 193 + [Mobigate.PARAMETER_PRICE]: 43.23, 194 + [Mobigate.PARAMETER_QUANTITY]: 2, 195 + 'userCustomParameterName':'simpleName' 196 + }, 197 + }) 198 + } 199 + } 200 +{{/code}} 201 +{{/showhide}} 104 104 105 -== Remaining methods == 106 106 107 - = Constants=204 +**Mobigate.trackAppInstall(timestamp)** 108 108 109 -= Sample app = 206 +(% class="table-bordered table-hover" style="border-color:powderblue" %) 207 +|=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description 208 +|timestamp|double|Unix timestamp in milliseconds 209 + 210 +{{showhide id="3" showmessage="Example" hidemessage="Example"}} 211 +{{code language="javascript"}} 212 + sendTrackEvent = () => { 213 + if (Platform.OS === 'android') { 214 + Mobigate.trackAppInstall(1578042916000) 215 + } 216 + } 217 +{{/code}} 218 +{{/showhide}} 219 + 220 +=== 3.2.3 Event categories === 221 + 222 +The following section describes the recommended structure of each event category. In-app events categories are defined as part of plugin String constants. 223 + 224 + 225 +{{showhide id="1" showmessage="LEVEL_ACCOMPLISHED" hidemessage="LEVEL_ACCOMPLISHED" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: 0px"}} 226 + 227 +\\**Description:** Track accomplished game level achievement 228 +**Event category:** LEVEL_ACCOMPLISHED 229 +**Recommended parameters:** LEVEL, SCORE 230 +{{/showhide}} 231 + 232 +{{showhide id="2" showmessage="ADD_PAYMENT_INFO" hidemessage="ADD_PAYMENT_INFO" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 233 + 234 +\\**Description:** Track payment info 235 +**Event category:** ADD_PAYMENT_INFO 236 +**Recommended parameters:** SUCCESS 237 +{{/showhide}} 238 + 239 +{{showhide id="3" showmessage="ADD_TO_BASKET" hidemessage="ADD_TO_BASKET" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 240 + 241 +\\**Description:** Track add item to basket 242 +**Event category:** ADD_TO_BASKET 243 +**Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY, QUANTITY 244 +{{/showhide}} 245 + 246 +{{showhide id="4" showmessage="REMOVED_FROM_BASKET" hidemessage="REMOVED_FROM_BASKET" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 247 + 248 +\\**Description:** Track removed item from basket 249 +**Event category:** REMOVED_FROM_BASKET 250 +**Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY, QUANTITY 251 +{{/showhide}} 252 + 253 +{{showhide id="5" showmessage="ADD_TO_WISH_LIST" hidemessage="ADD_TO_WISH_LIST" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 254 + 255 +\\**Description:** Track add item to wish list 256 +**Event category:** ADD_TO_WISH_LIST 257 +**Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY, QUANTITY 258 +{{/showhide}} 259 + 260 +{{showhide id="6" showmessage="REGISTRATION" hidemessage="REGISTRATION" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 261 + 262 +\\**Description:** Track registration 263 +**Event category:** REGISTRATION 264 +**Recommended parameters:** REGISTRATION_METHOD 265 +{{/showhide}} 266 + 267 +{{showhide id="7" showmessage="TUTORIAL_COMPLETION" hidemessage="TUTORIAL_COMPLETION" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 268 + 269 +\\**Description:** Track tutorial completion 270 +**Event category:** TUTORIAL_COMPLETION 271 +**Recommended parameters:** SUCCESS, CONTENT, CONTENT_ID 272 +{{/showhide}} 273 + 274 +{{showhide id="8" showmessage="TRIGGER_CHECKOUT" hidemessage="TRIGGER_CHECKOUT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 275 + 276 +\\**Description:** Track triggered checkout 277 +**Event category:** TRIGGER_CHECKOUT 278 +**Recommended parameters:** PROCE, CONTENT_TYPE, CONTENT_ID, CONTENT, QUANTITY, PAYMENT_INFO_AVAILABLE, CURRENCY 279 +{{/showhide}} 280 + 281 +{{showhide id="9" showmessage="PURCHASE" hidemessage="PURCHASE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 282 + 283 +\\**Description:** Track purchased item 284 +**Event category:** PURCHASE 285 +**Recommended parameters:** REVENUE, CONTENT_TYPE, CONTENT_ID, CONTENT, PRICE, QUANTITY, CURRENCY, ORDER_ID 286 +{{/showhide}} 287 + 288 +{{showhide id="10" showmessage="SUBSCRIBE" hidemessage="SUBSCRIBE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 289 + 290 +\\**Description:** Track subscription purchase 291 +**Event category:** SUBSCRIBE 292 +**Recommended parameters:** REVENUE, CURRENCY 293 +{{/showhide}} 294 + 295 +{{showhide id="11" showmessage="BEGIN_TRIAL" hidemessage="BEGIN_TRIAL" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 296 + 297 +\\**Description:** Track begin trail of product 298 +**Event category:** BEGIN_TRIAL 299 +**Recommended parameters:** PRICE, CURRENCY 300 +{{/showhide}} 301 + 302 +{{showhide id="12" showmessage="RATE" hidemessage="RATE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 303 + 304 +\\**Description:** Track app/item rate 305 +**Event category:** RATE 306 +**Recommended parameters:** RATING_VALUE, CONTENT_TYPE, CONTENT_ID, CONTENT, MAX_RATING_VALUE 307 +{{/showhide}} 308 + 309 +{{showhide id="13" showmessage="SEARCH" hidemessage="SEARCH" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 310 +\\**Description:** Track search event 311 +**Event category:** SEARCH 312 +**Recommended parameters:** CONTENT_TYPE, SEARCH_STRING, SUCCESS 313 +{{/showhide}} 314 + 315 +{{showhide id="14" showmessage="USED_CREDIT" hidemessage="USED_CREDIT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 316 +\\**Description:** Track use of credit 317 +**Event category:** USED_CREDIT 318 +**Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT 319 +{{/showhide}} 320 + 321 +{{showhide id="15" showmessage="UNLOCKED_ACHIEVEMENT" hidemessage="UNLOCKED_ACHIEVEMENT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 322 +\\**Description:** Track achievement unlock 323 +**Event category:** UNLOCKED_ACHIEVEMENT 324 +**Recommended parameters:** DESCRIPTION 325 +{{/showhide}} 326 + 327 +{{showhide id="16" showmessage="VIEW_CONTENT" hidemessage="VIEW_CONTENT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 328 +\\**Description:** Track content view event 329 +**Event category:** VIEW_CONTENT 330 +**Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY 331 +{{/showhide}} 332 + 333 +{{showhide id="17" showmessage="VIEW_LIST" hidemessage="VIEW_LIST" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 334 +\\**Description:** Track list event 335 +**Event category:** VIEW_LIST 336 +**Recommended parameters:** CONTENT_TYPE, CONTENT_LIST 337 +{{/showhide}} 338 + 339 +{{showhide id="18" showmessage="CLICK_AD" hidemessage="CLICK_AD" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 340 +\\**Description:** Track ad click 341 +**Event category:** CLICK_AD 342 +**Recommended parameters:** CONTENT_TYPE, CONTENT_ID 343 +{{/showhide}} 344 + 345 +{{showhide id="19" showmessage="VIEW_AD" hidemessage="VIEW_AD" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 346 +\\**Description:** Track view ad 347 +**Event category:** VIEW_AD 348 +**Recommended parameters:** CONTENT_TYPE, CONTENT_ID 349 +{{/showhide}} 350 + 351 +{{showhide id="20" showmessage="EVENT_BOOKING" hidemessage="EVENT_BOOKING" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 352 +\\**Description:** Track booking event 353 +**Event category:** EVENT_BOOKING 354 +**Recommended parameters:** REVENUE, DESTINATION_A, DESTINATION_B, CLASS, DESCRIPTION, CUSTOMER_USER_ID, CONTENT_TYPE, CONTENT_ID, DATE_A, DATE_B 355 +{{/showhide}} 356 + 357 +{{showhide id="21" showmessage="SHARE" hidemessage="SHARE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 358 +\\**Description:** Track share event 359 +**Event category:** SHARE 360 +**Recommended parameters:** DESCRIPTION 361 +{{/showhide}} 362 + 363 +{{showhide id="22" showmessage="INVITE" hidemessage="INVITE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 364 +\\**Description:** Track social invite event 365 +**Event category:** INVITE 366 +**Recommended parameters:** NONE 367 +{{/showhide}} 368 + 369 +{{showhide id="23" showmessage="LOGIN" hidemessage="LOGIN" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 370 +\\**Description:** Track user login event 371 +**Event category:** LOGIN 372 +**Recommended parameters:** NONE 373 +{{/showhide}} 374 + 375 +{{showhide id="24" showmessage="EVENT_RETURN" hidemessage="EVENT_RETURN" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 376 +\\**Description:** Track re engagement event 377 +**Event category:** EVENT_RETURN 378 +**Recommended parameters:** NONE 379 +{{/showhide}} 380 + 381 +{{showhide id="25" showmessage="OPENED_PUSH_NOTIFICATION" hidemessage="OPENED_PUSH_NOTIFICATION" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 382 +\\**Description:** Track user opened push notification 383 +**Event category:** OPENED_PUSH_NOTIFICATION 384 +**Recommended parameters:** NONE 385 +{{/showhide}} 386 + 387 +{{showhide id="26" showmessage="UPDATE" hidemessage="UPDATE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} 388 +\\**Description:** Track update event 389 +**Event category:** UPDATE 390 +**Recommended parameters:** CONTENT_ID 391 +{{/showhide}} 392 + 393 +=== 3.2.4 Event parameters === 394 + 395 +== 3.3 Remaining methods == 396 + 397 + 398 + 399 + 400 + 401 +(% class="table-bordered table-hover" style="border-color:powderblue" %) 402 +|=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 403 +| | | | 404 + 405 += 4. Constants = 406 + 407 += 5. Sample app =