Git Product home page Git Product logo

atticuscornett / atmosweather Goto Github PK

View Code? Open in Web Editor NEW
18.0 4.0 3.0 672.45 MB

Atmos Weather is a lightweight weather app for receiving alerts and forecasts in the US.

Home Page: https://atticuscornett.github.io/AtmosWeather/

License: GNU General Public License v3.0

HTML 22.01% CSS 10.28% JavaScript 57.57% Java 9.49% Batchfile 0.64%
android cross-platform css electron html html-css-javascript java javascript weather-app windows

atmosweather's People

Contributors

atticuscornett avatar dependabot[bot] avatar djtpj avatar izzysoft avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

atmosweather's Issues

Hourly forecast inconsistent and generally cramped

The hourly forecast for the Android deployment is highly inconsistent, and feels extremely cramped, or it is not adequately taking up the allotted space.

Below I have attached and excellent example of this.
Screenshot_20221023-105127_Atmos Weather.jpg

It is not clear to me why you cannot use a flexbox with justify space? Or better yet, a grid with three columns set to 1fr each. However these approaches might requre a media query.

Not an issue, but a radar suggestion

I love the app so far, but would it be possible to make the radar a bit taller? I'm viewing on a 16:10 aspect ratio, and it's a bit cramped. Thank you!

Nominatim a.o.

I just took a look at your nice app, but had some issues with it:

  • Nominatim lookup seems to be restricted to the US (e.g. European cities were never found, I've tried several German ones)
  • there are several network connections your description does not mention (the onboarding activity claims "minimal data received" mentioning only OSM and the weather service โ€“ while I obversed connections to 146.75.121.91 (didn't resolve as it seems lacking an RR), atticuscornet.github.io (the app's home page; most likely some update check?), unpkg.com, Akamai.
  • I wasn't able to close the popups (e.g. one with version details); tapping the "x" didn't do anything. Was able to work around that by exiting and restarting the app, though.
  • app claims to be free, but unfortunately is not libre (uses Google Services); guess you're using Google's location services. That unfortunately keeps it from being listed at F-Droid.org, which does not permit proprietary components.

Neverthess, I've just added it to my repo, so it should show up here around 7 pm UTC with the next sync. Would be nice if some of the above issues could be tackled, so description can be "cleaned" of my remarks and maybe even the AntiFeatures be removed ๐Ÿ˜‰

Thanks in advance!

High CPU and Memory Usage in Background

Was wondering why my fans were always ramping up, and Task Manager says that it is using anywhere to 25 to 50% of the CPU and about 4 GBs of memory. Not a major issue, but something to be aware of.

Android: crash on start

FATAL EXCEPTION: main
Process: io.atticusc.atmosweather, PID: 24104
java.lang.RuntimeException: Unable to start activity ComponentInfo{io.atticusc.atmosweather/io.atticusc.atmosweather.MainActivity}: java.lang.SecurityException: Caller io.atticusc.atmosweather needs to hold android.permission.SCHEDULE_EXACT_ALARM or android.permission.USE_EXACT_ALARM to set exact alarms.
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3783)
	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3923)
	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:139)
	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2444)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loopOnce(Looper.java:205)
	at android.os.Looper.loop(Looper.java:294)
	at android.app.ActivityThread.main(ActivityThread.java:8223)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:977)
Caused by: java.lang.SecurityException: Caller io.atticusc.atmosweather needs to hold android.permission.SCHEDULE_EXACT_ALARM or android.permission.USE_EXACT_ALARM to set exact alarms.
	at android.os.Parcel.createExceptionOrNull(Parcel.java:3057)
	at android.os.Parcel.createException(Parcel.java:3041)
	at android.os.Parcel.readException(Parcel.java:3024)
	at android.os.Parcel.readException(Parcel.java:2966)
	at android.app.IAlarmManager$Stub$Proxy.set(IAlarmManager.java:311)
	at android.app.AlarmManager.setImpl(AlarmManager.java:1084)
	at android.app.AlarmManager.setImpl(AlarmManager.java:1044)
	at android.app.AlarmManager.setExact(AlarmManager.java:808)
	at io.atticusc.atmosweather.MainActivity.startBackgroundTask(MainActivity.java:86)
	at io.atticusc.atmosweather.MainActivity.onCreate(MainActivity.java:51)
	at android.app.Activity.performCreate(Activity.java:8595)
	at android.app.Activity.performCreate(Activity.java:8573)
	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1457)
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3765)
	... 12 more
Caused by: android.os.RemoteException: Remote stack trace:
	at com.android.server.alarm.AlarmManagerService$5.set(AlarmManagerService.java:2981)
	at android.app.IAlarmManager$Stub.onTransact(IAlarmManager.java:181)
	at android.os.Binder.execTransactInternal(Binder.java:1339)
	at android.os.Binder.execTransact(Binder.java:1275)

Version Info

  • Platform: Android REL 14 aarch64
  • Atmos Version: 2.0.1

proprietary component slipped in: GMS

My scanner just reported to me that somehow GMS has slipped into your app, so I have to mark it with the NonFreeComp ant-feature for now. Can you please check what dragged it in and, hopefully, get rid of it again?

Hm, looks like it might be intentional even:

try {
    def servicesJSON = file('google-services.json')
    if (servicesJSON.text) {
        apply plugin: 'com.google.gms.google-services'
    }
} catch(Exception e) {
    logger.info("google-services.json not found, google-services plugin not applied. Push Notifications won't work")
}

May I suggest you an alternative push service which is entirely FOSS? It meanwhile even offers a FOSS implementation of FCM which you could use as fallback in case no other distributor was found on the device. I use @UnifiedPush for quite a while via the NTFY distributor, works excellent. One can freely choose a Push Client/Manager and even self-host its server.

signature issues

Your latest APK is signed by a different key than the releases before, and I could find no hint on that in the release notes. Thus it is incompatible to the previous ones, which cannot be updated with that APK. It also means the update was rejected by my repo, so it won't even be offered to people for first-time installation.

Can you please explain the reason, so we can see what possible ways forward exist?

New certificate:

Signer #1 certificate DN: CN=Atticus Cornett, O=Atmos Weather, L=St. Clair County, ST=Alabama, C=AL
Signer #1 certificate SHA-256 digest: 3008ee877a1ffa5a456cc953fee1dc14dad2769c1510815ebbd2b2330b6c1a6a
Signer #1 certificate SHA-1 digest: d087521aa67e34cc8b791e21792bafb2cbd7c178
Signer #1 certificate MD5 digest: a34735bc8d4e6be3d51e4e0877c58438
Signer #1 key algorithm: RSA
Signer #1 key size (bits): 2048

Previous certificate:

Signer #1 certificate DN: CN=Atticus Cornett, O=Atmos Weather, L=St. Clair County, ST=Alabama, C=AL
Signer #1 certificate SHA-256 digest: c9c9bffa8ff1be993e7af9326b24fc99344298a25ee086e8e4f00b90a015a73f
Signer #1 certificate SHA-1 digest: b04b50015239f3455a5f32027153bd9fd6291d7a
Signer #1 certificate MD5 digest: 3a5e1f4b8262b87a2f9c43b2fc37318d
Signer #1 key algorithm: RSA
Signer #1 key size (bits): 2048

Light Theme & Widgets

Am I supposed to get weather notifications for each location I add since there is no way to have a default location?

I haven't yet tested this app fully to see if alerts happen with this app.

Please consider a light theme for the app since I can't see the settings well using the dark theme.

Also, please consider widgets for the current temperature or a notification.

Thanks

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.