You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: DESIGNDOC.md
+1-164Lines changed: 1 addition & 164 deletions
Original file line number
Diff line number
Diff line change
@@ -36,7 +36,7 @@
36
36
37
37
## 1 Overview
38
38
39
-
The [sift-ios](https://github.com/SiftScience/sift-ios) Mobile SDKs collect and send device information and app life cycle events to Sift. Objective C will be used as the programming language and Xcode will be used as the IDE. SDK will be supporting ios 9.2 as deployment target.
39
+
The [sift-ios](https://github.com/SiftScience/sift-ios) Mobile SDKs collect and send device information and app life cycle events to Sift. Objective C will be used as the programming language and Xcode will be used as the IDE. SDK will be supporting iOS 12 as deployment target.
40
40
41
41
The specific features used are: CoreMotion, BatteryManager, Location, NetworkInterface and TelephonyManager. The SDK uses CoreMotion, BatteryManager, Location and NetworkInterface for collecting AppState details. The Device properties details are collected with the help of TelephonyManager and PackageManager along with Build details. In particular, event collecting, appending and uploading are handled on a separate thread with the help of Executors. The Mobile SDKs allow mobile applications to collect and send device properties and application lifecycle events to Sift.
42
42
@@ -105,18 +105,8 @@ The iOSDeviceProperties collects the following information:
105
105
- The sdk version indicates the current version of the sift SDK that has been used in the application.
106
106
-**device_name** : {type: string}
107
107
- It indicates device name.
108
-
-**device_model** : {type: string}
109
-
- The device model indicates the end-user-visible model name for the end product.
110
-
-**device_ifa** : {type: string}
111
-
- Identifier for Advertisers (IFA or IDFA) is a temporary device identifier used by the Apple set of handheld devices. A successor of Unique Device Identifier (UDID), IFA is available on all devices with versions iOS 6 and later..
112
108
-**device_ifv** : {type: string}
113
109
- The identifierForVendor is an alphanumeric string that uniquely identifies a device to the app’s vendor..
114
-
-**device_screen_width** : {type: integer}
115
-
- It indicates the device screen width.
116
-
-**device_screen_height** : {type: integer}
117
-
- It indicates the device screen height.
118
-
-**device_localized_model** : {type: string}
119
-
- It indicates the localized version of model.
120
110
-**device_system_name** : {type: string}
121
111
- It indicates the user-visible operating system name string. Eg: iOS
122
112
-**device_system_version** : {type: string}
@@ -127,8 +117,6 @@ The iOSDeviceProperties collects the following information:
127
117
- It indicates the ISO country code for the user’s cellular service provider..
128
118
-**mobile_network_code** : {type: string}
129
119
- It indicates the mobile network code for the user’s cellular service provider.
130
-
-**is_simulator** : {type: integer}
131
-
- It indicates if device is simulator or not.
132
120
133
121
Class diagram of iOSDeviceProperties:
134
122
@@ -140,11 +128,6 @@ Class diagram of iOSDeviceProperties:
140
128
141
129
The iOSAppState collects the following informations:
142
130
143
-
-**application_state** : {type: string}
144
-
- Constants that indicate the running states of an app.
145
-
- UIApplicationStateActive -> The app is running in the foreground and currently receiving events.
146
-
- UIApplicationStateInactive -> The app is running in the foreground but is not receiving events.
147
-
- UIApplicationStateBackground -> The app is running in the background.
148
131
-**sdk_version** : {type: string}
149
132
- The sdk version indicates the current Sift SDK version which is used.
@@ -157,31 +140,12 @@ The iOSAppState collects the following informations:
157
140
- UIDeviceBatteryStateUnplugged -> on battery, discharging
158
141
- UIDeviceBatteryStateCharging -> plugged in, less than 100%
159
142
- UIDeviceBatteryStateFull -> plugged in, at 100%
160
-
-**device_orientation** : {type: string}
161
-
- Constants that describe the physical orientation of the device.
162
-
- UIDeviceOrientationUnknown -> The orientation of the device cannot be determined.
163
-
- UIDeviceOrientationPortrait -> The device is in portrait mode, with the device held upright and the Home button at the bottom.
164
-
- UIDeviceOrientationPortraitUpsideDown -> The device is in portrait mode but upside down, with the device held upright and the Home button at the top.
165
-
- UIDeviceOrientationLandscapeLeft -> The device is in landscape mode, with the device held upright and the Home button on the right side.
166
-
- UIDeviceOrientationLandscapeRight -> The device is in landscape mode, with the device held upright and the Home button on the left side.
167
-
- UIDeviceOrientationFaceUp -> The device is held parallel to the ground with the screen facing upwards.
168
-
- UIDeviceOrientationFaceDown -> The device is held parallel to the ground with the screen facing downwards.
169
143
-**proximity_state** : {type: number}
170
144
- A Boolean value that indicates whether the proximity sensor is close to the user.
171
145
-**location** : {type: dictionary}
172
146
- The location consists of collective information of latitude, longitude, accuracy and the time at which data was collected as shown in the [section 3.4](#34-location). (_Have data only if the sift configuration and permissions are enabled_)
173
-
-**heading** : {type: dictionary}
174
-
- The heading consists of collective information of time, magnetic heading, accuracy, true heading and raw magnetic field values was collected as shown in the [section 3.5](#35-heading).
175
147
-**network_addresses** : {type: array}
176
148
- The network addresses indicate the list of IP addresses of the current device in which the SDK is running.
177
-
-**motion** : {type: array}
178
-
- Encapsulated measurements of the attitude, rotation rate, and acceleration of a device was collected as shown in the [section 3.6](#36-deviceMotion).
179
-
-**raw_accelerometer** : {type: array}
180
-
- Retrieve data from the onboard accelerometers of a device was collected as shown in the [section 3.7](#37-deviceAccelerometerData).
181
-
-**raw_gyro** : {type: array}
182
-
- Retrieve data from the onboard gyroscopes value of a device was collected as shown in the [section 3.8](#38-deviceGyroData).
183
-
-**raw_magnetometer** : {type: array}
184
-
- Measurements of the Earth's magnetic field relative to the device was collected as shown in the [section 3.9](#39-deviceMagnetometerData).
185
149
186
150
Class diagram of iOSAppState:
187
151
@@ -216,133 +180,6 @@ Class diagram for Location:
216
180
217
181

218
182
219
-
###
220
-
221
-
### 3.5 Heading
222
-
223
-
The azimuth (orientation) of the user’s device, relative to true or magnetic north. The heading mainly collects the following information:
224
-
225
-
-**time** : {type: number}
226
-
- It indicates the time at which this heading was determined.
227
-
-**magnetic_heading** : {type: number}
228
-
- It indicates the heading (measured in degrees) relative to magnetic north.
229
-
-**accuracy** : {type: number}
230
-
- It indicates the maximum deviation (measured in degrees) between the reported heading and the true geomagnetic heading.
231
-
-**true_heading** : {type: number}
232
-
- The heading (measured in degrees) relative to true north.
233
-
-**raw_magnetic_field_x** : {type: number}
234
-
- The geomagnetic data (measured in microteslas) for the x-axis.
235
-
-**raw_magnetic_field_y** : {type: number}
236
-
- The geomagnetic data (measured in microteslas) for the y-axis.
237
-
-**raw_magnetic_field_z** : {type: number}
238
-
- The geomagnetic data (measured in microteslas) for the z-axis
239
-
240
-
Class diagram of Heading:
241
-
242
-

243
-
244
-
###
245
-
246
-
### 3.6 DeviceMotion
247
-
248
-
The iosDeviceMotion mainly collects the following information:
249
-
250
-
-**time** : {type: number}
251
-
- It indicates the time at which this motion was determined.
252
-
-**attitude_roll** : {type: double}
253
-
- A roll is a rotation around a longitudinal axis that passes through the device from its top to bottom. The roll of the device, in radians.
254
-
-**attitude_pitch** : {type: double}
255
-
- A pitch is a rotation around a lateral axis that passes through the device from side to side. The pitch of the device, in radians.
256
-
-**attitude_yaw** : {type: double}
257
-
- A yaw is a rotation around an axis that runs vertically through the device. The yaw of the device, in radians.
258
-
-**rotation_rate_x** : {type: number}
259
-
- The rotation rate of the device for the x-axis.
260
-
-**rotation_rate_y** : {type: number}
261
-
- The rotation rate of the device for the y-axis.
262
-
-**rotation_rate_z** : {type: number}
263
-
- The rotation rate of the device for the z-axis.
264
-
-**gravity_x** : {type: number}
265
-
- The gravity acceleration vector expressed in the device's reference frame for the x-axis.
266
-
-**gravity_y** : {type: number}
267
-
- The gravity acceleration vector expressed in the device's reference frame for the y-axis.
268
-
-**gravity_z** : {type: number}
269
-
- The gravity acceleration vector expressed in the device's reference frame for the z-axis.
270
-
-**user_acceleration_x** : {type: number}
271
-
- The acceleration that the user is giving to the device for the x-axis.
272
-
-**user_acceleration_y** : {type: number}
273
-
- The acceleration that the user is giving to the device for the y-axis.
274
-
-**user_acceleration_z** : {type: number}
275
-
- The acceleration that the user is giving to the device for the z-axis.
276
-
-**magnetic_field_x** : {type: number}
277
-
- Returns the magnetic field vector with respect to the device for the x-axis.
278
-
-**magnetic_field_y** : {type: number}
279
-
- Returns the magnetic field vector with respect to the device for the y-axis.
280
-
-**magnetic_field_z** : {type: number}
281
-
- Returns the magnetic field vector with respect to the device for the z-axis.
Copy file name to clipboardExpand all lines: PROPOSETECHNICIALDESIGNDOC.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@
18
18
19
19
## 1 Overview
20
20
21
-
The [sift-ios](https://github.com/SiftScience/sift-ios) Mobile SDKs collect and send device information and app life cycle events to Sift. Objective C will be used as the programming language and Xcode will be used as the IDE. SDK will be supporting ios 9.2 as deployment target.
21
+
The [sift-ios](https://github.com/SiftScience/sift-ios) Mobile SDKs collect and send device information and app life cycle events to Sift. Objective C will be used as the programming language and Xcode will be used as the IDE. SDK will be supporting iOS 12 as deployment target.
22
22
23
23
The specific features used are: CoreMotion, BatteryManager, Location, NetworkInterface and TelephonyManager. The SDK uses CoreMotion, BatteryManager, Location and NetworkInterface for collecting AppState details. The Device properties details are collected with the help of TelephonyManager and PackageManager along with Build details. In particular, event collecting, appending and uploading are handled on a separate thread with the help of Executors. The Mobile SDKs allow mobile applications to collect and send device properties and application lifecycle events to Sift.
0 commit comments