Skip to content

Commit bdbf39c

Browse files
Merge pull request #1596 from NativeScript/vladimirov/new-analytics-project
Track Feature usage in a separate Analytics project
2 parents 65da48a + 6de8cf1 commit bdbf39c

File tree

3 files changed

+13
-4
lines changed

3 files changed

+13
-4
lines changed

lib/config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ export class StaticConfig extends StaticConfigBase implements IStaticConfig {
2727
public CLIENT_NAME = "tns";
2828
public CLIENT_NAME_ALIAS = "NativeScript";
2929
public ANALYTICS_API_KEY = "5752dabccfc54c4ab82aea9626b7338e";
30+
public ANALYTICS_FEATURE_USAGE_TRACKING_API_KEY = "9912cff308334c6d9ad9c33f76a983e3";
3031
public TRACK_FEATURE_USAGE_SETTING_NAME = "TrackFeatureUsage";
3132
public ERROR_REPORT_SETTING_NAME = "TrackExceptions";
3233
public ANALYTICS_INSTALLATION_ID_SETTING_NAME = "AnalyticsInstallationID";

lib/services/doctor-service.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ let clui = require("clui");
88
class DoctorService implements IDoctorService {
99
private static MIN_SUPPORTED_POD_VERSION = "0.38.2";
1010

11-
constructor(private $androidToolsInfo: IAndroidToolsInfo,
11+
constructor(private $analyticsService: IAnalyticsService,
12+
private $androidToolsInfo: IAndroidToolsInfo,
1213
private $hostInfo: IHostInfo,
1314
private $logger: ILogger,
1415
private $progressIndicator: IProgressIndicator,
@@ -18,7 +19,7 @@ class DoctorService implements IDoctorService {
1819
private $npm: INodePackageManager,
1920
private $fs: IFileSystem) { }
2021

21-
public printWarnings(): boolean {
22+
public printWarnings(configOptions?: { trackResult: boolean }): boolean {
2223
let result = false;
2324
let sysInfo = this.$sysInfo.getSysInfo(path.join(__dirname, "..", "..", "package.json")).wait();
2425

@@ -88,7 +89,14 @@ class DoctorService implements IDoctorService {
8889

8990
let androidToolsIssues = this.$androidToolsInfo.validateInfo().wait();
9091
let javaVersionIssue = this.$androidToolsInfo.validateJava(sysInfo.javacVersion).wait();
91-
return result || androidToolsIssues || javaVersionIssue;
92+
93+
let doctorResult = result || androidToolsIssues || javaVersionIssue;
94+
95+
if(!configOptions || configOptions.trackResult) {
96+
this.$analyticsService.track("DoctorEnvironmentSetup", doctorResult ? "incorrect" : "correct").wait();
97+
}
98+
99+
return doctorResult;
92100
}
93101

94102
private printPackageManagerTip() {

0 commit comments

Comments
 (0)