做React Native一段时间后,对于React Native的发布有一些了解,原本的方法都是在本地直接生成APK文件的,具体可以参考《react native 生成APK

因为需要将这个React Native的应用交给其他同事,但其他的同事暂时还未完全掌握到React Native,所以在发布这一块儿,需要使用一个工具帮助打包应用,在网上找了一些资料,目前做的比较好的就是微软公司的App Center

关于App Center(它是一个收费的云应用,在一定的限额内,应该还是免费的):https://azure.microsoft.com/en-us/services/app-center/ 中文(https://azure.microsoft.com/zh-cn/services/app-center/

本文章我只使用App Center的Build功能,只是将应用打包成APK即可,不会使用App Center的完整功能。

1.首先,在github创建一个空的项目ReactNativeAppForAppCenter,生成的地址就是,https://github.com/ChenWes/ReactNativeAppForAppCenter

2.另外,创建一个项目,使用命令创建一个React Native项目

react-native init ReactNativeAppForAppCenter --version 0.56.
cd ReactNativeAppForAppCenter

将项目放至github中

git init
git add .
git commit -m "project init" git remote add origin https://github.com/ChenWes/ReactNativeAppForAppCenter
git push origin master #此处应该需要输入github的用户名及口令,验证成功后可以将代码同步至github上

3.最后,还需要生成一个keystore,关于如何生成keystore,可以参考react native官方文档:https://facebook.github.io/react-native/docs/signed-apk-android


再接下来配置App Center

登陆至App Center中,选择项目中,点击“Add new app”按钮,可以创建一个新的应用

在弹出的“Add new app”窗口中选择“Android”系统和"React Native"平台,输入应用名称,点击"Add new app"按钮,即会创建一个新应用

点击应用左侧的Build选项,并选择github创建我们的代码仓库

选择刚才的github仓库

关联了github代码仓库后的应用,当鼠标移动到其中一个branch上时,会显示一个齿轮的图标,点击后,可以能项目进行配置

默认的设置如下,需要点击Sign builds,然后

在这里,需要选择一个生成的keystore,输入对应的密码,点击右侧的"Save"按钮,配置就生效了,关于如何生成keystore,可以参考react native官方文档:https://facebook.github.io/react-native/docs/signed-apk-android

当保存了配置后,点击选择当前Branch名master,进入以下界面,点击"Build now"按钮即可,接下来需要等待服务器分配机器去build项目

在build的同时也可以看到编译的日志信息,编译完成后,可以看到右上角有一个“Download"按钮,可以直接下载压缩文件,解压后,会得到一个app-release.apk文件

App Center编译React Native平台Android应用的更多相关文章

  1. React Native For Android 架构初探

    版权声明:本文由王少鸣原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/171 来源:腾云阁 https://www.qclo ...

  2. 利用 Create React Native App 快速创建 React Native 应用

    本文介绍的 Create-React-Native-App 是非常 Awesome 的工具,而其背后的 Expo 整个平台也让笔者感觉非常的不错.笔者目前公司是采用 APICloud 进行移动应用开发 ...

  3. React Native for Android 学习

    前言 Facebook 在2015.9.15发布了 React Native for Android,把 JavaScript 开发技术扩展到了移动Android平台.基于React的React Na ...

  4. 【React Native开发】React Native For Android环境配置以及第一个实例(1)

    年9月15日也公布了ReactNative for Android,尽管Android版本号的项目公布比較迟,可是也没有阻挡了广大开发人员的热情.能够这样讲在2015年移动平台市场上有两个方向技术研究 ...

  5. React native 之android的图标和启动图片

    哎哎呀呀,上篇说到了react native的IOS的图标和启动图片的设置,其实最主要的是尺寸!相应的尺寸设定好了以后就不会报错了! ok~这篇说的是React native的android的图标和启 ...

  6. React Native for android 项目驱动教程

    第一节 搭建开发环境 第二节 显示页面标题 第三节 实现页面布局 # React native是什么? React Native,是颠覆性的移动开发技术.它使用js开发,又是原生应用,不同于Hybri ...

  7. react native 之 Android物理返回键

    基本用法 根据文档,安卓back键的处理主要就是一个事件监听: BackAndroid.addEventListener('hardwareBackPress', this.onBackPressed ...

  8. 混合开发的大趋势之一React Native与Android联调

    转载请注明出处:王亟亟的大牛之路 先安利,有空我都会更,看到的好东西都会放进来:https://github.com/ddwhan0123/Useful-Open-Source-Android 公司某 ...

  9. React Native for Android应用名及图标修改

    应用开发完了,总不能顶着MyProject和小机器人图标就发布了吧?在发布之前,有多处需要修改的地方.今天我们来全面的看一下 应用ID 俗称PackageName,或APP ID.注意,在gradle ...

随机推荐

  1. POJ 3254 状态压缩 DP

    B - Corn Fields Crawling in process... Crawling failed Time Limit:2000MS     Memory Limit:65536KB    ...

  2. git--------------bug修复流程

    当前所有分支: master:主分支 test:测试分支 zs:开发人员分支 ls:开发人员分支 场景:zs正在开发A模块功能,线上环境产生了一个bug. zs的操作流程(当前分支为zs分支): 1. ...

  3. [技巧篇]08.Struts2拦截器中获取Servlet API方法

    讲课中遇到的解决Session拦截器的后腿问题,还有如何在拦截器中获取Servlet API,这里留一个备注,方便学生查找

  4. C++11新特性,对象移动,右值引用,移动构造函数

    C++11新标准中的一个最主要的特性就是移动而非拷贝对象的能力.接下来简要介绍一下相关概念. 右值引用 所谓右值引用就是必须绑定到右值的引用.通过 && 而不是 & 来获得右值 ...

  5. 【C++ STL】Vector

    1.结构 vector模塑出一个动态数组,因此,它本身是“将元素置于动态数组中加以管理”的一个抽象概念.vector将其元素复制到内部的dynamic array中.元素之间总存在某种顺序,所以vec ...

  6. js获取屏幕高度宽度

    获取各种屏幕的宽度和高度Javascript: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽 ...

  7. eclipse+EGIT+GitHub

    下载EGIT:http://wiki.eclipse.org/EGit/FAQ#Where_can_I_find_older_releases_of_EGit.3F 1.下载eclipse版本对应的E ...

  8. Edgware Feign hystrix-dashboard

    相关依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring ...

  9. hasOwnProperty()方法与in操作符

    1.hasOwnProperty() 该方法检测属性存在于实例,还是存在于原型,对于存在于实例中的属性则返回true 2.in 使用该操作符时只要通过对象能够访问到的属性都会返回true

  10. Python爬虫—破解JS加密的Cookie

    前言 在GitHub上维护了一个代理池的项目,代理来源是抓取一些免费的代理发布网站.上午有个小哥告诉我说有个代理抓取接口不能用了,返回状态521.抱着帮人解决问题的心态去跑了一遍代码.发现果真是这样. ...