我按照本教程为我的 Flutter 项目添加了风格。
如果我从命令行构建具有特定风格的应用程序,则可以完美运行。这是一个例子:
fvm flutter run -t lib/main_prod.dart --release --flavor=prod
Run Code Online (Sandbox Code Playgroud)
在 Flutter 项目中,我创建了三个入口点:
main_dev.dart
void main() async {
AppConfig devAppConfig =
AppConfig(appName: 'My App', flavor: 'dev');
Widget app = await initializeApp(devAppConfig);
runApp(app);
Run Code Online (Sandbox Code Playgroud)
}
main_stage.dart
void main() async {
AppConfig stageAppConfig =
AppConfig(appName: 'My App', flavor: 'stage');
Widget app = await initializeApp(stageAppConfig);
runApp(app);
Run Code Online (Sandbox Code Playgroud)
}
main_prod.dart
void main() async {
AppConfig prodAppConfig =
AppConfig(appName: 'My App', flavor: 'prod');
Widget app = await initializeApp(prodAppConfig);
runApp(app);
Run Code Online (Sandbox Code Playgroud)
}
还有initializeApp()方法:
Future<Widget> initializeApp(AppConfig appConfig) async {
WidgetsFlutterBinding.ensureInitialized();
...
//save app flavor on sharedPreferences
resources.prefs.setFlavor(appConfig.flavor);
...
return MyApp(appConfig: appConfig);
}
Run Code Online (Sandbox Code Playgroud)
此时,当我存档 iOS 项目(产品 -> 存档)时,默认情况下 appConfig.flavor 获得“dev”值。
我在 xCode 构建设置(TARGETS -> Runner -> Build Settings -> Product Bundle Identifier)上设置的产品包标识符是:
用于调试
供发布
如果需要,我将分享更多项目信息。
Pra*_*tik 10
确保您在 Xcode 上引用这些主 dart文件,即 main_dev.dart、main_prod.dart 和 main_stage.dart。您可以从 TARGETS -> Runner -> Build Settings 执行此操作,然后搜索 FLUTTER_TARGET。
您需要为不同的环境提供路径,如下图所示:
| 归档时间: |
|
| 查看次数: |
3314 次 |
| 最近记录: |