iphone - snippet - title tag




Wie konvertiert man ein Xcode-Projekt in eine statische Bibliothek oder ein Framework? (2)

Wenn Sie ein 'Standard' Framework wie UIKit.framework kompilieren möchten, versuchen Sie dieses Universal Framework iPhone iOS

sonst

  1. Erstellen Sie ein neues Projekt namens "TestPlugin" und wählen Sie "Cocoa Touch Static Library". Hier haben Sie ein Ziel 'TestPlugin.a'.
  2. Fügen Sie ein neues Ziel hinzu. In der linken Ecke der Projekteinstellung lautet der Name: "Ziel hinzufügen". Wählen Sie "Bundle" in "Framework und Bibliothek" in "OS X". Dies ist Ihr zweites Ziel namens "TestPluginBundle.bundle".
  3. Fügen Sie in der Einstellung "Build Phrases" Ihres TestPlugin.a-Ziels einen neuen "Target Denpencendences" hinzu. Dies erzeugt zuerst die .bundle-Datei und dann die .a-Datei.
  4. Kopieren und fügen Sie alle Ihre 'Original' Projektdatei (schließen Sie die main.m und die .xcodeproj Datei) in das TestPlugin Projekt ein.
  5. In der Einstellung "Build Phases" von TestPluginBundle fügen Sie alle .xib .png (möglicherweise .jpg) -Datei zu "Compile Sources" hinzu. Fügen Sie "Bundle-Ressourcen kopieren" eine räumliche Ressource hinzu (z. B. .wav, .gif und .html).
  6. Ersetzen Sie den gesamten Code, der die Ressource vom Hauptpaket lädt, um die Ressource von TestPluginBundle zu laden. Vielleicht möchten Sie eine Kategorie für UIImage hinzufügen, weil Sie imageNamed: verwenden imageNamed: Sie können also [UIImage testPluginImageNamed:@"small.png"] . Es ist einfach, in Ihrem Projekt zu ersetzen und die zugehörige Header-Datei hinzuzufügen. Nehmen Sie die .xib-Datei an Beispiel:

    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
    {
        //self = [super initWithNibName:nibNameOrNil bundle:[NSBundle mainBundle]];
        // you need to define a method to get the bundle 'TestPluginBundle.bundle', here I used '[TestPlugin TestPluginBundle]'
        self = [super initWithNibName:nibNameOrNil bundle:[TestPlugin TestPluginBundle]];
        ...
    }
  7. Fügen Sie anschließend die .a-Datei und die .bundle-Datei zu einem anderen Projekt hinzu. In dem anderen Projekt müssen Sie das zugehörige Framework erneut hinzufügen.

Ich habe diese Methode erfolgreich für meine Arbeit verwendet.

Ich habe ein Projekt, das ich in ein anderes Projekt als Rahmen importieren muss, genauso wie wir Coredata-Framework, Quartzcore usw. importieren. Wie erreicht man das? Wie kompiliere ich mein Projekt in eine Bibliothek oder ein Framework, das in andere Projekte importiert werden kann? Bitte erläutern Sie die Schritte.

Danke im Voraus.


https://github.com/jverkoey/iOS-Framework versuchen Sie diesen Link für die Erstellung von Framework und Bundle von Ressourcen. Wickeln Sie die Bilder, XIBs und andere Ressourcen, die Sie in Ihrem Projekt verwendet haben, zu einem Bündel zusammen und kopieren Sie Ihre Klassen in Ihren Cocoa Tippen Sie auf Statisches Bibliotheksprojekt.





static-libraries