This is the source code for the prototype UI of my smart mirror projects outlined in this article and its follow-up.
To get started, import the whole project into
Android Studio, then build and run the apk.
The first prototype uses
HomeActivity.java
and the second one
uses CompactHomeActivity.java
.
While the time, date, and news show up without any additional changes, you need to first enable the
respective APIs in order to see the weather, commute, and body measures. Edit
keys.xml
and enter the key for the
Dark Sky API, the key for the
Google Maps Directions API, and
multiple keys for the Nokia Health API.
The home and work addresses and the travel mode for the commute are pulled from a
Firebase Realtime Database and can be edited in the
Firebase Console after
adding Firebase to your Android Studio project.
The client expects a commute_settings
path with string children home
, work
, and travel_mode
.
The composition of the compact UI
is also configured via the Firebase Database: The compact_ui_settings
path has boolean children
for body
, commute
, time
, and weather
that determine which ones are shown. See
database-example.json
for a sample layout.
Copyright 2016 Max Braun
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.