通过react-native-create-library脚手架创建原生Api
1.全局安装react-native-create-library
npm install -g react-native-create-library
2.创建项目模版,注意事项需要指定前缀,若不指定默认是RN,这里我一创建bleLibrary为例,指定前缀为CGM,同时要指定平台,默认会创建android,ios,window
首先切到你想要创建的目录,执行一下命令
react-native-create-library --platforms android,ios --prefix CGM bleLibrary
创建的目录结构如下

设置包依赖react-native版本

3.将iOS目录下的.podspec移动到最外层,要不然pod install无法将这个库安装

4.更改.podspec文件,默认里面内容
s.source_files = "CGMBleLibrary/**/*.{h,m}"
改为
s.source_files = "ios/**/*.{h,c,cc,cpp,m,mm,swift}"
项目中需要引入的第三方都在这个文件申明

到了这一步基本算是完事了,可以编写代码了,但是无法调试,我们需要创建一个example示例项目,在这个项目中引入这个模块
5.创建这个示例代码
cd bleLibrary
npx react-native@latest init example
6.如何引入我们开发的包
1.开发调试阶段,直接本地引入

然后直接执行 yarn install
不要使用 npm install,不要使用 npm install,不要使用 npm install,重要事情说三遍,RN 使用的打包工具Metro不支持symlinks
7. pod install 安装,有时候安装完毕之后运行会报错,重启xcode

8 测试验证


运行之后结果如下:

网友评论