Tady naleznete kód tohoto projektu Steampankových hodinek pro soutěž Flutter Clock, Kód se řidí pravidly soutěže, které jsou k dispozici na webu, v anglickém jazyce: flutter.dev/clock.
Kód je licencován na základě příslušné licence s otevřeným zdrojovým kódem (licence BSD tzv. Kalifornské univerzity v Berkeley), podklady ve složce assets jsou licencována s licencí CC BY 4.0 a písmo ve složce third_party, obsahuje licenci OFL. Soubor s názvem LICENSE najdete uvnitř adresářů, který obsahuje kopii licence, s plným textem této licence, v anglickém jazyce.
Zde najdete nedotčené, 4K záběry, ze skutečných zařízení, s operačními systémy iOS (iPhone, z roku 2016) a Android (tablet 2 v 1, z roku 2013), na nichž jsou vidět tyto hodiny.
Kontrolní součty:
MD5: 85112361007BD86664C871030E1D3D55
SHA-1: 0CFCDFE7EA241C304CA694CC376983F11B1C6E6D
Dropbox | Google Drive | Mega.nz | OneDrive | Amazon Drive | iCloud
Hlavní změny oproti původnímu kódu, z příkladu analogových hodinek, poskynutého firmou Google:
- odstraněný nevyužité soubory a složky,
- v tomto kořenovém adresáři:
- úpraven .gitignore soubor,
- přidány linty do souboru analysis_options.yaml,
- přidány runnery pro všechny platformy,
- testy byly přidány do složky test a jejich pokrytí do složky coverage,
- přidány README.md soubory v různých jazycích,
- do pubspec.yaml přidány — závislost Rive (bývalé Flare), testovací a lint závislosti, upraven popis a verze SDK byla zvýšena na 2.16.0,
- v lib adresáři:
- main.dart — přidán celoobrazovkový řežím a orientace na šířku, ukládaní animaci do mezipaměti, zbytek beze změn,
- analog_clock.dart — odstraněné nevyužité proměnné, deklarován ovladač animaci a změnený dvě metody, zbytek beze změn,
- přidány soubory time_animation_controller.dart a temperature_converter.dart,
- složka assets — nevyužita grafika vyměněna za soubor animace,
- složka ios — nastavená orientace na šířku pro iOS zařízeni, vygenerován unikátní název,
- složka android — upraven build.gradle soubor (viz Známé problémy),
- přidána složka third_party, obsahující písmo a licenci k němu.
Veškerý nový/úpravný kód obsahuje komentáře, popisující co se děje.
Binární spouštěcí soubory najdete v části Releases tohoto repozitáře GitHub.
Aplikace je na 100% pokryta unit/widget testy (report je ./coverage) nebo generujte pomocí*:
flutter test --coverage
genhtml coverage/lcov.info -o coverage/html'
vyžaduje nainstalovaný lcov*