Giter Site home page Giter Site logo

greatfit's Introduction

latest release release date Downloads HitCount

GreatFit: Amazfit Pace/Stratos/Verge APK Watchface sources

GreatFit Watchface Banner

ONE WATCHFACE TO RULE THEM ALL!

XDA Topic here

Features

  • This is a Pace/Stratos/Verge APK watchface
  • Custom apk watchface with open sources
  • Supports 21 languages: English, Bulgarian, Chinese, Croatian, Czech, Dutch, French, German, Greek, Hebrew, Hungarian, Italian, Japanese, Polish, Portuguese, Romanian, Russian, Slovak, Spanish, Thai, Turkish
  • Ability to change widgets/progress bars
  • Seconds are enabled based on your system settings (refresh the watchface)
  • More weather widgets (humidity, wind direction and strength, UV status, city, max/min temperature)
  • New watch alarm widget
  • New air pressure, altitude/dive depth (calculated based on air pressure & temperature)
  • New xdrip values widget (will be supported with Xdrip by Klaus3d3)
  • New phone battery widget/bar (needs amazfit service+phone app)
  • New phone alarm widget (needs amazfit service+phone app)
  • New calories progress bar (set target in settings)
  • New heart-rate progress bar (min 0 bpm, max 200 bpm)
  • New world time widget, you can select the time zone (GMT) it displays
  • New notifications widget, see unread notifications (needs amazfit service+phone app)
  • New moonphase widget
  • New walked distance widget (based on daily steps and height)
  • Better image resolution when raising hand
  • Ability to show only time when screen is off (to save battery, doesn't apply on raise of hand screen)
  • Status bar position and enable/disable
  • Font weight selection in settings
  • White background option
  • Many other options available in settings

Bugs

  • If screen off mode is not applied or you see widgets over old widgets, just re-apply the watchface
  • Xdrip widget is not working

Tutorial for devs and stylers

This project scopes to provide an easy way to create Amazfit APK watchfaces even without coding skills! Take a look at this post.

Download

Get a ready to use binary

Or if you are hardcore, compile the source code with Android Studio.

Installation

To install this watchface, you will need a PC with the ADB installed. Connect your Amazfit on your PC and fire up a terminal.

ADB install command:

adb install -r GreatFit.X.X.apk

ADB uninstall command: (run this first if you get installation error message)

adb uninstall com.dinodevs.greatfitwatchface

Clear data: (not cleared with uninstall, run this if GreatFit crashes when changing versions)

adb shell pm clear com.dinodevs.greatfitwatchface

Screenshots

GreatFit v3.0 GreatFit v3.0 GreatFit v3.0 GreatFit v3.0 GreatFit v3.0 GreatFit v3.0 GreatFit v3.0

Credit where credit is due

This project couldn't be possible without getting familiar with the source code provided by Manuel Alvarez (whose code is here). Additional work has be done by Fabio Barbon (whose code is here), Luis Baena (@LBA97) and Saúl Alemán (@Nxsaul) (whose code is here).

Translations are ported from my Pace Calendar widget project (code here, see translators in the changelog here), @GramThanos jsCalendar project (code here) and by users here or on XDA (see changelog).

Special thanks to:

  • @lfom, @GramThanos, @renzettis and the rest of the Amazmod team for helping me out
  • @KieronQuinn for the settings style code (from his AmazfitStepNotify app)
  • and all those invisible people giving back to the community by helping or donating! (special thanks are also included in changelogs)

This project couldn't be possible without the following free software: • Android Studio • APK Easy Tool (decompile-recompile) • Notepad++ (smali editing) • JD-gui (jar file decompiler) • dex2jar (file type converter) • SVADeodexerForArt (working deodexer for amazfit's system) • 7zip

Libraries files (*.lib) have copyrights by Huami

greatfit's People

Contributors

andreaomodeo avatar fcaronte avatar gramthanos avatar greatapo avatar lfom avatar siankatabg avatar zdunex25 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  avatar

greatfit's Issues

Not correct weekday shortening (russian)

For Russian lang long and short weekdays are:
Понедельник - Пн
Вторник - Вт
Среда - Ср
Четверг - Чт
Пятница - Пт
Суббота - Сб
Воскресенье - Вс
Correct it, please!

Moon widget crushes the watch

Hello!
I have strtos with last officially firmware.
After last release (3.9) I've deleted last watch, cleared cashe and install the new one.
Moon widget set in widget window №5.
It was OK till 23:59 hour. At 00:00 was fully crashed. Display works, but no reaction on buttons. Only hard reset througth turn on button press ~10 secs.

Current config (without moon widget only) below:
photo5451700910955801188

When watch slept that month was wrong.

When Oct 1, unlocked watch face month is correct.
But when locked that month was wrong.
Maybe is digit issue?
When Oct show '0' but when I change month to Nov manually,
It showed 1.
attached the photo.
locked
unlocked

Crash when turn on notification wirdget

Hello!
After installation i can set Widget 5 to "Notifications".
But after, if I change some settings in "Other features" it crashes down.
Working only if notification widget not used.

For example widgets for crash:
1- weather Icon
2- steps
3- watch alarm
4- battery %%
5- Notifications
Bar - Steps

Features:
resolution +
flashing -
month txt +
3 letters month +
3 letters day +
No 0 +
wind as arrows -
show status bar -
animate -
always am/pm -

Official firmware 2.3.9.0 (Startos)

Altitude not working

Altitude in widget 1 and air pressure in widget 2. Altitude does not work ("--M"). The only working version is 3.8

XDA link

Month change to OCT

Hi Guys love your watchface works great but this morning with the change to OCT it now shows 10 and a Chinese symbol instead and a 12 with Chinese symbol when the lock screen is on plus i have reset the watch and reinstalled the watchface with no change. I'm running Greatfit 3.5 on the latest OS international Stratos and yes the language is set to english thanks.
2018-10-01 08 59 12

Second circular indicator bar as a triangle

Hey, So I've been thinking that it would be great to see more than one circular indicators.
It makes sense not to add these as another circular bar, but more like a triangle-shaped (or anything that works, a little arrow, or circle) that would be floating inside of main (1st) bar and pointing at is.
And image is better than hundreds of words, so i mean something like this watchface called MNML:
image

In our case we would have just a red triangle pointing at particular position on a bar.

That way we could use Bar 1 as a battery indicator, and then one floating red triangle as steps indicator, and one yellow triangle as indicator of distance.

Also: Keep in mind that this watchface has a little line indicating seconds, on image it is 22nd second.

Stratos 2.3.8.0 - watch crash

Hi All
Have the lattest version installed and it does still crash my watch within an hour or so of loading it as the current watchface sorry to say.

layering widgets

i love the work you've been doing @GreatApo ! It's given me the headstart to get involved in watch faces. I'm doing my first, a shamless rip off inspiration from the HR Steel design. My issue is the analog hands are under the widget. I've followed the same pattern on my custom clock face, making both the heart rate and power (lower tachometer) widgets - each subscribing to their appropriate DataType. Everything is working except for this layering.

here is how they are implemented on my extended AbstractWatchFace class:

@Override
    public void onCreate() {
        context = this.getApplicationContext();

        // Load settings
        Settings settings = new Settings();

        this.clock = new MainClock(settings);
        this.widgets.add(new TachWidget(settings));
        this.widgets.add(new TopWidget(settings));

        super.onCreate();
    }

If you look closely, the top widget is above the hands. That widget is only the icon and text:

img_20181102_070011

...ha, that's my dog i just noticed in the background ^^ LOL

More available background colors

It would be nice to have a red backgroud or a gray background option because the backlight bleed on black background kinda makes the watch look cheap.

by cyanides13 on XDA

0% Phone battery calculation

Hi, if my phone dies there is still 2% on watch's Phone battery widget.
Is it possible to add
IF phone battery last data received = 2% AND phone is disconnected for more than +-15mins
----> set 0% (or X or - or new icon)

Watch shows incorrect notifications

My watch Pace shows that I have 7 missed notifications. But when I pull up, my watch says all caught up. Therefore no missed notifications. I tried restarting watch but didn't work. Change to another watchface and back to GreatFit didn't work. How can we synch this? Using with AmazMod.

"World Time" Widget

If you enable the widget "World Time" while the setting "Always am/pm" is off the whole watchface crashes. Some more info, Amazfit Pace with stock US rom 2.8.1.0, italian language set into watchface settings, time format 24-hour.

Calories icon not shown in slpt screen

When watch goes to slpt mode, the calories icon is not drawn. But if you select battery widget and calories widget, in slpt mode calories icon is drawn.
In line 166 of
app/src/main/java/com/dinodevs/greatfitwatchface/widget/CaloriesWidget.java
Now is: if (settings.battery_percentIcon) {
Must be: if (settings.CaloriesIcon) {

Making this change, calories icon will be drawn always

Dark screen on locked screen instead of watchface

Is this normal? Any ideas how to fix? I tried to reinstall GreatFit.3.8-Pace-Stratos.apk, 3x reboot but with no luck.

I am not able to change to different wface - can be picked by long press on GretFit but GreatFit is still present. Do you experience same thing?

After uninstalling GreatFit apk I can not see any watchface even on unlocked screen :( Ideas?

Pressure (mmHg option)

Hi!
Make an option to display pressure in mmHg, please!
mmHg is more handy in usual life.
Thanx in advance!

Support request for Amazfit Verge

The application installs properly and works fine, but as the Verge's screen is larger, the watchfaces are not full-screen. I ask if it is possible to have full compatibility even on the Verge. Thank you.

Inverted theme?

Hi!
Can you make an inverted theme option, please?
White background makes info more readable...

Spacing between hours and minutes

The second digit in the hours and the first digit in the minutes have no spacing between them. For example, when is 08:00 the eight and the zero (first digit of minutes) are touching
Please see attached image

img_20181206_080550_hht

SLPT moon changes when Hicolor is activated

Hello, I'm the author of the MoonPhase widget.
When the watch is in low-power SLPT, I actually see app\src\main\assets\slpt_moon\moon5.png.
But when I twist the wrist , better_resolution mode is activated and the displayed icon becomes app\src\main\assets\26wc_moon6.png.

At least this is what I see, but I cannot understand how this is possible, since the line of code is very straightforward:
String filename = (better_resolution) ? String.format("26wc_moon/moon%d.png", i) : String.format("slpt_moon/moon%d.png", i);

I don't have an explaination, unless the committed source code is different from the beta build you released.

Centered text cropped in slpt view

In SLPT view, if the text is not aligned to the left, you draw a rectangle around it, for example (WeatherWidget):

if(!settings.temperatureAlignLeft) { // If text is centered, set rectangle temperatureLayout.setRect( (int) (2 * tmp_left + 640), (int) (settings.temperatureFontSize) ); tmp_left = -320; }

At least if you use a font_ratio above 100 (which is necessary with the font I use), this rectangle is too small and cuts the bottom part of the font. Changing the height to

(int) (((float)settings.font_ratio/100)*settings.temperatureFontSize)

somewhat relaxes the situation, although it is still not high enough. Maybe adding some extra space would be helpful.

More weather data

Forward more weather data with Amazmod:

  • Sunrise
  • Sunset
  • Moon phase
  • Tide
  • Visibility
  • Air quality

An idea is to pull some data from this API.

Crash with change of month to Dec

Hi 30 mins into Dec here in Sydney and i have noticed this watchface and 1 other apk watchface i have both crash when i select them so i.m thinking it has something to do with the change of month as it did work perfect thanks.

Interactive widgets

Ability to click on the widgets and be transferred to the relative app

Examples:

  • notifications widget -> amazmod messages
  • temperature widget -> weather app
  • heart-rate widget -> heart-rate app

Or ability to click on a widget to show more/other values

Examples:

  • temperature widget -> click to show day's max/min

Analog Clock

Thanks for the great work! I added Bulgarian language and tried to implement MainClockAnalog. It works, but when I try to open Settings on my watch it crashes. I've commented "Settings section" in the code and it works without using any widgets. Please take a look I'd be really happy to see it working
MainClockAnalog.txt

.

Custom data expiration / reset

Do not show the custom data if they are not refreshed lately.

  • Phone battery
  • Phone alarm
    (2h is the max refresh rate in Amazfit)

Also reset the data when clicking the reset button in settings.

Add About section in settings

Add About section in settings and remove the toast when refreshing the watchface.

  • Version
  • Author

Additionally, add a "refreshing" toast before refreshing the watchface (because of the delay).

Amazfit Verge Support

Amazfit Verge has a 360x360 resolution screen. GreatFit should:

  • detect the screen
  • adjust the style (or use a second style)

AM to PM doesn't work

Hello,
I find out problem with transfering AM to PM at noon. I'am using 12-hours format in setting and once there is noon the watch face doesn't automatically transfer from AM to PM. But it works in the evening, transfer from PM to AM at midnight.

Is it some bug or watch / watchface setting problem?

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.