欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

创建一个ios平台的Swift动态库framework

程序员文章站 2024-03-15 13:57:29
...

swift构建framework经常遇到一些问题,所以在此总结一下,方便初学者小白和我自己以后查阅。

先介绍一下我的环境 xcode9.2(9c40b),  ios真机iPhone 7(ios11.2.6)

1,创建framework项目

1,打开xcode,选择新建一个项目,然后选择自己对应的平台,在这里就选择ios下面的Cocoa Touch Framework.然后自己命名framework项目的名称和存放位置,记得选择swift语言。我命名为JGHFramework。

w创建一个ios平台的Swift动态库framework

2,由于我们是要选择swift版本,所以该项目下的.h文件就可以删除了。oc或者其他语言的话还需要.h文件来暴露接口呢。swift语言是通过关键字public等来暴露接口的,所以不需要该.h文件。

3,编写代码。在此我仅仅为了演示,所以就添加了一个People.swift文件。代码内容也很简单。

import Foundation

public class People {
    public init() {
        
    }
    public func sayHi(to name:String) {
        print("Hello, \(name)!")
    }
}

4,编写完成后,command + B,编译。然后就会在Products文件下出现JGHFramework.framework文件.或者是由红色变为黑色。大功完成。

2,创建测试Demo。

1,File->new->Target...创建一个测试的Demo。记得选择ios下的SingleView App。名字一般是你的框架名+Demo。我的为JGHFrameworkDemo.

2,接下来切换到Demo的Target上。general->Embedded Binaries.点击+把刚刚生成的Framework添加进去。

创建一个ios平台的Swift动态库framework

3,编写代码测试的framework。为了演示,我也是简单的在ViewController.swift文件的viewDidLoad方法里添加简单的代码。记得要导入框架哦(import JGHFramework)。编写代码的过程中已经可以代码不全了。开心不。

import UIKit
import JGHFramework

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        
        let people = People()
        people.sayHi(to: "Bob")
    }

4,编写完成后,command + R。手机就安装上了Demo,我的控制台也显示了打印信息。“Hello, Bob!”

相关标签: frameWork