Git Product home page Git Product logo

deconz-sunriseclock's Introduction

deCONZ-SunriseClock

This is an App that triggers deCONZ/Hue actions for the next alarm clock. You can connect to your bridge and select the lights that should be activated at the alarm time. This app is not released yet.

Development

Android Studio is used to develop this app. Most of the settings for code styling and formatting are shared, but some can't be added to this git repository. Suggested and recommended settings are described below. These settings have to be set manually. The settings screen in Android Studio can be accessed through File -> Settings.

Android Studio settings

Settings -> Version Control -> Commit

  • Use none-modal commit interface: Checked
  • Force non-empty commit comments: Checked
  • Blank line between subject and body: Checked
    • Severity: Warning
  • Limit body line: Checked
    • Severity: Warning
    • Right margin: 72
    • Show right margin: Checked
    • Wrap when typing reaches right margin: Checked
  • Limit subject line: Checked
    • Severity: Warning
    • Right margin: 72
  • Spelling: Checked
    • Severity: Typo
  • Reformat code: Checked
  • Rearrange code: Checked
  • Optimize imports: Checked
  • Analyze code: Checked
    • Profile: Stored in Project -> SunriseClock

Settings -> Editor -> Design Tools -> Default Editor Mode

  • Drawables: Split
  • Other Resources (e.g. Layout, Menu, Navigation): Design

Settings -> Build, Execution, Deployment -> Deployment

  • Automatically perform "Run" when Apply Changes fails: Checked
  • Automatically perform "Run" when Apply Code Changes fails: Checked

Settings -> Tools -> Actions on Save

  • Reformat code: Checked
    • All file types
    • Changed lines
  • Optimize imports: Checked
    • All file types

Settings -> Tools -> Terminal

  • Audible bell: Unchecked

Android Studio tips and tricks

Tasks -> Servers: Android Studio can create a new branch for an issue created on GitHub.

  • Host: https://github.com
  • Repository: d3kad3nt/deCONZ-SunriseClock
  • Api token : [GENERATE] App

deconz-sunriseclock's People

Contributors

asdfgamer avatar ku-we avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

deconz-sunriseclock's Issues

Device Control Activity Crash

It is possible that the Activity that is started by a long press on a device control element crashes.

This is sometimes the case when the App is in the foreground while the activity is started.

The only log message that i found that could help was "... was disposed without first being removed with the input manager!"
I found some other cases where this message was thrown, e.g. https://www.reddit.com/r/pixel_phones/comments/s2fztm/input_channel_object_something_was_disposed/. I am using a Pixel Phone with Android 12 so this could be a Phone specific issue

WLAN Check

Nur im eigenen WLAN versuchen mit der Bridge zu verbinden.
Einstellungsmöglichkeit, nur eine SSID

Add Name to EndpointConfig

A EndpointConfig should have an uniqe Name. This is for example needed when the Endpoint should be selected.

Check inputs

Die Eingaben z.B. in den Einstellungen sollten überprüft werden. Dies ist z.B. für die IP-Adresse oder den Port relativ einfach. bei anderen Eingaben ist es wahrscheinlich nicht möglich.

Select the Endpoint from the frontend

This can only be done if #37 is done.

The Enpoint that is currently active should be selected from the frontend. It could be possible to use the spinner in the LightsFragment or another way

Refactor IDs

Die IDs sollten einem Namesschema folgen. Dieses muss noch festgelegt werden.

Make endpoint selector more robust

The endpoint selector (spinner) in the light list screen should be replaced by somethin more robust. EndpointSelectedListener, EndpointSelectorAdapter etc. should be rewritten if not obsolete. This could be done by using view and data binding or - preferrably - by bringing the active endpoint selction into the endpoint list screen. Maybe use shared preferences (as repository) to persist the selected active endpoint?

FAQ

Es könnte ein FAQ hinzugefügt werden.
In diesem sollte auf jedem fall beschrieben werden, dass Cleartexttraffic verwendet wird.

Move Endpoint Selector to XML

The Endpoint Selector Spinner is currently only added via code. But it would be good if the Spinner is created in XML.

Create EndpointRepo

To work with the Enpoints from the Database a repo should be created like the LightRepository with the difference, that the EndpointRepo doesn't have to request the current state from the network and the only source is Room.

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.