← SalahSky

Changelog

What changed in each release, and why. Written for anyone who wants to know what was actually wrong, not only that something was fixed.

1.0 (8)

The Hijri date follows the crescent, and battery problems fixed

10 October 2026

This update fixes battery problems, makes the adhan more reliable, and dates the Hijri calendar by the moon sighting in your country. Prayer time calculations are unchanged.

fixBattery problems fixed

The app kept refreshing the weather and the widgets over and over in the background. That used battery, and some phones then stopped the app, and the adhan with it. The refresh now runs only when it is needed.

fixA more reliable adhan

Repairing the schedule now works again, including after turning notifications off and back on.

newThe Hijri date follows the moon sighting in your country

In Morocco, Mauritania, Nigeria, Oman, Pakistan, India, Sri Lanka and Bangladesh the month starts the day after the crescent can be seen there, so the date can differ by a day from Saudi Arabia. Other countries keep the Umm al-Qura calendar. If your country announces a different day, choose +1 day or −1 day in Settings › Display.

fixNotifications off means every notification

Some notifications still arrived after notifications were turned off in the app. Turning them off now turns off every one of them.

fixBack returns to the home screen first

From another tab, the Back button now goes to the home screen before it closes the app.

fixRounded widget corners on more phones

On Android 12 and later, widgets now have rounded corners even on home screens that do not round them.

fixThe adhan screen shows the current prayer

If the adhan screen was still open when the next adhan started, it showed the earlier prayer. It now shows the prayer that just started.

1.0 (7)

Stop the adhan from the screen, and a new daylight saving setting

4 October 2026

This update brings back the adhan screen with its Stop button, adds a daylight saving setting, and makes the setup reminder clearer. Prayer time calculations are unchanged.

fixThe adhan screen is back

On some phones the adhan only showed as a notification, with no easy way to stop it. The adhan screen now appears again with a Stop button. If you are using your phone at that moment, a notification with Stop and Open stays at the top of the screen instead.

newDaylight saving time setting

When a country changes its clock, some phones take time to follow, and prayer times could be shown one hour off even though the adhan played on time. In Settings › Times, choose Automatic, +1 hour or −1 hour so the times shown in the app, the widgets and the notifications match your local time.

fixClearer setup reminder

If a setting the adhan needs is still off, a reminder now arrives one hour after setup instead of three, and once more the next day if it is still needed. It names exactly which settings are missing, in English, Arabic and French.

1.0 (6)

Back on every phone that had it, and nothing left for Play to flag

24 September 2026

1.0 (5) asked for Android 8, and Play counted 1,406 devices it could no longer serve. This release asks for Android 7 again, and makes the parts that needed 8 work on 7 instead of leaving 7 out. The rest is what Play's pre-launch report and the build's own checks found, fixed where it came from rather than silenced.

fixAndroid 7 phones get the app again

Notification channels, the qibla's vibration pattern and the hardware picture behind the shared card are Android 8 features, and the code used them without asking which Android it was running on. 1.0 (5) answered that by dropping Android 7. Each of them now checks instead: channels are created from 8, the qibla buzz uses the older vibration call on 7, and the shared card only asks for a hardware picture where one exists. Every phone that had the app can update it.

newThe Qibla screen turns with the phone

It was locked to portrait, and Play reads that lock as "needs a portrait screen": TVs, cars and some tablets could not install the app at all. The screen turns now. The compass accounts for the rotation, so the heading is still measured from the top of the screen as you hold it, and the dial fits whichever side is shorter.

newA themed icon on Android 13 and later

With themed icons switched on, Android tints each icon from a one-colour layer the app provides. The app provided none, so it showed as a plain disc. It has one now: the crescent and mosque, cut from its own artwork.

fixWidget text is no smaller than Android recommends

The smallest widget lines were 9 and 10, under the 11 Android sets as the floor for readable text. They are 11 now. The room for them comes out of the margins around the dividers and the progress bar, so the widgets stay the size they were.

fixThe screen edges follow Android 15

Play's pre-launch report named three calls Android 15 retired: the two that colour the status and navigation bars, and the old camera-cutout mode. The app still draws under the bars, but their colours now come from the theme, set per Android version, so nothing retired is called on any phone.

fixThe adhan screen shows over the lock screen one way, not two

From Android 8.1 an app says it may appear over the lock screen through the screen itself; before that, through window flags. The adhan screen did both on every phone. It now uses the one that belongs to the phone's version, and on Android 16 it asks to start from the background in the terms 16 expects.

fixThe Fajr setting names tathwib

The help bubble under the Fajr setting opened with "tarqiya", a word that needed an explanation of its own. It now names the addition by the word someone looking for it would use, tathwib, and then says what it adds to the adhan.

perfA missing adhan recording fails the build, not Maghrib

The recordings, weather icons and widget backgrounds were looked up by name while the app ran, so the build had to keep every one of them blindly and could not tell when one was missing. Each is now named in the code. The build keeps what is used, drops seventeen pictures and layouts nothing used, and refuses to finish if a recording is not there.

1.0 (4)

The Fajr adhan says the Fajr line, and silent means silent

23 September 2026

Two things the app claimed but did not do: the call for Fajr is not the call for any other prayer, and a phone on silent should not be the one thing in the room making a noise. Plus a compass that survives a phone with no rotation sensor, and widgets that are no longer cut off by the launcher.

new"As-salatu khayrun min an-nawm" is said in the Fajr adhan

The line belongs inside the adhan for Fajr, after "hayya ala al-falah" and before the closing takbir. None of the bundled recordings is a Fajr recording, so with any of them it was never heard. The app now inserts it in whichever recording you already chose: the recording is paused at a point measured in its own audio — the pause the muezzin leaves after the second "hayya ala al-falah" — the line is said in the voice of the muezzin of Quba mosque, and the recording carries on. One point per recording, and the line is matched to that recording's loudness so it is the same voice at the same distance rather than a clip cutting in. Fajr only, off nowhere else, and it can be turned off under the reciter in settings.

fixSilent mode now calls the prayer without sounding it

With the setting on, the adhan still played. What it silenced was not the part that makes the noise. The call now arrives as it always did — full screen, notification, stop button — with the sound left out and a "silent mode" badge on the screen, so a missing adhan reads as a setting you chose rather than an alarm that failed.

newThe Qibla compass works on phones with no rotation sensor

It asked for TYPE_ROTATION_VECTOR and gave up when the phone had none, which on those phones meant a compass screen with no compass. It now falls back to the accelerometer and magnetometer directly and computes the same heading from them.

newThe Qibla screen says when the field is being disturbed

A magnetometer near a laptop, a magnetic case or a car dashboard is confidently wrong, and calibrating cannot fix it. The app now compares the measured field strength against what it should be at your location, warns when the two disagree, and withholds the buzz that says "this is the direction" — landing on a disturbed reading is worse than not landing.

fixThe Qibla needle is no longer ninety degrees out in landscape

The heading is measured against the top edge of the device. When the activity rotated, the dial's own "up" was no longer that edge, so the whole needle turned with the screen. The compass is portrait now, which a qibla compass has no reason not to be.

fixWidgets are no longer cut off on the home screen

Three widgets declared a minimum height of 110dp for content that measures up to 180dp, and a launcher believes that number: it handed over a cell too short and Android clipped what did not fit — the countdown on a Pixel, more on a grid with shorter rows. Every widget now declares the height it actually needs, and cannot be dragged back down into clipping.

fixWidget text survives a large system font size

The widgets sized their text in sp, which scales with the phone's font setting; at the largest settings the prayer names and times grew past the space they had and pushed each other out of the widget. They are sized in dp now, on one line each, and anything too long ends in an ellipsis instead of shoving the rest away.

perfWidget pictures are half the size they were

The sky and the clock face were drawn as full-colour bitmaps and sent to the launcher through Binder, which has a hard limit on how much it will carry. They are drawn at RGB_565 and the clock face at 320px instead of 420, which is the same picture on a home screen and comfortably inside that limit.

fixNotification categories are named in the app's language

They were created once, in English, with whatever text the app shipped that day — and a channel that already exists keeps its old name forever. They are named from the translations now, and renamed on upgrade rather than left as they were.

fixThe weather shown is the weather for this hour

The forecast was read at the hour it had been fetched, so a screen opened in the evening could describe the afternoon it was fetched in.

fixThe app opens on the sky it last showed

It started from a clear sky while the forecast loaded, so almost every launch began with a guess that was then corrected in front of you. It now opens on the last sky it actually saw, decodes the picture before the screen asks for it — off the main thread — and fades from one sky to the next.

fixCity search names one place once

The same town appeared several times when it was spelled several ways, two towns of one name were impossible to tell apart, and no card said which country it was in. Each place is now offered once, with its country, and two of one name are separated by what is around them. Names are translated in both directions, so a city typed in English is found in Arabic and the other way round.

fixCeuta, Melilla and Jerusalem are named correctly

Ceuta and Melilla were listed outside Morocco, and Jerusalem's country came from whatever the geocoder returned. Both are now the app's own answer.

fixThe widget's sky turns with the hour, and night starts at sunset

Night began when the forecast window closed rather than when the sun went down, an overcast night was drawn as a clear one, and hail had no icon of its own. The widget and the app now draw a sky by the same rule.

newThe day's card can be shared as a picture or a page

Squared off, at twice the resolution, with the day, the month and the sky in it — so what leaves the app is readable where it lands.

1.0 (3)

Eleven fixes, and the weather finally agrees with itself

31 August 2026

Most of this release is one theme: two parts of the app describing the same weather differently, or a value that was written but never read.

fixThe reminder before prayer now arrives on the minute

It asked the system for an exact alarm and the system wrote down an inexact one — armed ten minutes out it came back with a seven-minute window, so the reminder could land any time inside it, or not at all in Doze. It now uses the same alarm-clock tier the adhan uses.

fixThe adhan no longer plays twice

The notification shown while the adhan plays sat on a channel whose own sound was the adhan. On phones that honour that — Samsung does — you heard it twice, a fraction of a second apart. That notification is silent now; the sounding channel remains only for when playback is impossible.

fix"Mainly clear" no longer draws a cloud

Weather code 1 was grouped with "partly cloudy" in the icon map, so the words said one thing and the picture another.

fixFog at dawn stops looking like a sunrise

Near sunrise and sunset the background ignored the weather entirely. A clear sky should not lose those two moments — a thunderstorm should not lose to them either.

fixThe home screen icon updates without leaving the screen

Image loading kept the first picture it ever drew, so the icon only changed after the screen was rebuilt — which is what switching tabs and coming back does.

fixThe widget shows the real weather

The app had a function for handing the widget its icon, temperature and sky. It was never called. The widget also only accepted a background whose name ended in .png, and every sky in the app is a .webp.

fixWidget countdown labels are translated

"in" and "remaining" were written into the layout in English and never replaced, so an Arabic widget still read them in English.

fixCity cards no longer open as a sunny day

A card with no forecast yet fell back to weather code 0 — clear sky — so a list opened as a row of suns and corrected itself one by one. Forecasts also load together now instead of one after another.

fixSwitching city no longer keeps the last city's weather

Choosing Toronto could leave the previous city's sunny reading on screen under Toronto's name until the new one arrived.

fixChanging the calculation method updates every screen

The prayer page recalculated on each read; the home card read a stored value that nothing refreshed. The same app disagreed with itself about when Asr was.

fixCity cards fit their text

In the two-column grid the high and low temperatures wrapped across three lines and stretched the card. They are one line now.

1.0 (2)

Google Play readiness

30 August 2026

Store metadata, and the build settings Play's optimization report asks for.

fixThe adhan test played nothing

Sound names are written with hyphens and the files on disk use underscores, so the test button built a path that could never resolve — and reported no error.

fixA custom adhan can be a file from your phone

The setting asked for a link to an mp3; it now opens the system file picker, and keeps read access so the alarm can still open the file weeks later.

newThe Qibla compass buzzes when you face the Kaaba

Through the vibrator rather than touch feedback, so it works with the phone's touch-vibration setting switched off.

perfSmaller, faster builds

R8 was running with optimization disabled by the default configuration file. Enabling it, along with repackaging and precise resource shrinking, cut the app and sped up a cold start.