如何在不使用Android Studio的情况下生成React Native应用的APK

4

我已经开发了一款React Native应用程序,而没有安装Android Studio。尽管我已经安装了一些必要的开发工具。

我的Android文件夹结构大致如下:

Android
   .temp
   build-tools
   cmdline-tools
   emulator
   licences
   patcher
   platforms
   platform-tools
   tools
   .knownPackages

现在我已经用React Native完成了我的应用程序,我希望构建一个APK(有效且签名的),并将其上传到Google Drive,并与我的朋友分享。但问题是我的计算机不支持Android Studio。

我本可以使用Expo,但是每个想安装我的应用程序的人都必须先安装Expo客户端应用程序,这是一个问题。

我希望我的兄弟姐妹们能帮助我,因为我完全没有接触过Android开发。

谢谢。

编辑:-

直到现在,我一直在使用真实的Android设备进行开发。

2个回答

3

这个解决方案适用于React-Native CLI,不确定它是否适用于EXPO。

首先使用终端生成keystore文件,进入java bin文件夹,然后运行以下命令: keytool -genkeypair -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

之后将生成的keystore文件粘贴到您的Android应用程序文件夹中。

接下来,您需要在gradlw.properties文件中添加配置。

MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias
MYAPP_UPLOAD_STORE_PASSWORD=*****
MYAPP_UPLOAD_KEY_PASSWORD=*****

还需要更改app/build.gradle文件:

...
android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
                storeFile file(MYAPP_UPLOAD_STORE_FILE)
                storePassword MYAPP_UPLOAD_STORE_PASSWORD
                keyAlias MYAPP_UPLOAD_KEY_ALIAS
                keyPassword MYAPP_UPLOAD_KEY_PASSWORD
            }
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

那么

$ cd android
$ ./gradlew bundleRelease

为了更好的指导,请访问:https://reactnative.dev/docs/signed-apk-android

2
如果您正在使用Expo管理的流程,则不需要任何IDE来创建构建,甚至不需要macOS机器来创建ipa,只需几个命令,根据turtle服务器上的队列,您的构建将在30分钟内准备好。
如果您正在使用bareflow或React CLI,则需要IDE的帮助来创建两个平台的构建,并需要iOS的mac机器。
有关Expo管理流程中构建创建命令的帮助,请使用this链接。
从Android Studio创建Android构建,您可以从here获取帮助。
关于您所关注的构建共享问题,Expo会提供一个链接,人们可以从该链接下载APK或IPA,这将简化与构建共享相关的问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接