
我试图加载自定义Android WebVIEw,以便能够使用HTML文件输入上传文件(默认情况下,AndroID webvIEw不能使用输入文件). Im using this code,唯一的区别是我使用expo工具包,所以我的MainApplication.java是不同的(默认情况下继承自另一个类):
public class MainApplication extends MultIDexApplication { // Needed for `react-native link` public List<ReactPackage> getPackages() { return Arrays.<ReactPackage>asList( new MainReactPackage(), new CustomWebVIEwPackage() ); } @OverrIDe public voID onCreate() { super.onCreate(); Soloader.init(this, /* native exopackage */ false); }}基本上git代码所做的是覆盖默认的反应本机webvIEw以使其在AndroID中使用CustomWebVIEw.java,使用requireNativeComponent和此代码(this is on CustomWebView.android.js):
var RCTWebVIEw = requireNativeComponent('CustomWebVIEw', WebVIEw, {nativeOnly: { messagingEnabled: PropTypes.bool,},});
但是当我使用exp start运行应用程序并导航到具有CustomWebVIEw的屏幕时,我收到此错误:
总结问题是React Native没有读取我的自定义本机组件.有人能帮助我吗?
解决方法:
默认情况下,Expo不支持任何自定义本机模块.这是因为它们只有一个perbuilt二进制文件,它们只加载你编写的Js包.因此,您使用Expo编写的任何代码都只能是纯JavaScript.
但是,Expo文档确实说您可以在分离后添加自定义本机模块.
更多信息:
https://docs.expo.io/versions/latest/guides/detach.html#should-i-detach
https://docs.expo.io/versions/latest/introduction/faq.html#what-is-the-difference-between-expo-and-react-native
https://github.com/expo/expo/issues/56
总结以上是内存溢出为你收集整理的android – 使用expo工具包在native native中加载自定义本机组件全部内容,希望文章能够帮你解决android – 使用expo工具包在native native中加载自定义本机组件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)