【发布时间】:2017-10-13 01:36:53
【问题描述】:
我得到的错误是:
“GADUNativeCustomTemplateAd”没有可见的@interface 声明选择器“performClickOnAssetWithKeycustomClickHandler:clickHandler:”
谁能帮我解决这个问题?
.m 文件
// Copyright 2014 Google Inc. All Rights Reserved.
#import "GADUNativeCustomTemplateAd.h"
@implementation GADUNativeCustomTemplateAd
- (instancetype)initWithAd:(GADNativeCustomTemplateAd *)nativeCustomTemplateAd {
self = [super init];
if (self) {
_nativeCustomTemplateAd = nativeCustomTemplateAd;
}
return self;
}
- (NSString *)templateID {
return [self.nativeCustomTemplateAd templateID];
}
- (NSString *)stringForKey:(NSString *)key {
return [self.nativeCustomTemplateAd stringForKey:key];
}
- (UIImage *)imageForKey:(NSString *)key {
return [self.nativeCustomTemplateAd imageForKey:key].images;
}
- (void)performClickOnAssetWithKey:(NSString *)key withCustomClickAction:(bool)customClickAction {
dispatch_block_t clickHandler = nil;
if (customClickAction) {
clickHandler = ^{
[self didReceiveClickForAsset:key];
};
}
[self.nativeCustomTemplateAd performClickOnAssetWithKey:key customClickHandler:clickHandler];
}
- (void)didReceiveClickForAsset:(NSString *)key {
if (self.didReceiveClickCallback) {
self.didReceiveClickCallback(self.nativeCustomTemplateClient,
[key cStringUsingEncoding:NSUTF8StringEncoding]);
}
}
- (void)recordImpression {
[self.nativeCustomTemplateAd recordImpression];
}
- (NSArray *)availableAssetKeys {
return [self.nativeCustomTemplateAd availableAssetKeys];
}
@end
.h 文件
// Copyright 2014 Google Inc. All Rights Reserved.
@import Foundation;
@import GoogleMobileAds;
#import "GADUTypes.h"
@interface GADUNativeCustomTemplateAd : NSObject
/// A reference to the Unity native custom template ad client.
@property(nonatomic, assign) GADUTypeNativeCustomTemplateAdClientRef *nativeCustomTemplateClient;
/// A GADNativeCustomTemplateAd which loads native ads.
@property(nonatomic, strong) GADUNativeCustomTemplateAd *nativeCustomTemplateAd;
/// Initializes a GADUNativeCustomTemplateAd.
- (instancetype)initWithAd:(GADNativeCustomTemplateAd *)nativeCustomTemplateAd;
/// The ad clicked callback into Unity.
@property(nonatomic, assign)
GADUNativeCustomTemplateDidReceiveClickCallback didReceiveClickCallback;
/// The custom template ID for the ad.
- (NSString *)templateID;
/// Returns the string corresponding to the specified key.
- (NSString *)stringForKey:(NSString *)key;
/// Returns the native ad image corresponding to the specified key.
- (UIImage *)imageForKey:(NSString *)key;
/// Call when the user clicks on the ad.
- (void)performClickOnAssetWithKey:(NSString *)key withCustomClickAction:(bool)clickAction;
/// Call when the ad is displayed on screen to the user.
- (void)recordImpression;
/// An array of available asset keys.
- (NSArray *)availableAssetKeys;
@end
【问题讨论】:
标签: ios objective-c iphone xcode nsstring