Pytanie GoogleMaps bez CocoaPods


Chciałbym dodać GoogleMaps do mojego projektu na iOS, ale nie chcę go używać CocoaPods. Czy jest jakiś sposób, aby to osiągnąć?


25
2017-08-03 08:03


pochodzenie


nie jesteś zmuszony do używania cocoapods ani żadnego systemu śledzenia wersji. musisz pobrać repo z GitHub i ręcznie dodaj pliki do projektu. - holex
Od kiedy to Cocoapods jest kiedykolwiek wymogiem O.o - TheCodingArt
@holex o ile mi wiadomo, nie ma - na iOS przynajmniej: github.com/googlemaps?page=1 .. czy masz link do jednego, jeśli istnieje? - user2243357
to było na stronie ... github.com/googlemaps/OpenInGoogleMaps-iOS/archive/master.zip - holex


Odpowiedzi:


Pewnie, że jest:

Jak to zrobiłem (Przydatne dla każdej biblioteki, której potrzebujesz)

  • Przejdź do odpowiedniej kapsuły, w tym przypadku: https://cocoapods.org/pods/GoogleMaps
  • Kliknij link "Zobacz Podspec" pod Biblioteką w prawym dolnym rogu
  • Zostaniesz zabrany do podspec.json
  • Na końcu JSON znajdź klucz "źródło" i użyj adresu URL dostarczonego do pobrania SDK.

Jeśli potrzebujesz instrukcji, jak zainstalować go ręcznie, możesz użyć strony internetowej waybackmachine i umieścić odpowiedni URL, ustawiając wcześniejszą datę. Oszczędzę ci trochę czasu:

Dodawanie starych Map Google:

  1. Uruchom Xcode i albo otwórz istniejący projekt, albo utwórz nowy projekt.
    • Jeśli nie masz doświadczenia w systemie iOS, utwórz aplikację z pojedynczym widokiem i upewnij się, że funkcja automatycznego liczenia odwołań jest włączona.
  2. Przeciągnij pakiet GoogleMaps.framework do swojego projektu. Po wyświetleniu monitu wybierz opcję Kopiuj elementy do folderu grupy docelowej.
  3. Kliknij prawym przyciskiem myszy GoogleMaps.framework w swoim projekcie i wybierz opcję Pokaż w Finderze.
  4. Przeciągnij plik GoogleMaps.bundle z folderu Zasoby do projektu. Po wyświetleniu monitu upewnij się, że opcja Kopiuj elementy do folderu grupy docelowej nie jest zaznaczona.
  5. Wybierz swój projekt z Nawigatora projektu i wybierz cel swojej aplikacji.
  6. Otwórz kartę Fazy kompilacji, a w łączu Binary z bibliotekami dodaj następujące frameworki:
    • AVFoundation.framework
    • CoreData.framework
    • CoreLocation.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc ++. dylib
    • libicucore.dylib
    • libz.dylib
    • OpenGLES.framework
    • QuartzCore.framework
    • SystemConfiguration.framework
  7. Wybierz projekt, a nie konkretny cel, a następnie otwórz kartę Ustawienia kompilacji.
    • W sekcji Inne znaczniki linkowania dodaj-ObjC. Jeśli te ustawienia nie są widoczne, zmień filtr w pasku ustawień Build z Basic na All.
  8. Na koniec dodaj swój klucz API do AppDelegate.
    • #import <GoogleMaps/GoogleMaps.h>
    • Dodaj następujące elementy do swojegoapplication:didFinishLaunchingWithOptions:metoda, zastępując klucz API_KEY kluczem API. [GMSServices provideAPIKey:@"API_KEY"];

#import <GoogleMaps/GoogleMaps.h>

Dodaj następujące elementy do swojego application:didFinishLaunchingWithOptions: metoda, zastępując API_KEY za pomocą Twojego klucza API.

[GMSServices provideAPIKey:@"API_KEY"];

70
2017-08-06 00:48



Będziesz także potrzebował CoreBluetooth.framework i Accelerate.framework, w przeciwnym razie otrzymasz niezdefiniowane błędy symboli. Testowany na Xcode 7 na iOS 9 - marcos1490
Postępowałem zgodnie z tym przewodnikiem i ręcznie zainstalowałem framework - dzięki za informacje! Mam problem, w którym nie mogę uzyskać aplikacji do kompilacji, błąd jest następujący: ld: framework nie został znaleziony GoogleMaps dla architektury x86_64 clang: błąd: polecenie linker nie powiodło się z kodem zakończenia 1 (użyj -v, aby zobaczyć wywołanie) Wszelkie sugestie ? - edcs
Dzięki za to! Według najnowszego podspec połączyć, musisz także dodać framework CoreGraphics. - Ri_
Wielkie dzięki za odpowiedź! (Y) - Gati
Cześć, nie mogę znaleźć folderu zasobów, gdy kliknę prawym przyciskiem myszy i pokażę w wyszukiwarce? btw, dodaję go do istniejącego projektu (który używa storyboard) .. co z automatycznym liczeniem odwołań? - Engineeroholic


  1. https://www.gstatic.com/cpdc/aa3052925ceeea2d-GoogleMaps-1.13.2.tar.gz Skopiuj i otwórz ten adres URL.

  2. Przeciągnij do swojego projektu Xcode GoogleMaps.framework.

    * wybierz opcję Kopiuj elementy do folderu grupy docelowej

  3. Kliknij prawym przyciskiem myszy GoogleMaps.framework -Show in finder

  4. Wewnątrz folderu zasobów GoogleMaps.bundle, przeciągnij go do projektu (* Nie wybieraj pozycji kopiowania).

  5. Importuj kilka FrameWork

    • CoreBluetooth.framework
    • OpenGLES.framework
    • ImageIO.framework
    • CoreData.framework
    • CoreText.framework
    • QuartzCore.framework
    • SystemConfiguration.framework
    • GLKit.framework
    • CoreLocation.framework
    • Security.framework
    • Accelerate.framework
    • libc ++ abi.tbd
    • libc ++. 1.tbd
    • libc.tbd
    • libicucore.tbd
  6. Wybierz swój projekt otwórz kartę Ustawienia budowania. W sekcji Inne flagi linków dodaj -ObjC w obu.Zrzut ekranu z dodawania -ObjC

  7. import

    Dodaj do swojej aplikacji następujące rzeczy: didFinishLaunchingWithOptions: method, zastąpienie klucza API_KEY kluczem API. [GMSServices provideAPIKey: @ "API_KEY"];

    (* Uzyskaj klucz API https://developers.google.com/maps/documentation/ios-sdk/places#whats_in_the_api_name_ios_places)

    Daj mi znać, jeśli znalazłeś błąd. Działa dla Xcode 7 +, iOS 9+.


2
2018-06-07 07:17