闪屏反应原生

Posted

技术标签:

【中文标题】闪屏反应原生【英文标题】:Splash screen react-native 【发布时间】:2017-12-08 20:03:10 【问题描述】:

是否有任何 repo 或其他东西可用于自动更改启动画面图像而无需发布?

例如 1 周我想显示图像 X,之后我想做 Y,但 Y 也不在手机上,所以我必须从 api 下载它等等。

【问题讨论】:

ios Launch screen in React Native的可能重复 不是重复的,我想在它已经安装在手机上时更改它,在本地我知道该怎么做。 将您的启动屏幕图像更改为具有固定名称的uri,然后您可以在需要时替换图像。例如: 从主 UIViewController 中删除启动屏幕,并在 index.js 中获取一个 Image 组件以渲染一些 ms 时间(也许 setTimeout 可能会有所帮助)和 setState 以在其上渲染您的应用程序。 【参考方案1】:

您可以自己轻松完成。只需编写您的 api 并每周一次让您的应用程序在打开应用程序时检查该端点。将图像保存到设备的磁盘,然后从设备的内存中将图像提供到启动屏幕上。

如果您不想编写自己的 api,请保留一些状态并将其持久化。每周再次检查一次您想要的 api 是否有任何新图像,如果有,请将它们下载到您的设备然后提供它们。

这是一个广泛问题的广泛答案,但你可以通过一点 react(native) 和 js 来实现你想要的。

【讨论】:

API 和获取图像不是问题,但是如何覆盖启动图像? 您可以检查react-native-fs,以便从您可以存储启动图像的文件系统中读取/写入。【参考方案2】:

    您可以使用现有的 npm 包来制作启动画面。喜欢react-native-splash-screen

    使用setTimeout方法

componentDidMount() 
  setTimeout(function()
    // place your navigator code here
  , 1000); // update your own time interval value

希望这会对您有所帮助 :) 编码愉快!

【讨论】:

以上是关于闪屏反应原生的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法使用排毒来测试反应原生中闪屏的发生?

React 原生闪屏本地化

如何在 Flutter 中移除原生闪屏和主屏幕之间的默认淡入淡出过渡? (仅使用本机启动画面)

在拍摄多张照片时反应原生路由器通量和反应原生相机问题

使用故事书中的反应原生矢量图标反应原生 Web 问题

反应原生原生模块 RCTBubblingEventBlock 为空