🕜 ServerTimeAndroid is a light library to get real UNIX time from the Google server in Android. Sometimes phone's local date can be wrong so for the best accuracy it is better to get time from the server. It gets time from the Google server and always gets the correct date.
Add the maven library bucket to the dependencyResolutionManagement.repositories
block in settings.gradle.kts
file as follows:
dependencyResolutionManagement {
...
repositories {
...
maven("https://jitpack.io")
}
}
Install the library to the project in desired module's build.gradle.kts
file. Replace <current_version>
with the actual version:
implementation("com.github.raheemadamboev:server-time-android:<current_version>")
Get server time (callback API):
ServerTime().execute { time ->
when (time) {
ServerTime.Result.UNKNOWN_HOST -> {
// handle internet not working or error in host
}
ServerTime.Result.IO_EXCEPTION -> {
// handle io exception
}
else -> {
// time (milli seconds) was retreived successfully
// println(Date(time).toString())
}
}
}
Get server time (suspend API):
viewModelScope.launch {
val time = ServerTime().execute()
when (time) {
ServerTime.Result.UNKNOWN_HOST -> {
// handle internet not working or error in host
}
ServerTime.Result.IO_EXCEPTION -> {
// handle io exception
}
else -> {
// time (milli seconds) was retreived successfully
// println(Date(time).toString())
}
}
}
GoTest 250 000+ downloads in Google Play Store
Buxgalteriya schyotlar rejasi 50 000+ downloads in Google Play Store
Irregular Verbs 25 000+ downloads in Google Play Store
Designed and developed by raheemadamboev (Raheem) 2022.
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.