开始玩 React Native 了

本贴最后更新于 2694 天前,其中的信息可能已经时移世异

React Native - 不会
iOS 开发 - 不会
Android 开发 - 不会

好吧,一切从 0 开始

  1. 首先入门安装环境 getting started
  2. Hello Word
  3. 据说要用 redux, 傻傻分不清楚 redux-router, react-router, react-router-redux。最终还是放弃了,直接去看大神的代码好了
  4. 开始照葫芦画瓢,不错不错,画出了成就感
  5. iOS 一切都还顺利,只是工程是已经建好的,down 下来的时候 shell 脚本需要 +x 一下。都还好,有错误提示,照着弄就好了。用 RN 命令和 Xcode 都非常的顺畅。
  6. 好了,接下来就是 Android 了。react-native run-android 至今都还无法享用。 蓝瘦,香菇 ~~~
  • 各种被强,从百度云盘上下载了 android-sdk-macosx,按照 Readme 弄好后,AS(Android Studio) 终于正常了,立马配置代理。mirrors.neusoft.edu.cn:80

  • 然后开始各种下载,门外汉一下就懵了。完全不知道该选什么,就只能照着 第一条 的入门教程随便选择了下。然后下载就比较慢啦 🐌

  • 最惨的是 Android 报的各种错,无从下手,只能一步一步 google 啦。什么 RN 所依赖的 buildToolsVersion 版本不一致呀;什么 RN 依赖的配置有问题呀;什么 Map 的源码要改一下啦;什么地图无法加载呀;什么需要摇一摇的弹出层需要权限呀;什么需要下载其他依赖呀。。。

  • OK,终于可以 run 啦。手机上跑起来的时候,都激动的想哭了

  • 接下来被告知要嵌入到 APP 里面。不是说好可以发单品的么?哎,又要开始继续折腾了

  • 一开始没看懂 app 集成,搜了其他文章了解了下,终于明白了,开始把需要嵌入到的工程下载下来。然后按步骤实施

  • 实施结束,整个工程居然报错 476 个,然后还可以在手机上跑起来。完全不解, RN 的时候,有半个错都不要想跑起来

  • 跑起来以后要找个按钮,点击了可以跳转到我们的界面。但是但是,这怎么写呢?完全不懂呀,心里好怕怕。出去溜达了一圈,开工。不就是个点击么。大概就是这样了 Intent intent = new Intent(); intent.setClass(HomeActivity.this, MyReactActivity.class); 完全不懂,先照着弄吧

  • 好吧,再次 run,oh,no。 闪退 😱 以前总是听测试说,你的 APP 又闪退了。不明白,为什么这么不耐操,一点点就闪退

  • 来来来, debug 走起。查了问题,据说是要加一下下面这个东西。天哪,完全不知道这是什么一个鬼。然后再次 run 的时候就需要下载 Android SDK,我不是已经下载过好几个了么?哎,我就在等待的时间写了这篇文章,口水话都写好了,你却还没下载完 ~~~

    ndk {
          abiFilters "armeabi-v7a", "x86"
      }
    

等一切结束后,我一定要让 react-native run-android 这个命令可以运行起来

  • 调试
    5 引用 • 35 回帖
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    84 引用 • 139 回帖
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    333 引用 • 323 回帖 • 52 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • mainlove

    貌似 react 只是视图构建(我怎么感觉和用 gwt 写页面一样),路由什么的还是需要额外的 js
    js 真是搞得太复杂了

    1 回复
  • 其他回帖
  • Vanessa

    @participants 节奏跟上没?准备开始进军热部署了

    couldn't find DSO to load: libreactnativejni.so 这个问题纠缠了 2 晚上,终于搞定了。

    吐槽一下破解过程吧:

    1. 先把原生 APP 项目 check 下来,按照步骤一步一步来。然后就 google 报错问题,说是 32 位和 64 位的问题,一顿乱修,还是错。回家睡觉

    2. 第二天新建了一个原生 APP 项目。好顺利,居然嵌入成功了。

    3. 无解了,找到 Android 开发小伙伴,他也一步一步来,居然成功了,还是只能怀疑自己

    4. 回家后把第一步修改过的 APP 项目代码 revert 了,重头来,还是不行

    5. 把 build.gradle 删了,把第二部的 copy 过来,修修改改,居然成功了

    6. diff 对比 build.gradle,这是个什么鬼,谁出来解释一下,看不懂呀?

       splits {
         abi {
           enable true
           reset()
           include "armeabi"
       	universalApk false
       	}
      }
      

    归根到底,还是自己太小白,啥都不懂,耽误了这么多时间 ~~~

  • someone

    splits 是用于对不同的分辨率或者不同的处理器架构构建不同的apk文件
    include "armeabi"只包含了armeabi架构。所以想问下你的手机或者虚拟机是x86架构吗?

    1 回复
  • Vanessa

    先跟上我的节奏哦,还在处理 UncaughtException detected: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libreactnativejni.so 这个错误呢

  • 查看全部回帖
Vanessa
我们终此一生,就是要摆脱他人的期待,找到真正的自己。 昆明

推荐标签 标签

  • CodeMirror
    1 引用 • 2 回帖 • 123 关注
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    11 引用 • 5 回帖 • 573 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 594 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 48 关注
  • FlowUs

    FlowUs.息流 个人及团队的新一代生产力工具。

    让复杂的信息管理更轻松、自由、充满创意。

    1 引用 • 3 关注
  • IDEA

    IDEA 全称 IntelliJ IDEA,是一款 Java 语言开发的集成环境,在业界被公认为最好的 Java 开发工具之一。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。

    180 引用 • 400 回帖
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    77 引用 • 1739 回帖 • 1 关注
  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    90 引用 • 59 回帖 • 4 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 46 关注
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    83 引用 • 165 回帖 • 33 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    122 引用 • 73 回帖
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖 • 3 关注
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    19259 引用 • 72604 回帖
  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    207 引用 • 2031 回帖
  • 智能合约

    智能合约(Smart contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约概念于 1994 年由 Nick Szabo 首次提出。

    1 引用 • 11 回帖 • 11 关注
  • Swift

    Swift 是苹果于 2014 年 WWDC(苹果开发者大会)发布的开发语言,可与 Objective-C 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。

    34 引用 • 37 回帖 • 500 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    15 引用 • 7 回帖
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    228 引用 • 1450 回帖
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 90 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 684 关注
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    86 引用 • 1203 回帖 • 451 关注
  • 开源中国

    开源中国是目前中国最大的开源技术社区。传播开源的理念,推广开源项目,为 IT 开发者提供了一个发现、使用、并交流开源技术的平台。目前开源中国社区已收录超过两万款开源软件。

    7 引用 • 86 回帖
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 51 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 635 关注