Skip to content

☔ The app will show you the weather not only for today. Build with Flutter ❤

License

Notifications You must be signed in to change notification settings

PackRuble/weather_today

Repository files navigation

image

telegram_badge repo_star_badge license_badge code_size_badge

Weather for every day. Try it now on Google Play:

Get it on Google Play

Weather Today

✨ Handy application for tracking weather conditions with an amazing design.

Some interesting features:

  • two weather providers are supported: open-meteo.com and openweathermap.org
  • track hourly, current and 7-day weather
  • save the necessary locations
  • two languages are available: English and Russian
  • set the units for speed, temperature, and pressure
  • built-in support for the OpenWeather service api key
  • highly customizable interface: font (and size), scrolling physics, 2 types of main interface and sooo many color themes

Screenshots

Screenshots from smartphone

1_Image_theme.png 4_Image_multilang.png 2_Image01.png 3_Image05.png
5_Image09.png 6_Image10.png 7_Image04.png 8_Image06.png

Screenshots from a 10-inch tablet

Table of Contents

Building an android application

build apk files

  1. flutter clean

  2. flutter pub get

  3. Building apk use flutter build apk:

    with flag ( 🔴 required, 🟢 optional ):

    • 🔴 --dart-define 'API_WEATHER=YourApiKey' - your api key for the weather service openweathermap.org. Read more here
    • 🔴 --pub - run the flutter pub get command before building
    • 🟢 --flavor - build a custom app flavor as defined by platform-specific build setup. Supports the use of product flavors in Android Gradle scripts, and the use of custom Xcode schemes.
    • 🟢 --target=<path> - the main entry-point file of the application, as run on the device. If the "--target" option is omitted, but a file name is provided on the command line, then that is used instead (defaults to "lib\main.dart")
    • 🟢 --target-platform=android-arm,android-arm64,android-x64 - choose the right platforms
    • 🟢 --split-per-abi - build a release APK for each target ABI (Application Binary Interface)
    • 🟢 --obfuscate --split-debug-info=build/app/outputs/symbols - once you’ve obfuscated your binary, save the symbols file. You need this if you later want to de-obfuscate a stack trace.

Possible problems/errors

Errors in the generated files

This project uses the build_runner for generating files. If you have a problem with the files *.g.dart and others generated files try this:

flutter pub run build_runner build

with flag(optional):

  • 🟢 --delete-conflicting-outputs - deletes previously generated files
  • 🟢 --build-filter=lib/PATH_FILE - build concrete file

Change in the app's launcher icon

The icons_launcher package is used for generate app's launcher icon. If there are problems, check the file icons_launcher.yaml, which contains additional explanations.

Or try use this command:

`dart run icons_launcher:create

Articles and materials for study

How do you support the project and the author?

You can:

🟢 give this repository a star

ede

🟢 to donate money on a 🍕. To do this, either contact me via email or visit the Telegram group.

[email protected] https://t.me/rublepack

🟢 share the project on social networks

🟢 create an issue or pull request or fork

Thank you for your help, kisses to all 💋

License

Weather Today source code is licensed under the Apache License, Version 2.0 License. Check LICENSE for more details.

Copyright 2022-2024 Ruble

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

“Google Play and the Google Play logo are trademarks of Google LLC.”