Swift: Jak korzystać z biblioteki: Alamofire-SwiftyJSON

głosy
3

Mam problemy próbuje to biblioteka Alamofire-SwiftyJSON ( https://github.com/SwiftyJSON/Alamofire-SwiftyJSON ) do pracy.

Stworzyłem nowy projekt i pobrać bibliotekę Alamofire-SwiftyJSON i pociągnął wszystko w moim obszarze nawigacyjnym projektu.

Jednak, kiedy idę do ViewController i dodać:

import AlamofireSwiftyJSON

I pojawia się błąd: Nie ma takiego modułu importu AlamofireSwiftyJSON

Czy ktoś może mi powiedzieć jak dodać ten projekt ręcznie. Idealnie krok po kroku tak, że mogę dostać ten kod do pracy:

 Alamofire.request(.GET, http://httpbin.org/get, parameters: [foo: bar])
     .responseSwiftyJSON { (request, response, json, error) in
                 println(json)
                 println(error)
               }

Dziękuję Ci

Utwórz 03/02/2015 o 11:50
źródło użytkownik
W innych językach...                            


4 odpowiedzi

głosy
2

Pierwszy śledzić link do projektu Alamofire-SwiftyJSON. Nie pobrać pocztowy na pełnym projektem. Również skorzystać z linku do projektu Alamofire i pobierz ponownie fullzip, samo dla projektu swiftyJSON.

Teraz tutaj jest to, co trzeba zrobić:

  1. Dodaj plik Alamofire-SwiftyJSON.swift, które można znaleźć w „źródło” folderu zip Alamofire-SwiftyJSON że wcześniej pobrać i dodać go do projektu. Pozostaw zaznaczone pole wyboru dla „kopia w razie potrzeby”, a za swój cel, jak jest.
  2. Na Xcode, dodać plik za pośrednictwem pliku> „Dodaj pliki«myproject»i wybierz plik«Alamofire.xcodeproj»z zamkiem błyskawicznym Alamofire pobranego. Oto opcje:

Opcje na dodanie projektu alamo

Można sprawdzić „kopiowania plików w razie potrzeby”, jeśli chcesz. Jeśli nie, należy zachować folder dla projektu alamofire. 3. Wykonaj dokładnie to samo dla projektu swiftyJSON. Dodając plik „SwiftyJSON.xcodeproj”. 4. Przejdź do ustawień projektu> Budowanie Phase> Link binarnych z Biblioteki 5. Dodać ram Alamofire i SwiftyJSON (wybierz odpowiednie ramy w zależności czy są opracowania dla iPhone lub Mac OS X) tak:

Dodaj ram Alamofire i SwiftyJSON

  1. Idź do każdej części programu trzeba żądania być wykonane (np ViewController lub AppDelegate) i dodać poniżej początkowej instrukcji import następujący kod

    import Alamofire

  2. Dodaj swoją prośbę z następującego kodu:

    Alamofire.request (.get " http://httpbin.org/get " parametry: [ "bla": "bar"]) .responseSwiftyJSON {(żądanie, odpowiedzi JSON błąd) w println (JSON) println ( błąd)}

  3. Baw kodowanie!

Odpowiedział 03/02/2015 o 12:24
źródło użytkownik

głosy
4

Jaki jest twój cel wdrażania? Jest to <8.0 ? Jeśli tak te cele, które nie obsługują ram osadzone i jako takie wszystko co musisz zrobić to:

  • Przeciągnij Alamo.Swift do projektu nawigacji (Upewnij się, że kopiowanie plików w razie potrzeby)
  • Usuń instancje „Usage” Alamofire.request staną się prośba

więc kod trzeba będzie:

request(.GET, "http://httpbin.org/get", parameters: ["foo": "bar"])
 .responseSwiftyJSON { (request, response, json, error) in
             println(json)
             println(error)
           }

Więc teraz, że jest to, że ramy. Ponieważ mam trochę czasu teraz pokażę ci, jak uzyskać to wszyscy pracujemy i neaten go trochę.

Po wykonaniu powyższych czynności:

  • przeciągnij SwiftyJSON.swift na danym obszarze nawigacyjnym projektu

Znowu ... Upewnij się, że kopiowanie plików w razie potrzeby. Że jest to dla ram również.

Prawo do neaten go trochę - Nie musisz tego robić, ale jej zawsze lepiej użyć zmiennych i tablic, gdzie można dokonać czystsze i przyspieszyć czas kodowania. Na swoim przykładzie powyżej to zrobić:

var url = "http://httpbin.org/get"
var arr_parameters = [
    "foo": "bar"
]

request(.GET, url, parameters: arr_parameters)

Jej także dobry pomysł, aby włączyć niektóre badania błędzie, dzięki czemu można debugować rzeczy łatwiejsze, a także zapewnić fallbacks itp ...

tak, mając to na uwadze, cały kod powinien wyglądać tak:

var url = "http://httpbin.org/get"
var arr_parameters = [
    "foo": "bar"
]

request(.GET, url, parameters: arr_parameters)
   .responseJSON { (req, res, json, error) in
            if(error != nil) {
                NSLog("Error: \(error)")
                println(req)
                println(res)
            }
            else {
                NSLog("Success: \(url)")
                var json = JSON(json!)
            }
    }

Było naprawdę dobry artykuł pokrycia tego w SwiftMonthly

Mam nadzieję, że to pomoże. Powodzenia i trzymać nas zaksięgowane.

Odpowiedział 03/02/2015 o 14:48
źródło użytkownik

głosy
0

Można również użyć teraz Cocoapods. Pod zainstalować Alamofire i SwiftyJSON oddzielnie i po prostu przynieść AlamofireSwiftyJSON.swift do folderu projektu Xcode.

Następnie w kontroler widoku lub cokolwiek chcesz go używać, import Alamofire i SwiftyJSON w górnej części pliku.

Następnie poniżej fragment kodu powinien skompilować grzywny.

Alamofire.request(.GET, "http://httpbin.org/get", parameters: ["foo": "bar"])
         .responseSwiftyJSON({ (request, response, json, error) in
                     println(json)
                     println(error)
                  })
Odpowiedział 03/07/2015 o 14:37
źródło użytkownik

głosy
0

I ostatecznie rozwiązany poprzez czytanie na Cocoapods.org zacząć akapit:

wprowadzić opis obrazu tutaj

1) W pobliżu aplikacja Xcode (ważne!)

2) od terminalu, wewnątrz danego typu projektu folderu:

open YourApp.xcworkspace

Teraz wszystko działa :)

Odpowiedział 03/02/2017 o 09:48
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more