GithubHelp home page GithubHelp logo

secuso / privacy-friendly-weather Goto Github PK

View Code? Open in Web Editor NEW
110.0 16.0 30.0 39.45 MB

Privacy Friendly App for Android that can display weather for cities.

License: GNU General Public License v3.0

Java 95.90% CSS 2.66% HTML 1.44%

privacy-friendly-weather's Introduction

PFA Twitter Mastodon

Privacy Friendly Weather Icon

Privacy Friendly Weather App

⚠️ ⚠️ ⚠️ Please note: This project is no longer officially maintained. In an attempt to focus our maintenance efforts, we have decided to stop the maintenance of some projects, including this one. This means that there will be no further feature updates or bugfixes planned for this app (exceptions only in cases of severe security or privacy issues). Consequently, the app has also been removed from the stores. If someone is interested in taking over the maintenance of this app, please do not hesitate to contact us: [email protected]

This application is a privacy friendly weather app. The functionality includes adding locations and watching the current and future weather for this location with weather details. Also, a radius search can be performed. This lets you find the locations with currently the best weather around a given location.

Motivation

This application has been developed to be used as a basis for a Privacy Friendly App. Privacy Friendly Apps are group of Android applications which are optimized regarding privacy. Further information can be found on https://secuso.org/pfa

Building

Further development requires Android Studio, we recommend to use the latest version.

API Reference

Minimum SDK: 17
Target SDK: 32

License

Privacy Friendly App Example is licensed under the GPLv3.
Copyright (C) 2016 Patrick Mell
Copyright (C) 2017-2022 Christopher Beckmann

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

The icons used in the navigation drawer are licensed under the [CC BY 2.5] (http://creativecommons.org/licenses/by/2.5/). In addition to them the app uses icons from Google Design Material Icons licensed under Apache License Version 2.0. All other images (the logo of Privacy Friendly Apps, the SECUSO logo, the splash screen icon, the little weather icons and large weather images and the app icon) copyright SECUSO (2016).

Contributors

App-Icon, weather icons and backgrounds:
Markus Hau

privacy-friendly-weather's People

Contributors

bugcrazy avatar coderpaddys avatar jaison043 avatar kamuno avatar michaelmcdonnell avatar naofum avatar petermayer avatar skewedzeppelin avatar sleep-yearning avatar swltr avatar udenr avatar woheller69 avatar xdema avatar yonjuni avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

privacy-friendly-weather's Issues

input issue when adding places

can't enter first option. if I put in arica(chile) or Bristol (UK) it will go to arikak in turkey or one of the USA Bristols. It is impossible to select the first option!

Re-order ability

Hi! Please, add an ability, in the settings, to re-order the saved locations by date or by name!

Add new distance units: Km/s

For now, one can choose between Miles and kilometers. But the wind speed is actually displayed in meters per second (m/s).

In my region (France), it is much more usual to give speeds in Kilometers per hour (km/h).

I'd rename the settings option "Kilometer" to "Meters per seconds" and add a new option "Kilometers per seconds". And maybe rename accordingly "Miles" to "Miles per seconds"?

idea for improvement

Hi, thank you for this app!!
Please can you make 2 improvements?
I added a city. I see only the weather from today.
If i click on this city i see the detail-weather from today, but for the next day i must choose a weekday to look for the weather. For the next day i must choose a weekday etc.

  1. Please can you display the weather from today and the next 5 days in one screen. Or if you want to make a option where i choose the number of days i want to see.
    For example like the app WeatherPro Free: I see the weather for all the next days for one city, I can choose each day for details. At the top there is the name of the actual city, if i click on the city at the top i can choose other cities to display the weather (before i must add my favorite cities).
  2. Please can you add a widget to see the weather from today and the next 5 days.

Best regards

Add possibility to add own API Key

A possibility for the user to add an own API Key including a tutorial should be added. By this the limitation of OpenWeatherMap can be reduced.

Crash on start

I'm using
Custom CM11 ROM (based on Android 4.4.4)
Kernel 3.0
privacy-friendly-weather from F-Droid

The app crashes during the splash screen.

logcat

I/Timeline(31437): Timeline: Activity_launch_request id:org.secuso.privacyfriendlyweather time:22404074
I/ActivityManager( 2190): START u0 {cmp=org.secuso.privacyfriendlyweather/.MainActivity} from pid 31437
I/libblt_hw( 1781): Library closed (handle = 5, fd = 63)
D/AndroidRuntime(31437): Shutting down VM
W/dalvikvm(31437): threadid=1: thread exiting with uncaught exception (group=0x2c60fce0)
E/AndroidRuntime(31437): FATAL EXCEPTION: main
E/AndroidRuntime(31437): Process: org.secuso.privacyfriendlyweather, PID: 31437
E/AndroidRuntime(31437): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.secuso.privacyfriendlyweather/org.secuso.privacyfriendlyweather.MainActivity}: java.lang.IllegalArgumentException: AppCompat does not support the current theme features: { windowActionBar: false, windowActionBarOverlay: false, android:windowIsFloating: false, windowActionModeOverlay: false, windowNoTitle: false }
E/AndroidRuntime(31437): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2212)
E/AndroidRuntime(31437): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2271)
E/AndroidRuntime(31437): 	at android.app.ActivityThread.access$800(ActivityThread.java:144)
E/AndroidRuntime(31437): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
E/AndroidRuntime(31437): 	at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(31437): 	at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime(31437): 	at android.app.ActivityThread.main(ActivityThread.java:5146)
E/AndroidRuntime(31437): 	at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(31437): 	at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(31437): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732)
E/AndroidRuntime(31437): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:566)
E/AndroidRuntime(31437): 	at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
E/AndroidRuntime(31437): 	at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(31437): Caused by: java.lang.IllegalArgumentException: AppCompat does not support the current theme features: { windowActionBar: false, windowActionBarOverlay: false, android:windowIsFloating: false, windowActionModeOverlay: false, windowNoTitle: false }
E/AndroidRuntime(31437): 	at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:466)
E/AndroidRuntime(31437): 	at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:320)
E/AndroidRuntime(31437): 	at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:281)
E/AndroidRuntime(31437): 	at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:143)
E/AndroidRuntime(31437): 	at org.secuso.privacyfriendlyweather.MainActivity.onCreate(MainActivity.java:48)
E/AndroidRuntime(31437): 	at android.app.Activity.performCreate(Activity.java:5231)
E/AndroidRuntime(31437): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
E/AndroidRuntime(31437): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169)
E/AndroidRuntime(31437): 	... 12 more
W/ActivityManager( 2190):   Force finishing activity org.secuso.privacyfriendlyweather/.MainActivity
I/WindowManager( 2190): Screenshot max retries 4 of Token{2ca406d8 ActivityRecord{2d0fb600 u0 org.secuso.privacyfriendlyweather/.MainActivity t32 f}} appWin=Window{2d09d488 u0 Starting org.secuso.privacyfriendlyweather} drawState=4
W/WindowManager( 2190): Screenshot failure taking screenshot for (480x800) to layer 21055

Crash on Android 4.3.1

Hi! The app crash always; Is possible add a support for Android 4.3.1. and for the corresponding version of CyanogenMod and Replicant OS??

Alerts

Firstly, thanks for your work.

Please, clould you add alerts which notify when it's going to rain or it will go down the temperature?

missing dropdown-menu

I nver found or saw the dropdown-menu mentioned in the popup.
Don't know if I'm too stupid to find it or it isn't. (see screenshot)
screenshot_20170129-121544

bug: to low contrast on some icons

screenshot_20161127-050159

see this screenshot, the icon of Berlin is mostly invisible do to muchto low contrast/thin line. maybe you could find something better there

also it is called Lüneburg and not Luneburg. I was also unable to find it inder its correct name. so add an umlaut-disable-conversiin search parallel by searching after the real name.

thanks

This location is not already in the list

Hi,
I already put the city 'Annecy' as a permanent location bu I can't select it from the main screen.
If I try to add it again, I have the following message: 'This location is already in the list'. As you can see in the screenshot below, 'Annecy' is not here.

Thanks.

fmhgfmfz

Select a default location

Allow the user to set a default location. This location would then be shown automatically when the app opens instead of the list of locations. This is a feature most weather apps have as it saves one click to the user.

It could also be used for the widget (#18).

I do not have the GPS on by default so I do not use this following option, but another common feature is instead of the default location being a fixed location, have it set by the GPS, so it is always shows the weather of the present location.

Alternative weather providers

It would be nice if the app also implements a Cyanogenmod wheather provider, so one can select it in the settings.

Horizontal scroll to navigate between days

currently to navigate between the days on the overview screen, I have to press the day text, like "Mo." "Tu" and that requires some precission as the screen area for that is sort of small. Much easier will be to just swipe the screen to the left or to the right to scroll from "Mo." to "Tu" etc. The same idea applies ot the "course of the day" as well.

Don't work

The App try to start and breaks down "angehalten" on my Samsung galaxy s4 mini.

Missing locations

Hi,

while playing around with the app I noticed that there are some missing locations. E.g. the app finds "Darmstadt, DE" or "Wolkenstein, DE", both of which are cities, but not "Mömlingen, DE" (the village), which can be found via OpenWeatherMap directly or other apps using OWM.

As I unterstand Privacy Friendly Weather uses http://openweathermap.org/help/city_list.txt as lookup table for city ids, which seems to show cities only.

There is another list mentioned in the API documentation, which also shows smaller villages http://bulk.openweathermap.org/sample/city.list.json.gz

It would be great, if you could consider switching to the json list, or alternativley, allow to add city IDs directly instead of searching in the lookup table.

Thanks!

http -> https ?

When using Net Monitor it shows an unencrypted http connection for privacy-freiandly-weather installed over f-droid.

Why not https for a privacy-friendly app (I'm not into app programming)?

Times are GMT, not current city's

Viewing forecast for a city doesn't show local time but GMT. This is confusing and leads to wrong information.
This already had caused trouble a few times for me when the app readings lead me not to bring a coat for the night when in reality I was reading the afternoon temperature. I froze my ass to death and that's how I discovered this bug.

Widget "sticks" at wrong location and doesn't update

Physically in Richmond, VA, in app, location button works, it seems. Shows "Richmond, US". But widget shows Richmond, CA, and does not appear to update when touching circle with arrow. Also, search for location Richmond goes direct to Richmond, CA; no option for Richmond, VA.

feature request: cyanogenmodweatherprovider

hi,

it would be grate if you could implement the interface used do serve as cyanogenmodweatherprovider. Right niw i have in my system settings (CM13) the weather option in which is only written that i need to install a weather provider. when i tap that link its forwards to an froid search without any result's (probably on google play could be found some but i am using my device completely without).

so it would be grate if you could implement that.

thanks

AutoCompleteTextView in AddDialog

Use the AutoCompleteTextView component I built for the radius search in the above-mentioned dialog as well (saved LOC and code duplication).

HTTPS(?)

Is the so using HTTPS? If not could you please use it?

You might also consider updating the doc (e.g it send a "HTTPS request" instead of an "HTTP request").

UV index

Please add UV index info to the app.

Use of weather icons

Using icons instead of words would help to watch the weather much faster with only a glance. For example, instead of "clouds" it would appear an image of clouds. The same for a sundy or raining day. And even for words like wind speed or time sunrise or sunset which can be easily be substituted with their correspondent images.

This way it needs less space too so you can put more info in just a row : )

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.