Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
您是否需要使用React Native为Android执行手动链接步骤?_Android_Reactjs_React Native_Autolink - Fatal编程技术网

您是否需要使用React Native为Android执行手动链接步骤?

您是否需要使用React Native为Android执行手动链接步骤?,android,reactjs,react-native,autolink,Android,Reactjs,React Native,Autolink,当我添加第三方组件来响应本机应用程序时,例如,它经常说,由于自动链接,您不必遵循手动链接步骤。对于Android,我注意到在手动链接步骤中添加的任何代码(例如将代码添加到MainApplication.java)都不会自动添加 有人能解释一下这是怎么回事吗?尽管自动链接,我是否需要为Android执行手动链接步骤?对于Android,它不需要链接。由于react native 0.6,自动链接不会直接添加intMainApplication.java 在android settings.grad

当我添加第三方组件来响应本机应用程序时,例如,它经常说,由于自动链接,您不必遵循手动链接步骤。对于Android,我注意到在手动链接步骤中添加的任何代码(例如将代码添加到
MainApplication.java
)都不会自动添加


有人能解释一下这是怎么回事吗?尽管自动链接,我是否需要为Android执行手动链接步骤?

对于Android,它不需要链接。由于react native 0.6,自动链接不会直接添加int
MainApplication.java

在android settings.gradle中,您可以看到以下代码:

apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); 
native_modules.gradle
中,它将添加包。代码很复杂。我读了几天书,只知道一点。但我们可以从名字和评论中得到答案

def generatedFileName = "PackageList.java"
def generatedFilePackage = "com.facebook.react"
...
  /**
   * Include the react native modules android projects and specify their project directory
   */
  void addReactNativeModuleProjects(DefaultSettings defaultSettings) 

  //here are add the package list
  /**
   * Adds the react native modules as dependencies to the users `app` project
   */
  void addReactNativeModuleDependencies(Project appProject)

  /**
   * Code-gen a java file with all the detected ReactNativePackage instances automatically added
   *
   * @param outputDir
   * @param generatedFileName
   * @param generatedFileContentsTemplate
   */
  void generatePackagesFile(File outputDir, String generatedFileName, String 
  generatedFileContentsTemplate)

最后,我们只需要知道我们不需要链接

你好,勒诺罗德,谢谢你的回复。我从中了解到,以前我们在
MainApplication.java
等中添加代码时,应用程序构建时会查看这些文件,并添加代码来构建链接模块的文件。通过自动链接,
native_modules.gradle
中的代码将代码添加到构建文件中,链接模块,因此它不需要任何来自
main应用程序.java
等的代码来完成。我理解得对吗?如果是这样的话,可能有一些模块这种自动链接不起作用,因此我们必须在
MainApplication.java
等中手动链接。对吗?是的,一些模块自动链接不支持,我们将像以前那样做。我们必须手动添加。非常感谢,这正是我想要的。