I/O 弹珠台
一个使用 Flutter 和 Firebase 为 Google I/O 2022 构建的弹珠台游戏。
由 Very Good Ventures 与 Google 合作构建
使用 Very Good CLI 创建?
入门?
要运行所需项目,请使用 VSCode/Android Studio 中的启动配置,或使用以下命令
$ flutter run -d chrome
*I/O 弹珠台支持桌面和移动端的 Web。
正在运行测试?
要运行所有单元和 widget 测试,请使用以下命令
$ flutter test --coverage --test-randomize-ordering-seed random
要查看生成的覆盖率报告,您可以使用 lcov。
# Generate Coverage Report
$ genhtml coverage/lcov.info -o coverage/
# Open Coverage Report
$ open coverage/index.html
正在处理翻译?
该项目依赖于 flutter_localizations,并遵循 Flutter 的官方国际化指南。
添加字符串
- 要添加新的本地化字符串,请打开位于
lib/l10n/arb/app_en.arb的app_en.arb文件。
{
"@@locale": "en",
"counterAppBarTitle": "Counter",
"@counterAppBarTitle": {
"description": "Text shown in the AppBar of the Counter Page"
}
}
- 然后添加新的键/值和描述
{
"@@locale": "en",
"counterAppBarTitle": "Counter",
"@counterAppBarTitle": {
"description": "Text shown in the AppBar of the Counter Page"
},
"helloWorld": "Hello World",
"@helloWorld": {
"description": "Hello World Text"
}
}
- 使用新字符串
import 'package:pinball/l10n/l10n.dart';
@override
Widget build(BuildContext context) {
final l10n = context.l10n;
return Text(l10n.helloWorld);
}
添加翻译
- 对于每个支持的区域设置,请在
lib/l10n/arb中添加一个新的 ARB 文件。
├── l10n
│ ├── arb
│ │ ├── app_en.arb
│ │ └── app_es.arb
- 将翻译后的字符串添加到每个
.arb文件中
app_en.arb
{
"@@locale": "en",
"counterAppBarTitle": "Counter",
"@counterAppBarTitle": {
"description": "Text shown in the AppBar of the Counter Page"
}
}
app_es.arb
{
"@@locale": "es",
"counterAppBarTitle": "Contador",
"@counterAppBarTitle": {
"description": "Texto mostrado en la AppBar de la página del contador"
}
}