2014-06-23 8 views
7

Studiuję Swift i staram się dowiedzieć, jak zintegrować framework SDK Google Map. Stworzyłem nowy projekt w Xcode 6, zaimportowałem frameworki wymagane zgodnie z instrukcjami Google Map SDK dla iOS.Nie można uzyskać dostępu do Google Map Framework w pliku Swift AppDelegate

Jednak po zaimportowaniu struktury Map Google przy użyciu (import) do pliku AppDelegate.swift struktura nie jest rozpoznawana.

Nie można znaleźć rozwiązania w dowolnym miejscu. Proszę pomóż.

Odpowiedz

11

Po zaimportowaniu zestawu SDK do serwisu Mapy Google dla systemu iOS należy zdefiniować nagłówek mostu, a następnie zostanie rozpoznany pakiet SDK.

Aby utworzyć ten nagłówek mostu, dodaj dowolny arbitralny plik Objective-C (np .: plik .m) do swojego projektu. Xcode wyświetli pytanie, czy skonfigurować dla ciebie nagłówek mostu.

Kliknij Tak, aby kontynuować.

Plik kończący się -Bridging-Header.h zostanie dodany do projektu.

Po prostu dodaj w nagłówku mostu, a Ty jesteś gotowy!

Teraz można bezpiecznie usunąć tymczasowy plik Objective-C.

+0

Dziękuję Ci bardzo za Aarona, który rozwiązał mój problem. Wydaje się, że jest to trochę hack, tworząc plik .m wyłącznie po to, by uzyskać opcję Bridging Header, może będzie łatwiej w wersji Release. – Cathal

+0

@CathalYea, zgadzam się. Spodziewałem się, że nagłówek mostu zostanie dodany, gdy biblioteka Objecitve-C zostanie zaimportowana do projektu. Mam nadzieję, że zostanie to poprawione w następnym nasieniu. –

+0

Witam, czy możesz mi pokazać, jak dodać klucz API do szybkiego? Dzięki. Z map Google sdk: https://developers.google.com/maps/documentation/ios/start#getting_the_google_maps_sdk_for_ios Dodaj do aplikacji następujące elementy: didFinishLaunchingWithOptions: method, zastępując klucz API_KEY kluczem API. [GMSServices provideAPIKey: @ "API_KEY"]; – Duc

1

Możesz teraz zainstalować SDK za pośrednictwem CocoaPods, a nie będziesz musiał dodawać nagłówka Bridging. Zobacz ten samouczek (Google Maps iOS SDK Link) i po prostu dodaj następujący kod do funkcji didFinichLaunchingWithOptions w AppDelegate.

GMSServices.provideAPIKey("API_KEY") 
0

Dodaj tymczasowy plik Objective-C do swojego projektu. Możesz nadać mu dowolne imię.

Wybierz opcję Tak, aby skonfigurować nagłówek mostowania Objective-C.

Usuń tymczasowy plik Objective-C, który właśnie utworzyłeś.

W pliku Nazwa_projektu-Bridging-header.h właśnie utworzony, dodaj linię:

'#import < GoogleMaps GoogleMaps.h> /'

edytować plik AppDelegate.swift:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 

    GMSServices.provideAPIKey("AIza....") //iOS API key 

    return true 
} 

Follow the link dla pełnej próby

Powiązane problemy