美文网首页
Native module cannot be null / N

Native module cannot be null / N

作者: lwhldy | 来源:发表于2019-09-26 13:43 被阅读0次

    错误如图类似


    NativeEventEmitter.png
    困扰了好久的问题,各种google,度娘都写的是手动集成RN出现该问题的解决方案,由于楼主是自动集成的库,所有Native库都是自动link的,所以网上的那些解决方案对我都无效。
    但是还是贴一下手动集成RN报该错误的解决方案,

    手动 linking

    步骤1

    如果库具有native的代码,则其文件夹中必须存在.xcodeproj文件。 将此文件拖到Xcode上的项目中(通常位于Xcode上的Libraries组下);

    步骤1

    步骤 2

    单击您的主项目文件(代表.xcodeproj的文件)选择Build Phases并将静态库从您要导入的Library中的Products文件夹拖到Link Binary With Libraries

    步骤 2

    步骤 3

    并非每个图书馆都需要此步骤,您需要考虑的是:

    我是否需要在编译时知道库的内容?

    这意味着,您是在本机端还是仅在JavaScript中使用此库? 如果你只是在JavaScript中使用它,那么你不需要此步骤!

    如果你确实需要从native调用它,那么我们需要知道库的头文件。 要实现这一点,您必须转到项目的文件,选择“Build Settings”并搜索“Header Search Paths”。 在那里你应该包括你的图书馆的路径。 (此文档过去建议使用recursive,但不再推荐使用它,因为它可能导致细微的构建失败,尤其是对于CocoaPods。)

    步骤 3

    如果你是自动集成RN, 你需要在项目根目录 ios文件夹内Podfile(这是iOS第三库管理文件,不再赘述,感兴趣自行度娘)文件添加类似如下的第三方库路径,这是解决思路,具体问题具体分析,缺少什么文件就在node_modules文件内找,参照如下填写,一般都能解决问题。

    pod 'React-RCTPushNotification', :path => '../node_modules/react-native/Libraries/PushNotificationIOS'

    相关文章

      网友评论

          本文标题:Native module cannot be null / N

          本文链接:https://www.haomeiwen.com/subject/dwjcuctx.html