Changes for page Flutter integration
Last modified by Developer on 2020/03/19 15:21
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -67,94 +67,33 @@ 67 67 68 68 == 3.2 SDK initialization == 69 69 70 -You must initialize the library before running it. Use // init(apiKey, options,onSuccess, onError)// method for that:70 +You must initialize the library before running it. Use //Future<String> init// method for that: 71 71 72 -** Mobigate.init(apiKey, options, onSuccess, onError)**72 +**mobigateInstance.init()** 73 73 74 -(% class="table-bordered table-hover" style="border-color:powderblue" %) 75 -|=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description 76 -|apiKey|String|Api key provided by your business partner 77 -|options|Json Object|SDK configuration 78 -|onSuccess|Function|returns callback object 79 -|onError|Function|returns callback object 74 +Return: 80 80 81 -{{showhide id="2" showmessage="Options" hidemessage="Options"}} 82 82 (% class="table-bordered table-hover" style="border-color:powderblue" %) 83 -|=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 84 -| appIdentifier|String| | Application identifier 85 -|appInstallationSource |String| | App installation source e.g., google-play, organic. 86 -|email |String | | Set's user email. 87 -|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. 88 -| 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"] see [[plugin user field constants>>https://wiki.spicymobile.pl/wiki/mobigatesdk/view/Main/sdkintegration/reactnativeintegration/#H4.1Userfieldconstants]]. 89 -| 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. 90 -| enableIdProfiles|Boolean |false | turns on / off the IDs profiles system. 91 -{{/showhide}} 77 +|=(% style="background-color:powderblue" %)Message|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description 78 +|success|String|returns success message 79 +|error|String|returns error message 92 92 93 -{{showhide id="3" showmessage="DataGatherPolicy options" hidemessage="DataGatherPolicy options"}} 94 -(% class="table-bordered table-hover" style="border-color:powderblue" %) 95 -|=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 96 -| monitorState|String| | Possible monitor states: [[plugin constants>>https://wiki.spicymobile.pl/wiki/mobigatesdk/view/Main/sdkintegration/reactnativeintegration/#H4.2Datagatherpolicyconstants]]. More info about gathering data [[here>>https://wiki.spicymobile.pl/wiki/mobigatesdk/view/Main/mobigatesdkintegrationforandroiddevelopers/#H5.8Datagatherpolicy]] 97 -|notificationText|String| | if state = Mobigate.DATA_GATHER_POLICY_DEFAULT you can pass custom foreground service notification text 98 -{{/showhide}} 81 +When the library is already initialized run it. Use //Future<String> startSdk()// method for that: 99 99 83 +**mobigateInstance.startSdk();** 100 100 101 - Whenthe library is already initialized run it. Use //startSDK(onSuccess, onError)// method for that:85 +Return: 102 102 103 -**Mobigate.startSDK(onSuccess, onError)** 104 - 105 105 (% class="table-bordered table-hover" style="border-color:powderblue" %) 106 -|=(% style="background-color:powderblue" %) Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description107 -| onSuccess|Function|returns callbackobject108 -| onError|Function|returnscallbackobject88 +|=(% style="background-color:powderblue" %)Message|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description 89 +|success|String|returns success message 90 +|error|String|returns error message 109 109 110 -{{showhide id="3" showmessage="Example" hidemessage="Example"}} 111 -{{code language="javascript"}} 112 - initLibrary = () => { 113 - if (Platform.OS === 'android') { 114 - Mobigate.init("V0K6jhiIfem6CRWHYZ59Nmj3oFBBKbJsnSsWfR2JNq7ktblOUXwbJoBQTpWnw2uSwW76gpiu2kun50jweTY69B", 115 - { 116 - /*custom options, check docs for more details 117 - appIdentifier: 'customUserAppIdentifier', 118 - appInstallationSource: "customAppInstallationSourcexyz", 119 - email: 'testemail@gmail.com', 120 - userAgent: 'customUserAgent', 121 - customUserId: 'customUserId',*/ 122 - }, (success) => { 123 - /* You can configure custom collectors after init 124 - Mobigate.disableAllDataCollector() 125 - Mobigate.configureDataCollectors(true, [Mobigate.DATA_COLLECTOR_APPS_LIST, 126 - Mobigate.DATA_COLLECTOR_BATTERY, 127 - Mobigate.DATA_COLLECTOR_PHONE_INFO])*/ 92 +== 3.3 Tracking in app events == 128 128 129 - Mobigate.startSDK((result) => { 130 - this.setState({ 131 - status: 'started', 132 - }); 133 - 134 - }, (errorResult) => { 135 - this.setState({ 136 - status: errorResult, 137 - }); 138 - }) 139 - }, (initError) => { 140 - this.setState({ 141 - status: initError, 142 - }); 143 - }) 144 - }else{ 145 - this.setState({ 146 - status: 'Mobigate SDK supports only Android' 147 - }) 148 - } 149 - } 150 -{{/code}} 151 -{{/showhide}} 152 - 153 -== 3.2 Tracking in app events == 154 - 155 155 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. 156 156 157 -=== 3. 2.1 Overview ===96 +=== 3.3.1 Overview === 158 158 159 159 An event consists of two fields that you (% style="display:none" %) (%%)can use to describe a user's interaction with your app content: 160 160 ... ... @@ -164,41 +164,31 @@ 164 164 |(% style="width:200px" %)Parameter|(% style="width:200px" %)String|(% style="width:200px" %)no|(% style="width:200px" %)Event parameter. 165 165 There can be more than one 166 166 167 -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"]]).106 +You can use any event category or parameter string of your choice. However, flutter_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"]]). 168 168 169 -=== 3. 2.2 Implementation ===108 +=== 3.3.2 Implementation === 170 170 171 171 Tracking in-app events is performed by two methods: 172 172 173 -** Mobigate.trackEvent(options)**112 +**void trackEvent(Category category)** 174 174 175 -{{showhide id="2" showmessage="Options" hidemessage="Options" effect="slide" effectduration="0.3"}} 176 176 (% class="table-bordered table-hover" style="border-color:powderblue" %) 177 -|=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description 178 -|name|String | | Event category name. 179 -|parameters|Json array| | Array of parameters. Look below on example. 180 -{{/showhide}} 115 +|=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description 116 +|Category|Category class |Category class built with help of CategoryBuilder 181 181 182 182 {{showhide id="3" showmessage="Example" hidemessage="Example"}} 183 -{{code language="javascript"}} 184 - sendTrackEvent = () => { 185 - if (Platform.OS === 'android') { 186 - Mobigate.trackEvent({ 187 - name: Mobigate.CATEGORY_PURCHASE, 188 - parameters: { 189 - [Mobigate.PARAMETER_CONTENT_ID]: 42313532, 190 - [Mobigate.PARAMETER_PRICE]: 43.23, 191 - [Mobigate.PARAMETER_QUANTITY]: 2, 192 - 'userCustomParameterName':'simpleName' 193 - }, 194 - }) 195 - } 196 - } 119 +{{code language="dart"}} 120 +mobigateInstance.trackEvent((CategoryBuilder(EventCategory.BEGIN_TRIAL) 121 + ..setParameter(EventParameter.CITY, "Warsaw") 122 + ..setParameter(EventParameter.CONTENT_ID, 523456) 123 + ..setParameter(EventParameter.COUPON_CODE, 97636572) 124 + ..setParameter(EventParameter.CUSTOMER_SEGMENT, [1, 2, 4])) 125 + .build()); 197 197 {{/code}} 198 198 {{/showhide}} 199 199 200 200 201 -** Mobigate.trackAppInstall(timestamp)**130 +**void trackAppInstall(int timestamp)** 202 202 203 203 (% class="table-bordered table-hover" style="border-color:powderblue" %) 204 204 |=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description ... ... @@ -214,7 +214,7 @@ 214 214 {{/code}} 215 215 {{/showhide}} 216 216 217 -=== 3. 2.3 Event categories ===146 +=== 3.3.3 Event categories === 218 218 219 219 The following section describes the recommended structure of each event category. In-app events categories are defined as part of plugin String constants. 220 220 ... ... @@ -387,7 +387,7 @@ 387 387 **Recommended parameters:** CONTENT_ID 388 388 {{/showhide}} 389 389 390 -=== 3. 2.4 Event parameters ===319 +=== 3.3.4 Event parameters === 391 391 392 392 In addition each category that is passed with event may have optional parameters defined as part of the plugin constants, or custom defined as String. Below is a list of recommended parameters. 393 393 ... ... @@ -469,14 +469,14 @@ 469 469 470 470 {{/showhide}} 471 471 472 -== 3. 3Remaining methods ==401 +== 3.4 Remaining methods == 473 473 474 -** Mobigate.setCollectAll()**403 +**void setCollectAll()** 475 475 This method enables all data collectors. By default all data collectors are enabled. 476 476 477 477 {{showhide id="3" showmessage="Example" hidemessage="Example"}} 478 -{{code language=" javascript"}}479 - Mobigate.disableAllDataCollector()407 +{{code language="dart"}} 408 +mobigateInstance.setCollectAll(); 480 480 {{/code}} 481 481 {{/showhide}} 482 482 ... ... @@ -483,7 +483,7 @@ 483 483 (% style="color:powderblue" %) 484 484 ---- 485 485 486 -** Mobigate.configureDataCollectors(enable, collectors)**415 +**void configureDataCollectors(bool enable, List<int> collectors)** 487 487 Enable or disable DataCollector by array collectors input 488 488 489 489 (% class="table-bordered table-hover" style="border-color:powderblue" %) ... ... @@ -493,9 +493,11 @@ 493 493 494 494 {{showhide id="3" showmessage="Example" hidemessage="Example"}} 495 495 {{code language="javascript"}} 496 -Mobigate.configureDataCollectors(true, [Mobigate.DATA_COLLECTOR_APPS_LIST, 497 - Mobigate.DATA_COLLECTOR_BATTERY, 498 - Mobigate.DATA_COLLECTOR_PHONE_INFO]) 425 +mobigateInstance.configureDataCollectors(true, [ 426 + DataCollector.APPS_LIST, 427 + DataCollector.APPS_USAGE, 428 + DataCollector.BROWSER 429 + ]) 499 499 {{/code}} 500 500 {{/showhide}} 501 501