我们有很多用跨平台C++编写的业务逻辑.我们希望为我们的应用程序编写跨平台UI,并使用此业务逻辑来创建整个跨平台应用程序.
是否有可能将纯粹用C++编写的本机模块暴露给本机反应?我们不希望用本机语言(Java或Objective-C)创建C++代码包装器.这样的包装器将增加更多的复杂性,这将使调试和调查更加困难.
我也在寻找一种直接在 C++ 中执行此操作的方法,而无需为 Android 编写 JNI 和为 iOS 编写 Obj-C。CxxNativeModule我在反应原生源中找到了该类。请参阅示例实现SampleCxxModule。
最后要弄清楚的是如何在 C++ 中注册该模块。在 React Native Android 的 JNI 中,实现NativeModule说
NativeModule其实现是用 C++ 编写的,不得提供任何 Java 代码(以便它们可以在其他平台上重用),而应该使用CxxModuleWrapper.
然后执行CxxModuleWrapper说
除了避免破坏现有代码之外,这没有任何有趣的作用。
因此,这可能会帮助您入门。最后要弄清楚的是如何注册aCxxNativeModule以便在JS中使用。
小智 1
似乎您需要找到依赖于操作系统的代码,并为不同的操作系统编写该代码的不同版本。
这是一个建议如何完成此操作的链接: How do I check OS with a preprocessordirective?
| 归档时间: |
|
| 查看次数: |
1013 次 |
| 最近记录: |