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 ... ... @@ -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