2016-01-01 12 views
7

Próbuję zaimportować framework libjingle_peerconnection do mojego projektu Xcode, ale z jakiegoś powodu nie mogę zaimportować nagłówka Objective-C z import RTCICEServer w plikach źródłowych Swift. Próbowałem użyć plików nagłówkowych itp. Co robię źle?Zaimportuj framework Objective-C (CocoaPod) do Swift?

# Uncomment this line to define a global platform for your project 
# platform :ios, '8.0' 
# Uncomment this line if you're using Swift 
use_frameworks! 

target 'VideoRTCTest' do 
    pod "libjingle_peerconnection" 
end 

target 'VideoRTCTestTests' do 

end 

target 'VideoRTCTestUITests' do 

end 

enter image description here

+0

Tak, jestem. libjingle_peerconnection to Objective-C, jeśli to pomaga. – LeviXC

+0

Nie mam; Musiałem to odłożyć, praca jest teraz szalona. Wrócę do tego, kiedy będę mógł. Prawdopodobnie wróci do Celu-C. – LeviXC

Odpowiedz

8

Most

1. Utwórz xxx-Bridging-header

dodać nagłówek pomostowego do projektu metodą wyboru, najprostszy jeden byt utworzenie pojedynczego pliku .m i odpowiedź Utworzenie nagłówka mostkowania w tym oknie dialogowym:

Create Bridging Header

2. Odniesienia swoją Pod w nagłówku pomostowego

Dołącz plików jak tak:

// 
// Use this file to import your target's public headers that 
// you would like to expose to Swift. 

#import "RTCICEServer.h" 

3. Objective-C narażone na Swift

Kiedy już znajdziesz się w nagłówku pomostowym, nie musisz importować klas Obj-C do Swift. Używać tych:

let uri = URL(fileURLWithPath: "") 
let rtc:RTCICEServer = RTCICEServer(uri: uri, username: "", password: "") 
print(rtc) 

Innym przykładem jest opisana here.


► Znajdź rozwiązanie na GitHub i dodatkowe informacje na temat Swift Recipes.

+0

ale prawidłowym sposobem jest zaimportowanie nazwy modułu (import xxxx) do pliku SWIFT bez konieczności tworzenia nagłówka mostkowania, o ile plik pod ma włączoną obsługę use_frameworks, wydaje mi się, że jest coś nie tak z libjingle_peerconnection pod – JAHelia

Powiązane problemy