React原生深层链接会破坏Android中的UI

时间:2017-10-25 09:32:30

标签: android react-native deep-linking

所以我在react native中尝试了深层链接,它是用户使用Web视图登录的。 流程是这样的:

  1. 用户点击登录按钮。
  2. 浏览器显示,用户进行登录活动。
  3. 用户登录后,我使用深层链接将用户重定向回我的应用
  4. 问题是我的应用程序重新打开后,状态栏不再是半透明的

    这里是深层链接前的图片: classmap option in documentation

    此处是深层链接后的图片: before deep linking

    这里是使状态栏半透明的代码:

    <View style={styles.container}>
      <RootNavigation />
      {Platform.OS === 'android' &&
        <StatusBar
          translucent
          backgroundColor={Token.color.background.statusbar.rgb} />}
      {Platform.OS === 'ios' && <StatusBar barStyle='default' />}
    </View>
    

    这里是我使用的依赖项,也许它可以帮助:

    "axios": "^0.17.0",
    "lodash": "^4.17.4",
    "prop-types": "^15.6.0",
    "react": "16.0.0-beta.5",
    "react-native": "0.49.3",
    "react-native-fbsdk": "^0.6.3",
    "react-native-svg": "^5.4.2",
    "react-navigation": "^1.0.0-beta.15",
    "react-redux": "^5.0.6",
    "redux": "^3.7.2",
    "redux-thunk": "^2.2.0"
    

1 个答案:

答案 0 :(得分:0)

可能的原因是Android应用程序的入口点不同。您需要确保您的状态栏半透明组件包含在此入口点中。 要复制此行为并在Android Studio中测试打开的项目,然后单击运行->编辑配置。并将URL的启动选项更改为URL,并将URL更新为以下内容-myapp:// article / 13。这将帮助您调试Android模拟器。

在“在Android上测试深度链接”部分-> https://medium.com/@abhisheknalwaya/react-native-deep-linking-for-ios-and-android-d33abfba7ef3

中查看更多详细信息。