zoukankan      html  css  js  c++  java
  • react-native —— 在Windows下搭建React Native Android开发环境

    在Windows下搭建React Native Android开发环境

    前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的《在Windows下搭建React Native Android开发环境》,在开发者头条的抓取内容可以看到一部分,由于一直在休假就没有仔细学习,今天再次回顾我的收藏时却发现链接打不开(其实当时也有发现,只是这么说一下罢了)。于是,你应该知道怎么做的,最好的工具莫过于搜索而不是一味的抱怨说只能在mac上玩。之前因为react native ios肯定是只能在mac上玩,Android就不那么必须了。好了,我来开始搭建一下环境试试。

    React Native Android

    安装JDK

    Java官网之JDK下载列表下载JDK并安装。请注意选择x86还是x64版本。我在这里直接接受了 @天地之灵_邓鋆 的推荐将JDK的bin目录加入到了系统PATH环境变量。注意:下载链接不能直接使用,需要先接受协议(这里有存入cookies),可以通过Java官网之JDK下载列表下载JDK。

    设置环境变量PATH:jdk的位置。例如:(PATH => D:Program FilesJavajdk1.8.0_60in)

    安装Android SDK

    单独安装Android SDK,在墙的环境下,为了速度我选择了使用androiddevtools

    设置环境变量ANDROID_HOME:Android SDK Manager的位置 例如:(PATH => D:Program FilesAndroid SDK Tools)
    设置环境变量PATH:例如:(PATH => %ANDROID_HOME% ools;%ANDROID_HOME%platform-tools)

    安装React-native-cli

    npm install -g react-native-cli
    

    初始化项目

    react-native init reactNative
    

    报错了

    This will walk you through creating a new React Native project in d:wwwproject
    
    eactNative
    events.js:85
          throw er; // Unhandled 'error' event
                ^
    Error: spawn npm ENOENT
        at exports._errnoException (util.js:746:11)
        at Process.ChildProcess._handle.onexit (child_process.js:1053:32)
        at child_process.js:1144:20
        at process._tickCallback (node.js:355:11)
        at Function.Module.runMain (module.js:503:11)
        at startup (node.js:129:16)
        at node.js:814:3
    

    windows下执行到这里就会报错,原因是npm在windows下的bug(来源于参考资料)。解决办法,直接clone项目主分支master。

    git clone https://github.com/facebook/react-native.git
    cd react-native/react-native-cli && npm install -g
    

    接下来就可以初始化项目了

    react-native init reactNative
    

    运行packager

    这里最新的版本已经修复了 @天地之灵_邓鋆 提到的BUG。

    在工程目录下运行

    node node_modules/react-native/packager/packager.js
    

    这条命令会看见程序开启了8081端口,并且运行[node node_modules/react-native/packager/packager.js](node node_modules/react-native/packager/packager.js)可以看见项目代码输出。

    Run android app

    cd reactNative
    react-native run-android
    

    如果没有安装安卓模拟器,这里可以直接使用真机安装测试。
    这个过程很漫长,等等等……

    安卓调试

    目前Windows下无法自动打开chrome进行调试,所以手动打开chrome,访问如下地址:http://localhost:8081/debugger-ui 即可。

    报错了

    FAILURE: Build failed with an exception.
    
    * What went wrong:
    A problem occurred configuring project ':app'.
    > failed to find target with hash string 'android-23' in: D:Program FilesAndro
    id SDK Tools
    
    * Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug
    option to get more log output.
    
    BUILD FAILED
    
    Total time: 10 mins 42.463 secs
    Could not install the app on the device, see the error above.
    

    解决办法就是安装Android-23,对于上一篇关于ionic的文是需要Android-22。

    又报错了

    Could not find com.android.support:appcompat-v7:版本号.
    

    安装Android Support LibrariesAndroid Support Repository

    build成功,安装上apk后界面红了


    解决办法

    选择菜单:Dev settings

    选择项:Debug server host for device

    设置编译环境PC的IP地址,例如:192.168.25.121

    确保手机与编译环境在同一WIFI环境下(IP段相同),packager在运行状态下,重启APP


    初始化欢迎界面就出来了,后面继续学习中……

    一波三折

    这个hello world过程一波三折,主要归结为以下几点:

    1. 墙。我使用的是ss,但是这个过程中还是会有问题,主要是家用环境下。这个关系到npm的使用,这个可以使用淘宝镜像。Android环境搭建,这个我是在Androiddevtools上找的方法,公司环境下轻松安装,家用环境到现在还是没有搞定。
    2. bug。这个过程中本身就有一些问题,关于node版本的问题(手动升级4.1.1),react-native版本的问题(手动clone 0.12-rc)。
    3. 如果以上问题解决了,我想这个过程还是很愉快的。只想吐槽一下学习不容易啊。接下来主要的内容就是学习,同时学习ionic与react-native其实就是表层在同时在学习angular与react,至于深层次的我还不懂,暂时也不必细节。学知识,我是先学会用,再学习为什么要这么用,你呢?交流很关键,总结很重要。不是随时都有时间来重新学习,珍惜眼下充裕的时间,学习,学习,学习。

    参考资料

    原文参考

  • 相关阅读:
    update condition 字段报错
    Xshell连接Linux服务器总掉线
    sleep php函数
    ubuntu 16.04 镜像下载
    多线程Parallel和Task
    AngularJS 时间格式化
    正则表达式
    手机抓包
    内存泄漏
    字符集编码和排列规则
  • 原文地址:https://www.cnblogs.com/unofficial/p/4843734.html
Copyright © 2011-2022 走看看