Hide last authors
Developer 2.1 1 {{box cssClass="floatinginfobox" title="**Page Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 = Overview =
Developer 4.1 6
Developer 3.1 7 The plugin is located at npmjs repositories [[(npm repositories)>>https://www.npmjs.com/package/react-native-mobigate]]
Developer 4.1 8 This plugin is built for:
9
10 * Mobigate SDK version 1.0.4
11
Developer 2.1 12 = Adding SDK to the project =
13
Developer 4.1 14 **First, install library from the repository with**
Developer 2.1 15
Developer 4.1 16 {{code language=""}}
17 yarn add react-native-mobigate
18 {{/code}}
19
20 or
21
22 {{code language=""}}
23 npm install react-native-mobigate --save
24 {{/code}}
25
26 **Link newly added plugin**
27
28 * **React Native >= 0.60**
29 Starting from React Native 0.60, [[autolinking>>https://github.com/react-native-community/cli/blob/master/docs/autolinking.md]] makes the installation process simpler
30
31 * **React Native <= 0.59**
32 ** Mostly automatic installation:
33 {{code language=""}}react-native link react-native-mobigate{{/code}}
Developer 5.2 34 ** Manual installation:{{showhide id="1" showmessage="Manually link the library on Android" hidemessage="Manually link the library on Android"}}* Add to: android/settings.gradle
Developer 4.1 35
36 {{code language="groovy"}}
37 include ':react-native-mobigate'
38 project(':react-native-mobigate').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-mobigate/android')
39 {{/code}}
Developer 5.1 40 * Add to: android/app/build.gradle
Developer 4.1 41
42 {{code language="groovy"}}
43 dependencies {
44 implementation project(':react-native-mobigate')
45 }
46 {{/code}}
Developer 5.1 47 * Add the MobigatePackage class to your list of exported packages into: android/app/src/main/.../MainApplication.java
Developer 4.1 48
49 {{code language="java"}}
50 ...
51 import pl.spicymobile.reactmobigate.MobigatePackage;
52
53
54 @Override
55 protected List<ReactPackage> getPackages() {
56 return Arrays.<ReactPackage>asList(
57 new MainReactPackage(),
58 new MobigatePackage()
59 );
60 }
61 {{/code}}{{/showhide}}
62
Developer 2.1 63 = Api methods =
64
Developer 5.2 65 To use any method from the plugin add import:
66
67 {{code language="javascript"}}
68 import Mobigate from 'react-native-mobigate'
69 {{/code}}
70
Developer 2.1 71 == SDK initialization ==
72
Developer 5.2 73 You must initialize the library before running it. Use //init(apiKey, options, onSuccess, onError)// method for that:
74
75 **Mobigate.init(apiKey, options, onSuccess, onError)**
76
77 (% class="table-bordered table-hover" style="border-color:powderblue" %)
78 |=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description
79 |apiKey|String|Api key provided by your business partner
Developer 5.4 80 |options|Json Object|SDK configuration
Developer 5.2 81 |onSuccess|Function|returns callback object
82 |onError|Function|returns callback object
83
Developer 6.1 84 {{showhide id="2" showmessage="Options" hidemessage="Options"}}
Developer 5.2 85 (% class="table-bordered table-hover" style="border-color:powderblue" %)
Developer 5.4 86 |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description
87 | appIdentifier|String| | Application identifier
Developer 5.5 88 |appInstallationSource |String| | App installation source e.g., google-play, organic.
89 |email |String | | Set's user email.
Developer 8.1 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.
Developer 5.5 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.
Developer 6.1 94 {{/showhide}}
Developer 5.2 95
Developer 6.1 96 {{showhide id="3" showmessage="DataGatherPolicy options" hidemessage="DataGatherPolicy options"}}
Developer 5.4 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
Developer 6.3 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
Developer 6.1 101 {{/showhide}}
Developer 5.4 102
Developer 6.1 103 When the library is already initialized run it. Use //startSDK(onSuccess, onError)// method for that:
104
105 **Mobigate.startSDK(onSuccess, onError)**
106
107 (% class="table-bordered table-hover" style="border-color:powderblue" %)
108 |=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description
109 |onSuccess|Function|returns callback object
110 |onError|Function|returns callback object
111
112 {{showhide id="3" showmessage="Example" hidemessage="Example"}}
113 {{code language="javascript"}}
114 initLibrary = () => {
115 if (Platform.OS === 'android') {
116 Mobigate.init("V0K6jhiIfem6CRWHYZ59Nmj3oFBBKbJsnSsWfR2JNq7ktblOUXwbJoBQTpWnw2uSwW76gpiu2kun50jweTY69B",
117 {
118 /*custom options, check docs for more details
119 appIdentifier: 'customUserAppIdentifier',
120 appInstallationSource: "customAppInstallationSourcexyz",
121 email: 'testemail@gmail.com',
122 userAgent: 'customUserAgent',
123 customUserId: 'customUserId',*/
124 }, (success) => {
125 /* You can configure custom collectors after init
126 Mobigate.disableAllDataCollector()
127 Mobigate.configureDataCollectors(true, [Mobigate.DATA_COLLECTOR_APPS_LIST,
128 Mobigate.DATA_COLLECTOR_BATTERY,
129 Mobigate.DATA_COLLECTOR_PHONE_INFO])*/
130
131 Mobigate.startSDK((result) => {
132 this.setState({
133 status: 'started',
134 });
135
136 }, (errorResult) => {
137 this.setState({
138 status: errorResult,
139 });
140 })
141 }, (initError) => {
142 this.setState({
143 status: initError,
144 });
145 })
146 }else{
147 this.setState({
148 status: 'Mobigate SDK supports only Android'
149 })
150 }
151 }
152 {{/code}}
153 {{/showhide}}
154
Developer 2.1 155 == Tracking in app events ==
156
157 == Remaining methods ==
158
Developer 5.5 159
160
161
162
163 (% class="table-bordered table-hover" style="border-color:powderblue" %)
164 |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description
165 | | | |
166
Developer 2.1 167 = Constants =
168
169 = Sample app =
Spicy Mobile
spicymobile.pl