开始玩 React Native 了

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

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 回帖 • 1 关注
  • Android

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

    334 引用 • 323 回帖 • 16 关注

相关帖子

欢迎来到这里!

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

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

    可以继承到其他 app 里面了。最近忙,进度有点慢了。

  • 其他回帖
  • someone

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

    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
       	}
      }
      

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

  • Vanessa

    事件,请求什么的都可以在里面写。都是组件化,一小点一小点的

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

推荐标签 标签

  • Jenkins

    Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。

    51 引用 • 37 回帖 • 1 关注
  • V2EX

    V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。

    17 引用 • 236 回帖 • 373 关注
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 598 关注
  • CAP

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

    11 引用 • 5 回帖 • 580 关注
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 428 关注
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    536 引用 • 672 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 1 关注
  • SEO

    发布对别人有帮助的原创内容是最好的 SEO 方式。

    35 引用 • 200 回帖 • 26 关注
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    62 引用 • 289 回帖
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 617 关注
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    262 引用 • 664 回帖 • 1 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    165 引用 • 407 回帖 • 509 关注
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖 • 1 关注
  • Maven

    Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

    186 引用 • 318 回帖 • 331 关注
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 615 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 520 关注
  • Latke

    Latke 是一款以 JSON 为主的 Java Web 框架。

    70 引用 • 533 回帖 • 733 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖 • 4 关注
  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 148 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1056 回帖
  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    85 引用 • 122 回帖 • 619 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖 • 1 关注
  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    75 引用 • 258 回帖 • 630 关注
  • 创造

    你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!

    175 引用 • 994 回帖
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 16 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    77 引用 • 37 回帖