当前位置:首页 > React

react native 如何打包

2026-02-11 19:59:47React

打包 React Native 应用

Android 打包

生成签名密钥:

keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

配置 android/gradle.properties

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=*
MYAPP_RELEASE_KEY_PASSWORD=*

修改 android/app/build.gradle

android {
    ...
    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

iOS 打包

配置 Xcode 项目:

  1. 打开 ios/YourProject.xcworkspace 文件
  2. 选择 Product > Scheme > Edit Scheme
  3. 选择 Run 并设置 Build Configuration 为 Release

生成 IPA:

react native 如何打包

  1. 选择 Product > Archive
  2. 在 Organizer 窗口中选择 Distribute App
  3. 选择分发方式(App Store 或 Ad Hoc)

生成 AAB (Android App Bundle)

修改 android/app/build.gradle

android {
    ...
    buildTypes {
        release {
            ...
            debuggable false
            minifyEnabled enableProguardInReleaseBuilds
            shrinkResources enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
        }
    }
    bundle {
        language {
            enableSplit = true
        }
        density {
            enableSplit = true
        }
        abi {
            enableSplit = true
        }
    }
}

生成 AAB 文件:

cd android && ./gradlew bundleRelease

环境变量配置

创建 .env 文件:

react native 如何打包

API_URL=https://api.example.com

安装依赖:

npm install react-native-config

修改 android/app/build.gradle

apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"

优化打包配置

启用 ProGuard 代码混淆:

def enableProguardInReleaseBuilds = true

启用资源压缩:

shrinkResources true

注意事项

  • 确保测试 Release 版本的功能
  • 备份签名密钥文件
  • 检查应用的权限配置
  • 验证应用的版本号和版本名称
  • 确认应用的图标和启动画面配置正确

标签: reactnative
分享给朋友:

相关文章

react 如何引入css

react 如何引入css

在 React 中引入 CSS 的方法 React 提供了多种引入 CSS 的方式,可以根据项目需求选择合适的方法。以下是常见的几种方式: 内联样式 内联样式直接在组件中通过 style 属性定义,…

react如何diff

react如何diff

React Diff 算法原理 React 的 Diff 算法是 Virtual DOM 的核心部分,用于高效更新真实 DOM。其核心思想是通过对比新旧 Virtual DOM 树的差异,最小化 DO…

如何同步react

如何同步react

同步React组件状态的方法 使用useState和useEffect钩子组合可以同步React组件的状态。useState用于声明状态变量,useEffect用于监听状态变化并执行副作用。 im…

react如何安装

react如何安装

安装React的步骤 确保已安装Node.js(建议版本12或更高),可通过以下命令检查版本: node -v npm -v 使用Create React App快速搭建项目(推荐): npx…

typescript react 如何

typescript react 如何

TypeScript 与 React 结合使用的方法 在 React 项目中使用 TypeScript 可以提升代码的可维护性和类型安全性。以下是一些关键步骤和最佳实践: 安装 TypeScript…

react如何debugger

react如何debugger

调试 React 应用的方法 使用浏览器开发者工具进行调试 React 开发者工具(React DevTools)是调试 React 应用的必备工具。安装 Chrome 或 Firefox 扩展后,可…