Skip to content

Data Masking

If you wish to fully mask a field, it is recommended to use FTMobileConfig.dataModifier, which offers better performance. For detailed rule replacement, it is recommended to use FTMobileConfig.lineDataModifier.

Do not use complex or high-latency methods in callback functions, as this will significantly impact the SDK's data writing performance.

FTMobileConfig *config = [[FTMobileConfig alloc]initWithDatakitUrl:DatakitUrl];
config.dataModifier = ^id _Nullable(NSString * _Nonnull key, id  _Nonnull value) {
        if ([key isEqualToString: @"device_uuid"]) {
            return @"xxx";
        }
        return nil;
    };
config.lineDataModifier = ^NSDictionary<NSString *,id> * _Nullable(NSString * _Nonnull measurement, NSDictionary<NSString *,id> * _Nonnull data) {
        if ([measurement isEqualToString:@"view"]) {
            return @{@"view_url":@"xxx"};
        }
        return nil;
    }; 
let config = FTMobileConfig(datakitUrl: DatakitUrl)
config.dataModifier = { (key: String, value: Any) -> Any? in
    if key == "device_uuid" {
        return "xxx"
    }
    return nil
}
config.lineDataModifier = { (measurement: String, data: [String: Any]) -> [String: Any]? in
    if measurement == "view" {
        return ["view_url": "xxx"]
    }
    return nil
}