2012-09-22 10 views
19

Próbuję zintegrować pakiet Flurry SDK z aplikacją iOS po raz pierwszy. Dodałem biblioteki i kod do AppDelegate.m, jak wyjaśniono w ich instrukcjach. Kiedy mogę skompilować otrzymuję następujące błędy:Błąd Mach-O w przypadku integracji Flurry Xcode

Undefined symbols for architecture armv7: 
    "_SCNetworkReachabilityCreateWithAddress", referenced from: 
     +[FlurryReachability flurryReachabilityWithAddress:] in libFlurry.a(libFlurry.a-armv7-master.o) 
    "_SCNetworkReachabilityCreateWithName", referenced from: 
     +[FlurryReachability flurryReachabilityWithHostName:] in libFlurry.a(libFlurry.a-armv7-master.o) 
    "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from: 
     -[FlurryReachability flurryStopNotifier] in libFlurry.a(libFlurry.a-armv7-master.o) 
    "_SCNetworkReachabilityScheduleWithRunLoop", referenced from: 
     -[FlurryReachability flurryStartNotifier] in libFlurry.a(libFlurry.a-armv7-master.o) 
    "_SCNetworkReachabilitySetCallback", referenced from: 
     -[FlurryReachability flurryStartNotifier] in libFlurry.a(libFlurry.a-armv7-master.o) 
    "_SCNetworkReachabilityGetFlags", referenced from: 
     -[FlurryReachability flurryCurrentReachabilityStatus] in libFlurry.a(libFlurry.a-armv7-master.o) 
     -[FlurryReachability isFlurryReachable] in libFlurry.a(libFlurry.a-armv7-master.o) 
     -[FlurryReachability isFlurryConnectionRequired] in libFlurry.a(libFlurry.a-armv7-master.o) 
     -[FlurryReachability isFlurryConnectionOnDemand] in libFlurry.a(libFlurry.a-armv7-master.o) 
     -[FlurryReachability isFlurryUserInterventionRequired] in libFlurry.a(libFlurry.a-armv7-master.o) 
     -[FlurryReachability isFlurryReachableViaWWAN] in libFlurry.a(libFlurry.a-armv7-master.o) 
     -[FlurryReachability isFlurryReachableViaWiFi] in libFlurry.a(libFlurry.a-armv7-master.o) 
     ... 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

mam zaktualizowany do najnowszej wersji XCode i używam najnowszego SDK Flurry.

Ktoś inny napotyka to i ma naprawę? Ich fora wsparcia wspomniały o podobnym problemie kilka dni temu, ale użytkownicy twierdzili, że zostały naprawione i nie mogę znaleźć żadnych sugestii na temat ich strony.

+3

Czy dodałeś SystemConfiguration.framework? –

+0

Nie wiem, czy jesteś na symulatorze lub urządzeniu. Być może będziesz musiał dodać obsługę armv6 AND armv7. Jeśli tak, zobacz: http://stackoverflow.com/questions/7488657/how-to-build-for-armv6-and-armv7-architectures-with-ios-5 – Snowcrash

+0

Próbowałem go z urządzeniem. Wystarczy zobaczyć, jak próbowałem budować na symulatorze i otrzymałem te same błędy. Dodałem wsparcie dla armv6 i 7 oprócz 7, jak opisano w linku, który wysłałeś, ale to też nie pomogło. Dobre myśli, jakieś inne pomysły? –

Odpowiedz

42

Krótko mówiąc, należy połączyć ze strukturą SystemConfiguration. Odpowiedź na to pytanie wyjaśnia to. Naprawiono go, gdy uaktualniłem do Flurry SDK 4.0.6.

Żałuję, że Flurry nie wyjaśnił tego, ale nie widziałem żadnej dokumentacji na stronie Flurry wyjaśniającej ten konieczny etap integracji Flurry SDK 4.0.6.

Link Against SystemConfiguration.framework

+1

Jesteś gwiazdą. W końcu posortowałem ten głupi problem. – zirinisp

+0

Cieszę się, że mogę Ci pomóc! Dzięki za opinie! – BigSauce

+1

Bam! Zastanawiam się, dlaczego nie uwzględnili tego w swoich instrukcjach. – Nungster

0

Istnieje alternatywny interfejs API, który jest również bezpłatny (pełne ujawnienie, że jestem współzałożycielem): www.askingpoint.com. Jest gotowy na system iOS 6 i zawiera wbudowany widget oceny, który jest kontrolowany z konta po stronie serwera i wykorzystuje dane analityczne do pytaj tylko użytkowników, którzy dużo cię używają, aby Cię ocenić.

Mam nadzieję, że rozpatruje skargi na mój wcześniejszy wpis. Przepraszam za link pomieszany.

+0

Cliff, AskingPoint brzmi naprawdę fajnie. Czy można go dodać w połączeniu z innymi usługami analitycznymi? Chciałbym wypróbować system oceniania, ale prawdopodobnie pójdę z Flurry na samą analizę. –

+0

Pewnie. Jest całkowicie darmowy i nic nie stoi na przeszkodzie, aby ludzie używali więcej niż jednego rozwiązania. To naprawdę zajmuje tylko jedną linię kodu, aby zacząć i około 5 minut czasu. Możesz skontaktować się ze mną za pośrednictwem wiadomości e-mail na moim profilu stosu lub na stronie podanej tam, jeśli chcesz. –

+1

Hej Cliff, Po prostu chciałem poinformować, że zainstalowałem AskingPoint i używam go do obsługi recenzji w mojej aplikacji. Jak dotąd było świetnie, dzięki za przedstawienie mnie :-) –