抱歉标题很奇怪,不知道还能写什么。
我正确记录了一个变量,但是当我尝试在命令中使用时返回 null:
- (void)requestAdWithURL:(NSURL *)URL
{
AdSettingsTVC *settings = [[AdSettingsTVC alloc] init];
NSString *server = [settings retrieveServerName:settings.serverName];
ANLogDebug(@"The actual server is %@", server);
self.URL = URL ? URL : [self adURLWithBaseURLString:[NSString stringWithFormat:@"http://%@", server]];
}
控制台返回
“实际的服务器是服务器 1”
但是我返回的 URL (null)
奇怪的是,如果我手动创建变量
NSString *server = @"asdf";
URL 正确返回 asdf
问题是什么?
非常感谢您的宝贵时间
编辑:什么是“self.URL = URL?URL:[self adURLWithBaseURLString:[NSString stringWithFormat:@"htp://%@", server]];" 被称为主机名,http://servidor1.mob/parameters
- (NSURL *)adURLWithBaseURLString:(NSString *)urlString {
urlString = [urlString stringByAppendingString:[self placementIdParameter]];
urlString = [urlString stringByAppendingString:ANUdidParameter()];
urlString = [urlString stringByAppendingString:[self dontTrackEnabledParameter]];
urlString = [urlString stringByAppendingString:[self deviceMakeParameter]];
urlString = [urlString stringByAppendingString:[self deviceModelParameter]];
urlString = [urlString stringByAppendingString:[self carrierMccMncParameters]];
urlString = [urlString stringByAppendingString:[self applicationIdParameter]];
urlString = [urlString stringByAppendingString:[self firstLaunchParameter]];
if ([self.delegate respondsToSelector:@selector(extraParametersForAdFetcher:)]) {
NSArray *extraParameters = [self.delegate extraParametersForAdFetcher:self];
for (NSString *param in extraParameters) {
urlString = [urlString stringByAppendingString:param];
}
}
return [NSURL URLWithString:urlString];
}
我不知道它是否改变了任何东西,但是在void中调用了adURLWithBaseURLString,但是问题不应该在url函数中