部署/发布使用 React Native 制作的 Android 应用

Posted

技术标签:

【中文标题】部署/发布使用 React Native 制作的 Android 应用【英文标题】:Deploy/Publish Android app made with React Native 【发布时间】:2015-09-25 13:29:26 【问题描述】:

如何将使用 React Native 制作的 android 应用部署和发布到 Google Play?

【问题讨论】:

【参考方案1】:

步骤:

    创建一个密钥库文件并将其复制到android/app keytool -genkey -v -keystore mykeystore.keystore -alias mykeyalias -keyalg RSA -keysize 2048 -validity 10000 android/gradle.properties中设置你的gradle变量 MYAPP_RELEASE_STORE_FILE=mykeystore.keystore MYAPP_RELEASE_KEY_ALIAS=mykeyalias MYAPP_RELEASE_STORE_PASSWORD=***** MYAPP_RELEASE_KEY_PASSWORD=***** 将签名配置添加到android/app/build.gradle defaultConfig ... signingConfigs release storeFile file(MYAPP_RELEASE_STORE_FILE) storePassword MYAPP_RELEASE_STORE_PASSWORD keyAlias MYAPP_RELEASE_KEY_ALIAS keyPassword MYAPP_RELEASE_KEY_PASSWORD buildTypes release ... signingConfig signingConfigs.release 生成您的发行版 APK cd android && ./gradlew assembleRelease android/app/build/outputs/apk/app-release.apk 上传到 Google Play

资源:React Native Publishing an Android App

【讨论】:

步骤 2 中,我们是否在 .gradle 中创建了一个新的 gradle.properties 文件,因为 gradle.properties 根文件夹中已经存在一个 gradle.properties 文件。谢谢 您应该在 步骤 2 使用根 android 文件夹中的 gradle.properties 文件,并且不应创建新的 gradle.properties 文件。自从我最初写这个答案以来,这个文件的位置已经改变。对困惑感到抱歉。我会更新我的答案。【参考方案2】:

您要做的是创建一个 javascript 包,然后使用 gradle 编译应用程序。目前(react-native v0.11)bundle command 仅支持生成 ios 包。

我找到了如何获取 android 包并生成 APK 的说明。见https://github.com/facebook/react-native/issues/2712或https://github.com/facebook/react-native/issues/2743#issuecomment-140697340

希望这会有所帮助。

-- 截至 2016 年 5 月 25 日编辑(v0.26.1 稳定)

目前,生成生产 APK 非常容易。

cd android ./gradlew assembleRelease

现在您应该有一个正式版 APK。您应该能够签署 APK http://facebook.github.io/react-native/docs/signed-apk-android.html#content

【讨论】:

【参考方案3】:

React Native 在市场上非常新,android 的唯一指南是它的官方指南

https://facebook.github.io/react-native/docs/android-setup.html

人们需要时间来学习和编写教程。

按照指南操作后,您可以轻松创建和运行应用程序。但到目前为止,还没有正式提到在 Play Store 中发布。稍等片刻,他们很快就会告诉你的。

【讨论】:

在 play store 中发布不是 react-native 特定的。一旦你有一个签名的 APK(RN 文档有一个指南),它与任何其他 Android 应用程序的过程相同。【参考方案4】:

官方文档已更新。看这里: http://facebook.github.io/react-native/docs/signed-apk-android.html#content

【讨论】:

【参考方案5】:

由于 Fackbook 尚未发布正式的 Android 部署方法,请尝试Microsoft Code push 部署您的 Android 项目。

【讨论】:

【参考方案6】:

我和一些同事一起编写了一个工具来帮助设置 React Native 以进行部署。它设置了多个环境的 Fastlane,并集中了多个配置文件。

它由多个生成器组成,但您最感兴趣的是rn-toolbox:fastlanern-toolbox:assets(您需要这些图标才能发布)。

我们总结了here的内容,你可以找到工具on npm

您仍然需要一个 Apple 开发者帐户和一个 Android 开发者帐户,但这应该可以帮助您快速上手。

【讨论】:

以上是关于部署/发布使用 React Native 制作的 Android 应用的主要内容,如果未能解决你的问题,请参考以下文章

使用 React-Native 制作多行扩展 TextInput

React Native:如何使用 expo 在 webview 中制作全屏 youtube 嵌入视频(没有 react-native 链接)

无法使用borderRadius 制作react-native-maps

如何使用 React-native 根据距离制作过滤器

在 React-Native 中制作指南针

如何用React Native制作键盘