Authored by 孙凯

add unbutton viewPath review by hongmo

... ... @@ -94,13 +94,13 @@
- (void)yher_UIControl_didTouch_cmdWithEvent:(UIControl*)sender
{
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIControl:self];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIControl:sender];
}
[self yher_UIControl_didTouch_cmdWithEvent:sender];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable) {
[[YH_EventCollector sharedInstance] timeEventEndWithUIControl:sender];
}
}
... ... @@ -108,30 +108,28 @@
- (void)yher_UIControl_didTouch_cmd
{
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIControl:self];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIControl:nil];
}
[self yher_UIControl_didTouch_cmd];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
[[YH_EventCollector sharedInstance] timeEventEndWithUIControl:self];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable) {
[[YH_EventCollector sharedInstance] timeEventEndWithUIControl:nil];
}
}
- (void)yher_blockAction:(id)control forEvent:(UIEvent *)event{
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIControl:self];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIControl:control];
}
[self yher_blockAction:control forEvent:event];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
[[YH_EventCollector sharedInstance] timeEventEndWithUIControl:self];
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable) {
[[YH_EventCollector sharedInstance] timeEventEndWithUIControl:control];
}
}
#pragma mark - hook API
... ... @@ -139,7 +137,7 @@
{
NSString *selectorAction = NSStringFromSelector(action);
//if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && [self isKindOfClass:[UIButton class]]) {
if ([[selectorAction componentsSeparatedByString:@":"]count]==1) {
[UIControl yher_exchangeSelector:action target:target toSelector:@selector(yher_UIControl_didTouch_cmd)];
... ... @@ -150,7 +148,7 @@
if ([selectorAction isEqualToString:@"blockAction:forEvent:"]) {
[UIControl yher_exchangeSelector:action target:target toSelector:@selector(yher_blockAction:forEvent:)];
}
// }
}
[self yher_addTarget:target action:action forControlEvents:controlEvents];
}
... ...
... ... @@ -59,7 +59,7 @@
NSString *selectorAction = NSStringFromSelector(action);
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && ([target isKindOfClass:[UIViewController class]] || [target isKindOfClass:[UIImageView class]] || [target isKindOfClass:[UILabel class]])) {
if ([[selectorAction componentsSeparatedByString:@":"]count]==1) {
if ([[selectorAction componentsSeparatedByString:@":"]count]==2) {
[UITapGestureRecognizer yher_exchangeSelector:action target:target toSelector:@selector(yher_gestureRecognizerDidTouch_cmd:)];
}
}
... ... @@ -71,7 +71,7 @@
NSString *selectorAction = NSStringFromSelector(action);
if ([YHEventReport sharedInstance].isPerformanceTrackEnabled && [YHEventReport sharedInstance].buttonPerformanceTrackEnable && ([target isKindOfClass:[UIViewController class]] || [target isKindOfClass:[UIImageView class]] || [target isKindOfClass:[UILabel class]])) {
if ([[selectorAction componentsSeparatedByString:@":"]count]==1) {
if ([[selectorAction componentsSeparatedByString:@":"]count]==2) {
[UITapGestureRecognizer yher_exchangeSelector:action target:target toSelector:@selector(yher_gestureRecognizerDidTouch_cmd:)];
}
}
... ... @@ -82,15 +82,14 @@
#pragma mark - action
- (void)yher_gestureRecognizerDidTouch_cmd:(UIGestureRecognizer*)sender
{
if (([sender.view isKindOfClass:[UIImageView class]] || [sender.view isKindOfClass:[UILabel class]])) {
if (([sender.view isKindOfClass:[UIViewController class]] || [sender.view isKindOfClass:[UIImageView class]] || [sender.view isKindOfClass:[UILabel class]])) {
[[YH_EventCollector sharedInstance] timeEventStartWithUIGestureRecognizer:sender];
}
[self yher_gestureRecognizerDidTouch_cmd:sender];
if (([sender.view isKindOfClass:[UIImageView class]] || [sender.view isKindOfClass:[UILabel class]])) {
if (([sender.view isKindOfClass:[UIViewController class]] || [sender.view isKindOfClass:[UIImageView class]] || [sender.view isKindOfClass:[UILabel class]])) {
[[YH_EventCollector sharedInstance] timeEventEndWithUIGestureRecognizer:sender];
}
}
... ...
... ... @@ -344,7 +344,7 @@
});
}
NSDictionary *param = [YH_EventDataFactory factoryTimeEventDataWithUIControl:control ElapsedTime:elapsedTime];
NSDictionary *param = [YH_EventDataFactory factoryTimeEventDataWithUIControl:control url:[YH_EventCollector viewPathOfPurposeView:control] ElapsedTime:elapsedTime];
if (param) {
[[YH_EventCacheManager sharedInstance] pushPerformanceData:param pointName:YHPN_BUTTON];
... ... @@ -387,7 +387,8 @@
});
}
NSDictionary *param = [YH_EventDataFactory factoryTimeEventDataWithUIGestureRecognizer:gestureRecognizer ElapsedTime:elapsedTime];
NSDictionary *param = [YH_EventDataFactory factoryTimeEventDataWithUIGestureRecognizer:gestureRecognizer url:[YH_EventCollector viewPathOfPurposeView:gestureRecognizer.view] ElapsedTime:elapsedTime];
NSLog(@"%@",param);
if (param) {
... ...
... ... @@ -19,9 +19,9 @@
+(NSDictionary *)factoryTimeEventDataWithElapsedTime:(NSTimeInterval)elapsedTime status:(YHEventLoadStatus)status url:(NSString*)url;
+(NSDictionary *)factoryTimeEventDataWithUIControl:(UIControl *)control ElapsedTime:(NSTimeInterval)elapsedTime;
+(NSDictionary *)factoryTimeEventDataWithUIControl:(UIControl *)control url:(NSString*)url ElapsedTime:(NSTimeInterval)elapsedTime;
+(NSDictionary *)factoryTimeEventDataWithUIGestureRecognizer:(UITapGestureRecognizer *)gestureRecognizer ElapsedTime:(NSTimeInterval)elapsedTime;
+(NSDictionary *)factoryTimeEventDataWithUIGestureRecognizer:(UITapGestureRecognizer *)gestureRecognizer url:(NSString*)url ElapsedTime:(NSTimeInterval)elapsedTime;
+(NSDictionary *)factoryEventAppInfo:(YH_PerformanceAppInfo*)appInfo;
... ...
... ... @@ -53,20 +53,20 @@
return dict;
}
+(NSDictionary *)factoryTimeEventDataWithUIControl:(UIControl *)control ElapsedTime:(NSTimeInterval)elapsedTime {
+(NSDictionary *)factoryTimeEventDataWithUIControl:(UIControl *)control url:(NSString*)url ElapsedTime:(NSTimeInterval)elapsedTime{
NSString *className = NSStringFromClass([control class]);
if (IsStrEmpty(className)) {
return nil;
}
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[className er_encodedString],kYHEventReportTimeURL,[NSString stringWithFormat:@"%.0f",elapsedTime*1000],kYHEventReportTimeElapsed,@"",kYHEventReportTimeTitle,nil];
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[url er_encodedString],kYHEventReportTimeURL,[NSString stringWithFormat:@"%.0f",elapsedTime*1000],kYHEventReportTimeElapsed,[className er_encodedString],kYHEventReportTimeTitle,nil];
return dict;
}
+(NSDictionary *)factoryTimeEventDataWithUIGestureRecognizer:(UITapGestureRecognizer *)gestureRecognizer ElapsedTime:(NSTimeInterval)elapsedTime {
+(NSDictionary *)factoryTimeEventDataWithUIGestureRecognizer:(UITapGestureRecognizer *)gestureRecognizer url:(NSString*)url ElapsedTime:(NSTimeInterval)elapsedTime {
NSString *className = NSStringFromClass([gestureRecognizer class]);
... ... @@ -74,7 +74,7 @@
return nil;
}
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[className er_encodedString],kYHEventReportTimeURL,[NSString stringWithFormat:@"%.0f",elapsedTime*1000],kYHEventReportTimeElapsed,@"",kYHEventReportTimeTitle,nil];
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[url er_encodedString],kYHEventReportTimeURL,[NSString stringWithFormat:@"%.0f",elapsedTime*1000],kYHEventReportTimeElapsed,[className er_encodedString],kYHEventReportTimeTitle,nil];
return dict;
}
... ...