Skip to content

Commit 198dd04

Browse files
authored
Merge pull request #6 from 994914624/patch-6
Update RNSensorsAnalyticsModule.m
2 parents 5c1a285 + ed87289 commit 198dd04

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

ios/RNSensorsAnalyticsModule.m

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -526,6 +526,49 @@ @implementation RNSensorsAnalyticsModule
526526
return nil;
527527
}
528528

529+
/**
530+
* 导出 getDistinctIdPromise 方法给 RN 使用.
531+
* <p>
532+
* 删除当前这个用户的所有记录.
533+
* <p>
534+
* RN 中使用示例:
535+
* async getDistinctIdPromise() {
536+
* var distinctId = await RNSensorsAnalyticsModule.getDistinctIdPromise()
537+
* };
538+
*/
539+
RCT_EXPORT_METHOD(getDistinctIdPromise:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject){
540+
@try {
541+
NSString *bestId = [SensorsAnalyticsSDK sharedInstance].loginId;
542+
if (bestId == nil) {
543+
bestId = [SensorsAnalyticsSDK sharedInstance].distinctId;
544+
}
545+
if (bestId == nil) {
546+
[[SensorsAnalyticsSDK sharedInstance] resetAnonymousId];
547+
bestId = [SensorsAnalyticsSDK sharedInstance].anonymousId;
548+
}
549+
resolve(bestId);
550+
} @catch (NSException *exception) {
551+
NSLog(@"[RNSensorsAnalytics] error:%@",exception);
552+
}
553+
}
554+
555+
/**
556+
* 导出 getAnonymousIdPromise 方法给 RN 使用.
557+
* <p>
558+
* 删除当前这个用户的所有记录.
559+
* <p>
560+
* RN 中使用示例:
561+
* async getAnonymousIdPromise() {
562+
* var anonymousId = await RNSensorsAnalyticsModule.getAnonymousIdPromise()
563+
* };
564+
*/
565+
RCT_EXPORT_METHOD(getAnonymousIdPromise:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject){
566+
@try {
567+
resolve([SensorsAnalyticsSDK sharedInstance].anonymousId);
568+
} @catch (NSException *exception) {
569+
NSLog(@"[RNSensorsAnalytics] error:%@",exception);
570+
}
571+
}
529572

530573
@end
531574

0 commit comments

Comments
 (0)