当前位置:   article > 正文

在Windows下搭建React Native Android开发环境_react-native/libraries

react-native/libraries

一、安装JDK
二、安装Android SDK

三、安装C++环境
网上很多以前的资料(其实就是那一份)都说安装Visual Studio 2013或2015,编译node.js的C++模块时需要用到。这里我没安装,我的系统是win7,好像win7自带了编译C++的工具,然后之前安装过了c-free这个软件,又考虑到电脑承受能力,所以没就安装大的软件。等后面有问题了再说。事实在后面没有出现这方面的问题。

四、安装node.js
从官网下载node.js的官方4.1版本或更高版本。安装好后在命令行下执行node -v命令是否成功,成功会显示版本信息。这个本人之前已安装。
安装react-native
命令行下运行命令

npm install -g react-native-cli

五、初始化项目
在电脑上任何一个地方创建一个目录, 例如我在E盘创建一个MyProject的目录,然后命令行下进入到MyProject目录,执行命令:

react-native init MyProject

这里需要耐心等待几分钟,使网络情况而定。这里MyProject是随便取的,执行上面的命令后,在我的MyProject目录下生成了MyProject目录,这个目录包含了整个项目的文件,初始化成功后在命令行最后会显示下面的信息

六、运行package
上面init之后,我们可以运行react-native run-android命令,如果成功的话,可以将应用安装到真机或模拟器,我这里使用的是真机。但是安装之后可能什么也显示不了,还会有一些错误信息。这是由于手机获取不到显示view的文件,那么这时候我们就需要运行package.在项目目录,输入react-native start并执行,等待一段时间:

七、运行项目
刚刚运行package的命令行不要关闭,重新启动一个新的命令行,
进入项目目录,输入react-native run-android命令并执行,这个过程需要几分钟的时间

在这个过程中可能会出现一些问题,导致build失败:
1. 你没有配置ANDROID_HOME,需要再系统变量中加入这个,指到sdk目录。
2. android sdk的版本太旧了,最低需要android-23
3. 需要新的Android Support Repository
成功会显示:

这里的IP是电脑的IP,不知道的可以在命令行中输入ipconfig进行查询,端口号固定8081。这里我们应该想到为什么需要第六步的原因。
设置完成后,回到空白页面,再次摇一摇手机,选择Reload JS,程序就运行起来,出现Welcome to React Native!

八、欢迎页
最后的稍稍分析一下欢迎也是如何显示出来的。
在项目目录MyProject目录下有个文件app.js文件,打开这个文件,会有一段代码:

  1. /**
  2. * Sample React Native App
  3. * https://github.com/facebook/react-native
  4. *
  5. * @format
  6. * @flow strict-local
  7. */
  8. import React from 'react';
  9. import {
  10. SafeAreaView,
  11. StyleSheet,
  12. ScrollView,
  13. View,
  14. Text,
  15. StatusBar,
  16. } from 'react-native';
  17. import {
  18. Header,
  19. LearnMoreLinks,
  20. Colors,
  21. DebugInstructions,
  22. ReloadInstructions,
  23. } from 'react-native/Libraries/NewAppScreen';
  24. const App: () => React$Node = () => {
  25. return (
  26. <>
  27. <StatusBar barStyle="dark-content" />
  28. <SafeAreaView>
  29. <ScrollView
  30. contentInsetAdjustmentBehavior="automatic"
  31. style={styles.scrollView}>
  32. <Header />
  33. {global.HermesInternal == null ? null : (
  34. <View style={styles.engine}>
  35. <Text style={styles.footer}>Engine: Hermes</Text>
  36. </View>
  37. )}
  38. <View style={styles.body}>
  39. <View style={styles.sectionContainer}>
  40. <Text style={styles.sectionTitle}>Step One</Text>
  41. <Text style={styles.sectionDescription}>
  42. Edit <Text style={styles.highlight}>App.js</Text> to change this
  43. screen and then come back to see your edits.
  44. </Text>
  45. </View>
  46. <View style={styles.sectionContainer}>
  47. <Text style={styles.sectionTitle}>See Your Changes</Text>
  48. <Text style={styles.sectionDescription}>
  49. <ReloadInstructions />
  50. </Text>
  51. </View>
  52. <View style={styles.sectionContainer}>
  53. <Text style={styles.sectionTitle}>Debug</Text>
  54. <Text style={styles.sectionDescription}>
  55. <DebugInstructions />
  56. </Text>
  57. </View>
  58. <View style={styles.sectionContainer}>
  59. <Text style={styles.sectionTitle}>Learn More</Text>
  60. <Text style={styles.sectionDescription}>
  61. Read the docs to discover what to do next:
  62. </Text>
  63. </View>
  64. <LearnMoreLinks />
  65. </View>
  66. </ScrollView>
  67. </SafeAreaView>
  68. </>
  69. );
  70. };
  71. const styles = StyleSheet.create({
  72. scrollView: {
  73. backgroundColor: Colors.lighter,
  74. },
  75. engine: {
  76. position: 'absolute',
  77. right: 0,
  78. },
  79. body: {
  80. backgroundColor: Colors.white,
  81. },
  82. sectionContainer: {
  83. marginTop: 32,
  84. paddingHorizontal: 24,
  85. },
  86. sectionTitle: {
  87. fontSize: 24,
  88. fontWeight: '600',
  89. color: Colors.black,
  90. },
  91. sectionDescription: {
  92. marginTop: 8,
  93. fontSize: 18,
  94. fontWeight: '400',
  95. color: Colors.dark,
  96. },
  97. highlight: {
  98. fontWeight: '700',
  99. },
  100. footer: {
  101. color: Colors.dark,
  102. fontSize: 12,
  103. fontWeight: '600',
  104. padding: 4,
  105. paddingRight: 12,
  106. textAlign: 'right',
  107. },
  108. });
  109. export default App;

在android目录 app下一直找到MainActivity.java文件,里面有个方法:

  1. package com.myproject;
  2. import com.facebook.react.ReactActivity;
  3. public class MainActivity extends ReactActivity {
  4. /**
  5. * Returns the name of the main component registered from JavaScript. This is used to schedule
  6. * rendering of the component.
  7. */
  8. @Override
  9. protected String getMainComponentName() {
  10. return "MyProject";
  11. }
  12. }

EX1:

6.运行项目

上面所有的工具和依赖都安装好了之后,就可以新建一个 React Native 项目了。

  1. react-native init hello
  2. cd hello
  3. react-native run-android

然后在真机就可以看到效果了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/202524
推荐阅读
相关标签
  

闽ICP备14008679号