如何在对象上声明属性?

时间:2018-06-14 15:10:34

标签: ios objective-c

我在Xcode中收到此错误:

  

在'XCUIDevice'类型的对象上找不到属性'fb_screenshot'“

我该如何宣布?

这是我的代码的一部分:

+ (id<FBResponsePayload>)handleGetScreenshot:(FBRouteRequest *)request
{
    [UtilsLogger logMessage:[NSString stringWithFormat:@"Handling : %@", request.URL.absoluteURL] sender:METHOD_NAME];
    @try {
        NSString *screenshot = [[XCUIDevice sharedDevice].fb_screenshot base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
        return [Response withSucessString:screenshot methodName:METHOD_NAME logString:false] ;
    }
    @catch (NSException *exception) {
        return [Response withException:exception methodName:METHOD_NAME];
    }
}

1 个答案:

答案 0 :(得分:1)

您似乎正在尝试使用旧版WebDriverAgentLib中的fb_screenshot。根据此提交,该方法在2017-11-01更改为fb_screenshotWithError:

https://github.com/facebook/WebDriverAgent/commit/79db77ed67ab04127b93e2d64f7a5837e3026227

因此,要么您没有导入WebDriverAgentLib/Categories/XCUIDevice+FBHelpers.h的(旧)副本,要么您拥有较新的版本,并且您正在调用已删除的方法而不是替换方法。

相关问题