Ho creato un progetto di test per testare l'admob e come usarlo, ma quando costruisco il mio progetto ottengo 11 errori di linker di Apple mach-o quando provo ad aggiungere admob il mio progetto (Xcode 4.3.3)errore di apple mach-o linker mentre si lavora con admob
Il file h è oke e qui è il file M (i codici sono prese dalla base AdMob knowlage)
#import "chViewController.h"
#define MY_BANNER_UNIT_ID @"my id is written in here"
@interface chViewController()
@end
@implementation chViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
// Create a view of the standard size at the top of the screen.
// Available AdSize constants are explained in GADAdSize.h.
bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];
// Specify the ad's "unit identifier." This is your AdMob Publisher ID.
bannerView_.adUnitID = MY_BANNER_UNIT_ID;
// Let the runtime know which UIViewController to restore after taking
// the user wherever the ad goes and add it to the view hierarchy.
bannerView_.rootViewController = self;
[self.view addSubview:bannerView_];
// Initiate a generic request to load it with an ad.
[bannerView_ loadRequest:[GADRequest request]];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
errori
Undefined symbols for architecture i386:
"_SCNetworkReachabilityCreateWithName", referenced from:
-[GADNetworkChecker startNetworkChecking] in libGoogleAdMobAds.a(GADNetworkChecker.o)
"_SCNetworkReachabilityScheduleWithRunLoop", referenced from:
-[GADNetworkChecker startNetworkChecking] in libGoogleAdMobAds.a(GADNetworkChecker.o)
"_SCNetworkReachabilitySetCallback", referenced from:
-[GADNetworkChecker startNetworkChecking] in libGoogleAdMobAds.a(GADNetworkChecker.o)
"_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from:
-[GADNetworkChecker stopNetworkChecking] in libGoogleAdMobAds.a(GADNetworkChecker.o)
"_OBJC_CLASS_$_ASIdentifierManager", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADIdentifierUtilities.o)
"_AudioServicesPlaySystemSound", referenced from:
-[GADWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:] in libGoogleAdMobAds.a(GADWebViewDelegate.o)
"_OBJC_CLASS_$_SKStoreProductViewController", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
"_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
"_OBJC_CLASS_$_MFMessageComposeViewController", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
"_SKStoreProductParameterITunesItemIdentifier", referenced from:
-[GADOpener openInAppStore:fallbackURLString:] in libGoogleAdMobAds.a(GADOpener.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ho aggiunto lib .googleadmobAds per il mio cartella e binario collegato con librerie (quando lo rimuovo ricevo gli stessi errori ma 4 di loro non 11)
Ho letto molti post di stackoveflow su di esso e alcuni di voi affermano che ho bisogno anche di annuncio adsupport.framework ma Non riesco a trovarlo Non lo vedo nei binari dei collegamenti con la lista delle librerie.
Nessuna di queste soluzioni in rete sta funzionando Sono bloccato.
Cosa c'è di sbagliato con esso Non ricevo alcun errore sui miei file h o m quindi perché gli errori di linker mach-o qualcuno può aiutarmi per favore?
Li aggiungo tutti ma ci sono ancora 4 errori anche perché i documenti admob non dicono nulla su questi framework –
Sembra che ho dimenticato AdSupport.framework e forse AudioToolBox.framework. Un buon approccio è quello di prendere le classi non definite (ad esempio ASIdentifierManager) e cercare in Google in quale framework si trovano. –
A partire da oggi, avevo anche bisogno (oltre ad AdSupport.framework) dei seguenti framework: EventKitUI.framework, EventKit.framework e CoreTelephony.framework. –