Download the app (it’s free!)
* Please note: Sorry, this standalone app and its github-pages website site are still a work in progress and not yet completely finished! *
This free app replicates Samsung's easy mode (from a Samsung Galaxy S4) onto a large variety of newer or replacement android phones for people who like the simplicity of this layout or might find changing to a new one difficult.
A work in progress - functions on many phones but not a polished app on all devices by any means - you will have to just try it on your own device and see if it works on that make/model? Unfortunately I don't have the time for further work on it at present, please see my KWGT widgets version as an alternative if this doesn't work on your device: https://boxbot6.github.io/easy-mode-replica-widgets (I'll also include the Android Studio project files that I used to make this app in the downloads below for those interested in working with the code).
Shown here working on my Samsung Galaxy A40, S5 and A15, but should work on many other makes and models of phones.
Files available to download:
- Here is the app if you just want to try it out (easy-mode-replica-app.zip) - the download also includes a Galaxy S4 Icon Pack and a Galaxy S4 Wallpaper Collection.
- Here are the Android Studio files used for making this app inside a project folder along with a 'folder-of-extra-files' which contains copies of the fonts, icons, backgrounds and wallpapers that I used (easy-mode-replica-app-working-files.zip) - unzip the download and then drag the whole project folder onto your Android Studio desktop icon to open it (or select the folder from 'File > Open' menu within an open instance of Android Studio)
How to use the app:
- Download and unzip the files.
- Install the .apk to your phone (it is not signed so you will have to allow apps from unknown sources).
- Turn on location and allow internet access for this app to get the weather or press the apps icon to open its main screen and enter a city there without turning on location services.
- Add the widgets by long-pressing on an android home screen and adding them from the bottom menu item for widgets that appears.
- Adjust the position and size of the widgets.
- Set your preferences for the app in its settings by clicking on the apps icon and then pressing the button for settings.
Troubleshooting:
- If it doesn't work - due to so many different phone and android version combinations if any part doesn't work please first try the general fixes below:
- Turn on location and allow internet access to get the weather.
- After first installation also try turning the phones location services off and on again or restart the phone to reset the location services and get the weather working for the app. Please give app permissions and also have internet active and check that you are online.
- If the weather consistantly doesn't work? - This app uses openweathermap to obtain the current weather data by making API calls (requests for information) to openweathermap by sending a key.
- If this free key expires or is overused it could stop working and you will need to get your own free key and update the settings or use android studio to update the apps code to include your own key which you can get from https://openweathermap.org
- Put your own valid API_key in Settings or if you are editing the app using Android Studio in MainActivity/class APIWeatherCall
- Touch Actions - If any of the touch actions dont work properly please first try editing the apps settings by pressing the apps icon and then the settings button. Check that the links for the touch actions that you wish to use are activated and update them to the appropriate actions for your particular device, otherwise you can just switch them off.
(Basic how to make an API call instructions can be found at https://openweathermap.org or see example below - open a free openweathermap account to get your own API key.
Please Note: On older versions of android there is no support for displaying packaged fonts and so it will substitute system fonts and appear similar to below.
Update: Since the Android 12 update you are no longer allowed to show any custom fonts in a widget (RemoteView) so will probably have to switch to showing bitmaps of the text similar to the method used for displaying the weather icons.
Tips on how to show the current weather icon in your own app using OpenWeatherMap and Android Studio (includes using the day/night icons).
// general overview of the method //
- Get the current weather data by making an API call (basically a request for information) to openweathermap by sending a free key.
(How to make an API call instructions at https://openweathermap.org/current or see example below - open a free openweathermap account to get your own API key).
- Use the response from openweathermap to populate some new variables: sunrise, sunset, updatedAt and description. (generally use the 'description' part of the response from openweathermap rather than 'main' or 'icon' because it contains the largest range of weather conditions).
- Use sunrise, sunset and updatedAt to create a night-time indicator tag (nightTag) to use in conjunction with the description.
- Use description and nightTag in the font conversion code 'convert openweathermap descriptions to easy-weather-icons-font' (given in the MainActivity example-code below) to display the corresponding icon from the font.
- Add the widgets by long-pressing on the homescreen and adding from the bottom menu that appears.
- For an example of how to use Android Studio to make an app that shows the current weather (using openweathermap and easy-weather-icons) please use this link and scroll down to the API Demo: https://boxbot6.github.io/easy-weather-icons-font
Some general notes if you are editing the apps code in Android Studio:
- If you are renaming anything in Android Studio right-click it and select Refactor > Rename, to change all the instances where it is used and linked throughout the project to ensure continuity.
- Use right-click 'Find Usages' to check what things are connected to and use 'Delete > Safe Delete' before removing things to make sure they are not being used elsewhere and it is ok to get rid them.
- The best way to start modifying the code is to add snippets of code that you have already tested elsewhere in other projects and you know already work with your version of Android studio or otherwise make small changes and keep checking if it still works - most of the time you can press Edit > Undo to go back to what was working.
- In the AndroidManifest.xml you can change the icon that your android app shows by adding a 512x512 pixel icon in .png format to the app > res > drawable folder and updating android:icon="@drawable/name_of_the_icon_you_added_to_drawable_folder_here". Alternatively you can more correctly right-click on the res folder and select New > Image Asset and use the dialog to make a proper full set of icons for the app - use android:icon="@mipmap/ic_launcher" to show these icons.
- Also in the AndroidManifest.xml you can change the name that shows for the app by changing android:label="app_name_you_want_to_show_here".
- Put any images you want to use in your project into the drawable folder and link to them by using "@drawable/name_of_the_image_you_added_to_drawable_folder_here".
- As a general rule in Android Studio to add text to layouts try to use reference strings like "@string/text_reference_id_here" rather than putting your text directly in the layout code (you put the actual text you want as a string in res > values > strings.xml - example: <string name="text_reference_id_here">The text you want to reference here</string> and link to that with "@string/text_reference_id_here"). One reason for using values is to make translating all the text in an app easier.
- For first-timers probably stick to the project name as it is because changing the name is a bit convoluted depending on which version you are using but if you want to change it there is a helpful guide here but it may have changed for newer versions
A few things about the code:
- I have converted the code to kotlin for this project so it no longer uses java.
- The app has a min SDK/API level of 16 (Android 4.1 Jelly Bean).
- The app will not be signed so you will have to do that seperately if you wish to distribute it commercially (Look up: How do I sign and publish an Android app?)
- For help on most things regarding Android Studio go to stackoverflow.com and dig through the answers and examples there.
References:
- These widgets are designed to look like Samsung Easy Mode running on Android 4.4.2 (Galaxy S4 mini version).
- Tested on Samsung Galaxy A15, A40, etc.
- The main widget contains my 'easy-weather-icons-font.ttf' to show images for the weather conditions, it can be found for free use in your own projects at this link: https://boxbot6.github.io/easy-weather-icons-font (example below).
- The download also contains a set of Galaxy S4 icons 'galaxy-s4-icon-pack.zip' if you want to show a matching set of S4 icons by using an app like Nova Launcher, it can also be found for free use in your own projects at this link: https://boxbot6.github.io/galaxy-s4-icon-pack (example below).
To use the Icon Pack in Nova Launcher:
Press:
To load the whole icon pack:
To edit the icons individually:
Keywords: easy mode replica app, easy mode, samsung, weather, date, free icon font, icon font, samsung ui, weather font, OpenWeatherMap, open weather map, easy mode, meteo, icons, font, TTF, free.
Click the link below to visit the GitHub repository that is being used to generate this site:
https://github.com/boxbot6/easy-mode-replica-app