如何将图标(图像,徽标..)添加到状态栏

我注意到StatusBar组件(React Native)没有任何道具可以包含本文档中的任何types的图标或徽标: https : //facebook.github.io/react-native/docs/statusbar.html#状态栏

当应用程序在后台运行时,我想在网络栏旁边显示一个图标(或者甚至只是一个小的widthxheight方块)。 我尝试将View组件与状态栏组合在一起,创建一个像我这样的小红色矩形:

   ); } } const styles = StyleSheet.create({ container: { width: 20, height: 20, backgroundColor: 'red' } }) 

然而,红色正方形刚出现在状态栏下方。 有任何想法吗?

编辑:我想要的是即使应用程序在后台,也可以在状态栏上显示我的应用程序徽标。 (提供VPN和位置服务的应用程序有时会这样做)。 这些是我们在状态栏上看到的常见图标,但我想自己制作并将其放在那里,比如说红色圆圈或任何图像。

Related of "如何将图标(图像,徽标..)添加到状态栏"

对于iOS,无法在状态栏中添加任何自定义图标,Apple不允许这样做。

对于Android,您应该使用通知和通知管理器。 只需在java中编写一个本机模块,在启动应用程序时执行此操作。 React Native允许你调用用Java编写的Native Module,看看这里https://facebook.github.io/react-native/docs/native-modules-android.html

您还应该阅读此通知如何在应用程序运行时在状态栏中显示图标,包括在后台?

您无法更改状态栏。 Apple仅允许您更改状态栏的外观。 对于ios应用程序,可能会在全球范围内更改外观。

打开由ReactNative生成的.xcproj文件,并:

  1. 在Info.plist中,您需要将“查看基于控制器的状态栏外观”设置为布尔值。
  2. 将它设置为NO设置AppDelegate中的样式在didFinishLaunchingWithOptions函数上添加此代码: UIApplication.sharedApplication().setStatusBarStyle(UIStatusBarStyle.LightContent, animated: true)

Android状态栏中有2种图标。

一种是来自framework-res.apk并提取到/ system / framework的系统图标,如果没有在设备上拥有某些提升权限并挂载系统映像读/写,则无法更改这些图标。

另一种是之前提到的通知图标。 对于iOS,你真的无法改变太多。

您的屏幕截图显示了这两种types,并且您希望将图标放在网络栏图标旁边,但这些是系统图标(在Android上)

这是一个插件 ,处理通知(和通知图标)两个平台和包装一切,易于使用与您可以在这里findiOS通知的示例本机代码和Android: