react-native-radar 3.20.1-beta.3 → 3.20.1-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/android/build.gradle
CHANGED
|
@@ -18,8 +18,7 @@ android {
|
|
|
18
18
|
minSdkVersion 16
|
|
19
19
|
targetSdkVersion 31
|
|
20
20
|
versionCode 1
|
|
21
|
-
versionName '3.20.1-beta.
|
|
22
|
-
consumerProguardFiles 'proguard-rules.pro'
|
|
21
|
+
versionName '3.20.1-beta.4'
|
|
23
22
|
}
|
|
24
23
|
lintOptions {
|
|
25
24
|
abortOnError false
|
|
@@ -46,6 +45,6 @@ repositories {
|
|
|
46
45
|
|
|
47
46
|
dependencies {
|
|
48
47
|
api 'com.facebook.react:react-native:+'
|
|
49
|
-
api 'io.radar:sdk:3.21.
|
|
48
|
+
api 'io.radar:sdk:3.21.3-beta.3'
|
|
50
49
|
}
|
|
51
50
|
|
|
@@ -96,7 +96,7 @@ public class RNRadarModule extends ReactContextBaseJavaModule implements Permiss
|
|
|
96
96
|
this.fraud = fraud;
|
|
97
97
|
SharedPreferences.Editor editor = getReactApplicationContext().getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit();
|
|
98
98
|
editor.putString("x_platform_sdk_type", "ReactNative");
|
|
99
|
-
editor.putString("x_platform_sdk_version", "3.20.1-beta.
|
|
99
|
+
editor.putString("x_platform_sdk_version", "3.20.1-beta.4");
|
|
100
100
|
editor.apply();
|
|
101
101
|
if (fraud) {
|
|
102
102
|
Radar.initialize(getReactApplicationContext(), publishableKey, receiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud);
|
package/ios/RNRadar.m
CHANGED
|
@@ -102,7 +102,7 @@ RCT_EXPORT_MODULE();
|
|
|
102
102
|
|
|
103
103
|
RCT_EXPORT_METHOD(initialize:(NSString *)publishableKey fraud:(BOOL)fraud) {
|
|
104
104
|
[[NSUserDefaults standardUserDefaults] setObject:@"ReactNative" forKey:@"radar-xPlatformSDKType"];
|
|
105
|
-
[[NSUserDefaults standardUserDefaults] setObject:@"3.20.1-beta.
|
|
105
|
+
[[NSUserDefaults standardUserDefaults] setObject:@"3.20.1-beta.4" forKey:@"radar-xPlatformSDKVersion"];
|
|
106
106
|
[Radar initializeWithPublishableKey:publishableKey];
|
|
107
107
|
}
|
|
108
108
|
|
|
@@ -189,30 +189,15 @@ RCT_REMAP_METHOD(getPermissionsStatus, getPermissionsStatusWithResolver:(RCTProm
|
|
|
189
189
|
}
|
|
190
190
|
|
|
191
191
|
RCT_EXPORT_METHOD(requestPermissions:(BOOL)background resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
|
|
192
|
-
|
|
192
|
+
permissionsRequestResolver = resolve;
|
|
193
|
+
|
|
193
194
|
CLAuthorizationStatus status = [CLLocationManager authorizationStatus];
|
|
194
195
|
if (background && status == kCLAuthorizationStatusAuthorizedWhenInUse) {
|
|
195
|
-
permissionsRequestResolver = resolve;
|
|
196
196
|
[locationManager requestAlwaysAuthorization];
|
|
197
|
-
[[NSNotificationCenter defaultCenter] addObserver:self
|
|
198
|
-
selector:@selector(handleAppBecomingActive)
|
|
199
|
-
name:UIApplicationDidBecomeActiveNotification
|
|
200
|
-
object:nil];
|
|
201
197
|
} else if (status == kCLAuthorizationStatusNotDetermined) {
|
|
202
|
-
permissionsRequestResolver = resolve;
|
|
203
198
|
[locationManager requestWhenInUseAuthorization];
|
|
204
199
|
} else {
|
|
205
200
|
[self getPermissionsStatusWithResolver:resolve rejecter:reject];
|
|
206
|
-
permissionsRequestResolver = nil;
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
- (void)handleAppBecomingActive
|
|
211
|
-
{
|
|
212
|
-
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
213
|
-
if (permissionsRequestResolver) {
|
|
214
|
-
[self getPermissionsStatusWithResolver:permissionsRequestResolver rejecter:nil];
|
|
215
|
-
permissionsRequestResolver = nil;
|
|
216
201
|
}
|
|
217
202
|
}
|
|
218
203
|
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "React Native module for Radar, the leading geofencing and location tracking platform",
|
|
4
4
|
"homepage": "https://radar.com",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
|
-
"version": "3.20.1-beta.
|
|
6
|
+
"version": "3.20.1-beta.4",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"files": [
|
|
9
9
|
"/android",
|
package/plugin/build/types.d.ts
CHANGED
|
@@ -5,8 +5,7 @@ export interface RadarPluginProps {
|
|
|
5
5
|
iosNSLocationAlwaysAndWhenInUseUsageDescription?: string;
|
|
6
6
|
iosBackgroundMode?: boolean;
|
|
7
7
|
androidBackgroundPermission?: boolean;
|
|
8
|
-
|
|
9
|
-
androidActivityRecognition?: boolean;
|
|
8
|
+
androidFineLocationPermission?: boolean;
|
|
10
9
|
addRadarSDKMotion?: boolean;
|
|
11
10
|
iosNSMotionUsageDescription?: string;
|
|
12
11
|
}
|
|
@@ -7,8 +7,12 @@ exports.withRadarAndroid = void 0;
|
|
|
7
7
|
const config_plugins_1 = require("expo/config-plugins");
|
|
8
8
|
const fs_1 = __importDefault(require("fs"));
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const { addPermission } = config_plugins_1.AndroidConfig.Permissions;
|
|
10
11
|
const withRadarAndroid = (config, args) => {
|
|
11
|
-
config =
|
|
12
|
+
config = (0, config_plugins_1.withAndroidManifest)(config, async (config) => {
|
|
13
|
+
config.modResults = await setCustomConfigAsync(config, config.modResults, args);
|
|
14
|
+
return config;
|
|
15
|
+
});
|
|
12
16
|
config = (0, config_plugins_1.withDangerousMod)(config, [
|
|
13
17
|
"android",
|
|
14
18
|
async (config) => {
|
|
@@ -56,19 +60,30 @@ const withRadarAndroid = (config, args) => {
|
|
|
56
60
|
});
|
|
57
61
|
};
|
|
58
62
|
exports.withRadarAndroid = withRadarAndroid;
|
|
59
|
-
function
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
"android.permission.
|
|
71
|
-
|
|
63
|
+
async function setCustomConfigAsync(config, androidManifest, args) {
|
|
64
|
+
if (!androidManifest.manifest["uses-permission"]) {
|
|
65
|
+
androidManifest.manifest["uses-permission"] = [];
|
|
66
|
+
}
|
|
67
|
+
// Add permissions
|
|
68
|
+
if (args.androidFineLocationPermission &&
|
|
69
|
+
!androidManifest.manifest["uses-permission"].some((e) => e["$"]["android:name"] === "android.permission.ACCESS_FINE_LOCATION")) {
|
|
70
|
+
addPermission(androidManifest, "android.permission.ACCESS_FINE_LOCATION");
|
|
71
|
+
}
|
|
72
|
+
if (args.androidBackgroundPermission &&
|
|
73
|
+
!androidManifest.manifest["uses-permission"].some((e) => e["$"]["android:name"] ===
|
|
74
|
+
"android.permission.ACCESS_BACKGROUND_LOCATION")) {
|
|
75
|
+
addPermission(androidManifest, "android.permission.ACCESS_BACKGROUND_LOCATION");
|
|
76
|
+
}
|
|
77
|
+
if (!androidManifest.manifest["uses-permission"].some((e) => e["$"]["android:name"] === "android.permission.ACCESS_COARSE_LOCATION")) {
|
|
78
|
+
addPermission(androidManifest, "android.permission.ACCESS_COARSE_LOCATION");
|
|
79
|
+
}
|
|
80
|
+
if (!androidManifest.manifest["uses-permission"].some((e) => e["$"]["android:name"] === "android.permission.FOREGROUND_SERVICE")) {
|
|
81
|
+
addPermission(androidManifest, "android.permission.FOREGROUND_SERVICE");
|
|
82
|
+
}
|
|
83
|
+
if (!androidManifest.manifest["uses-permission"].some((e) => e["$"]["android:name"] === "android.permission.ACTIVITY_RECOGNITION")) {
|
|
84
|
+
addPermission(androidManifest, "android.permission.ACTIVITY_RECOGNITION");
|
|
85
|
+
}
|
|
86
|
+
return androidManifest;
|
|
72
87
|
}
|
|
73
88
|
function modifyAppBuildGradle(buildGradle, androidFraud) {
|
|
74
89
|
let hasLocationService = false;
|
|
@@ -81,10 +96,7 @@ function modifyAppBuildGradle(buildGradle, androidFraud) {
|
|
|
81
96
|
}
|
|
82
97
|
const pattern = /^dependencies {/m;
|
|
83
98
|
if (!buildGradle.match(pattern)) {
|
|
84
|
-
|
|
85
|
-
This is required for react-native-radar to function properly.
|
|
86
|
-
Please ensure your android/app/build.gradle includes the react.gradle script.
|
|
87
|
-
Current build.gradle content: ${buildGradle}`);
|
|
99
|
+
config_plugins_1.WarningAggregator.addWarningAndroid("react-native-radar", "Could not find react.gradle script in android/app/build.gradle.");
|
|
88
100
|
}
|
|
89
101
|
let replacementString = "\n\n" +
|
|
90
102
|
(!hasLocationService
|