2016-03-21 7 views
0

Meine iOS App enthält sowohl Ziel-C und Swift-Code. Jetzt habe ich use_frameworks hinzugefügt! an der Spitze der Pod-Datei, um einige schnelle Bibliothek zu verwenden. Leider hat es angefangen, Kompilierungsfehler zu geben.Hinzufügen von 'use_frameworks!' in podfile bricht App

Meine pod Version: 0.39.0

Es begann über die Einfuhren in bridge.h Datei beschwerte

Pod-Datei enthält Objective-C-Bibliotheken. Jetzt möchte ich schnelle Bibliotheken hinzufügen.

Wie kann ich dieses Problem beheben. Lassen Sie mich wissen, ob Bedarf an mehr Details

use_frameworks! 
platform :ios, '9.0' 

xcodeproj 'Test.xcodeproj' 

def devDependecies 

    pod 'SocketRocket' 
    pod 'CocoaLumberjack' 
    pod 'MRProgress' 
    pod 'GRMustache', '~> 7.3.0' 
    pod 'Realm', '=0.96.2' 
    pod 'ADALiOS' 
    pod 'Office365/Outlook' 
    pod 'Office365/Discovery' 
    pod 'AFNetworking' 
    #https://github.com/youtube/youtube-ios-player-helper/issues/160 
    pod 'youtube-ios-player-helper', :git=>'https://github.com/youtube/youtube-ios-player-helper', :commit=>'head' 
    pod 'iOSCalendarEventParser', '=0.0.4' 
    pod 'OneDriveSDK' 

end 


target 'Test' do 
    devDependecies 
end 

Probenfehler in bridge.h Datei: enter image description here

aber diese Datei unter pod Verzeichnis existiert. enter image description here

+1

Welche Art von Fehlern? – Ro22e0

+0

Workaround-Lösung wird als Submodul hinzugefügt ... Siehe: http://michiganlabs.com/swift-library-objective-project/#.VvDaJhJ95mA – Rajeev

Antwort

0

In diesem Moment kompilieren kann Xcode nicht, dass erlauben. use_frameworks funktioniert nur mit schnellen Pods oder Bibliotheken. Wenn Sie eine objektive C-Bibliothek hinzufügen, müssen Sie den Bridging-Header verwenden. Daher müssen Sie die Anweisung use_frameworks entfernen, damit sie funktioniert. Die einzige Arbeit, die ich gefunden habe, ist, nur die Ziel-C-Bibliotheken und die schnellen Bibliotheken über Pods zu importieren, die Sie manuell hinzufügen können. Sie können die Namen und den Inhalt der Klassen kopieren und verwenden, als ob Sie sie erstellt hätten.

+0

Alex, was meinst du, indem Sie sie manuell hinzufügen? Wie machst du das? – mehmetsen80

+0

Für Ziel C-Bibliotheken nur die Pods-Datei. Für schnelle Bibliotheken wie zB das Alamofire-Projekt (Bibliothek) oder andere wie Haneke fügen Sie diese manuell hinzu. Laden Sie die Bibliothek herunter und ziehen Sie das Projekt (blaues Symbol) in xcode direkt unter Ihr Hauptprojekt. Gehe danach zu deinem Projekt und klicke auf Ziele. Wähle deine Haupt-App aus und gehe dann zu allgemeinen Optionen. Unter Embedded Binaries klicken Sie auf das + Symbol und unter Produkt wählen Sie die Bibliothek aus, die Sie gerade gezogen haben. Das ist es. Jetzt können Sie diese Bibliothek in jede Klasse importieren, die Sie verwenden, z. B. Alamofire importieren –

0

'youtube-ios-player-helper' kann als Framework kompilieren. So ist es von der Brücke Header entfernen und nur eine Import Zeile in Swift Klassen

import youtube-ios-player-helper 

Machen Sie dasselbe für alle Hülsen hinzufügen, die als Rahmen

Verwandte Themen