我对反应本土世界很陌生。到目前为止,我还没有了解如何创建一个apk(我认为ipa会相似)。我知道有一些文档条目和许多其他问题似乎可以回答这些问题,但它们都不适用于我。
所以我感兴趣的基本用例是为演示应用程序构建一个apk。在开始之后我会做
create-react-native-app MyProject
现在我可以启动打包器和服务器并使用expo。完善。但我想现在建立apk。我找到的所有答案都是通过某种cd android && ./gradlew build
完成的,但是应用程序中没有android文件夹(显然是因为expo负责处理非弹出的应用程序)。另一种方式可能是使用expo
,但我一直遇到错误。正如在入门指南expo
没有被直接提及,而是npm
命令它可能不是那样。
我知道需要android文件夹的https://facebook.github.io/react-native/releases/0.19/docs/signed-apk-android.html。此处提到的curl
版本,即此处https://github.com/facebook/react-native/issues/2943,其中没有诀窍以及How to build react native android app for production?中的所有方法。
答案 0 :(得分:5)
因为您使用CRNA来创建项目,所以android
/ ios
文件夹(包含构建工具)不存在。
CRNA将您的项目配置为使用Expo客户端应用程序支持的代码。但是Expo XDE 无法直接构建生产应用程序(此时此刻)。所以有两种方式:
Eject and install the native code dependencies用于您的CRNA应用,并使用adb / Android Studio或XCode正常构建
使用exp
(世博会)由CRNA开发人员recommended。
第二选择:运行npm install -g exp
获取它,使用Expo帐户登录。像这样配置app.json
:
{
"expo": {
"name": "Your App Name",
"icon": "./path/to/your/app-icon.png",
"version": "1.0.0",
"slug": "your-app-slug",
"sdkVersion": "17.0.0",
"ios": {
"bundleIdentifier": "com.yourcompany.yourappname"
},
"android": {
"package": "com.yourcompany.yourappname"
}
}
}
然后按exp start
开始构建。应用启动后,运行exp build:android
或exp build:ios
以在您需要的平台上构建生产应用。
请参阅:https://docs.expo.io/versions/latest/guides/building-standalone-apps.html