如何将企业内部App移入Flutter包示例目录并完成重命名与部署配置?
操作步骤:重命名Example目录下的App并配置部署参数
一、重命名App(Flutter+原生端同步修改)
1. Flutter 基础配置调整
- 打开
example/pubspec.yaml,把name字段改成新的App标识(小写、无空格,可用连字符,比如internal_lib_test_app) - 在
example/lib/main.dart里,修改MaterialApp的title属性为你要显示的App名称(支持中文、空格)
2. Android 端适配
- 编辑
example/android/app/src/main/AndroidManifest.xml,将android:label的值替换为新的App显示名称 - 打开
example/android/app/build.gradle,修改defaultConfig里的applicationId为新的包名(比如com.yourcompany.libtestapp),同时同步内部库要求的minSdkVersion、targetSdkVersion参数 - 要换图标的话,直接替换
example/android/app/src/main/res/mipmap-*下的图标文件,确保AndroidManifest.xml里的android:icon指向正确资源 - 清理缓存避免报错:在example目录执行
flutter clean,再进入android子目录执行./gradlew clean
3. iOS 端适配
- 用Xcode打开
example/ios/Runner.xcworkspace,选中Runner项目,直接修改Display Name为新的App名称 - 把
Bundle Identifier改成新的包名(和Android端一致或者按iOS规范设置) - 适配内部库的部署要求:在Xcode的
Build Settings里调整Minimum Deployments版本,确保和内部库兼容;如果内部库需要特定权限,在Info.plist里添加对应的权限描述(比如网络权限NSAppTransportSecurity、相机权限NSCameraUsageDescription等) - 清理缓存:执行
flutter clean,删除example/ios/Pods目录后重新运行pod install
二、部署与测试参数配置
1. 内部库依赖关联
- 确保
example/pubspec.yaml里对内部库的依赖用相对路径,这样修改内部库代码后example App会自动同步,方便测试:
dependencies: flutter: sdk: flutter your_internal_library: path: ../
2. 测试环境配置
- 区分测试/生产环境:可以通过
--dart-define参数传递环境变量,比如启动命令:
flutter run --dart-define=APP_ENV=TEST
在代码里获取变量:
final appEnv = String.fromEnvironment('APP_ENV', defaultValue: 'PROD');
- 集成测试:在
example/integration_test下编写测试用例覆盖内部库的核心功能,执行测试的命令:
flutter test integration_test/core_function_test.dart
3. 打包配置
- Android打包:在
example/android/app/build.gradle的buildTypes里配置测试环境的签名、混淆规则,打包命令示例:
flutter build apk --flavor test # 如果用了产品风味区分环境
- iOS打包:在Xcode里配置测试环境的Scheme,或者用命令行打包:
flutter build ios --flavor test --no-codesign
内容的提问来源于stack exchange,提问作者Khamidjon Khamidov
相关产品推荐
相关产品推荐

