反应导航(使用Expo)-MainActivity.java文件的位置?

时间:2019-01-05 10:53:38

标签: android react-native navigation react-navigation

我正在阅读React Navigation文档。

React Navgation - Getting Started指令中,它表示  “ 要完成Android的react-native-gesture-handler的安装” ,我需要编辑MainActivity.java文件。
 但是,我的项目中没有任何文件,也没有与此文件相关的任何其他类似目录(./android)。

我使用expo-cli创建了项目,尤其是:

# To create a new React Native project  
$ expo init project-name


# And to run the App in Expo  
$ expo start

我想知道是否必须创建一个构建以及如何完成构建,以使Expo能够创建供Android和iOS构建使用的文件,还是我还缺少其他东西?

1 个答案:

答案 0 :(得分:3)

博览会

在使用Expo创建应用程序时,您将不会有一个android文件夹,因为这些文件夹是从您那里抽象出来的。

如果希望使用需要您编辑本机代码的依赖项,则需要弹出应用程序。 https://docs.expo.io/versions/latest/expokit/eject

从命令行运行expo弹出,它将为您构建必要的ios和android文件夹。但是,如果退出您的应用程序,则会有很多后果。您应该仔细阅读以上链接。

反应导航

但是,正如Expo建议使用react-navigation一样,您不需要安装react-native-gesture-handler,因为Expo中已经安装了yarn add react-navigation@^3.0.0 https://reactnavigation.org/blog/2018/11/17/react-navigation-3.0.html#installation

  

首先,使用您喜欢的软件包管理器安装该库:

     

react-native-gesture-handler

     

接下来,安装react-native-gesture-handler。如果您使用的是Expo,则无需在此处执行任何操作,因为它已包含在SDK中。

它甚至在安装说明页面https://reactnavigation.org/docs/en/getting-started.html#installation

中提到了它
  

接下来,安装react-native-gesture-handler。如果您使用的是世博会   无需执行任何操作,它已包含在SDK中。否则:

react-native-gesture-handler

类似地检查Student的文档中是否显示:

  

手势处理程序已经是Expo的一部分,没有多余的内容   需要配置。但是,请考虑Expo SDK团队可能   需要一些时间来包含该库的最新版本-因此,Expo   可能并非总是一开始就支持我们所有最新功能   

https://kmagiera.github.io/react-native-gesture-handler/docs/getting-started.html#with-expo-https-expoio

使用Expo创建建筑

这里没有必要重复步骤以使用Expo创建构建,它在Expo文档中有相当详细的说明,可以在https://docs.expo.io/versions/latest/distribution/building-standalone-apps

中找到。