Description
This is a wrapper that makes getting weather information from OpenWeatherMap a whole lot easier. What seperates this from other wrappers is that, in addition to the basic weather information, it allows free openweathermap user to get up to 5 days of daily forecast information, which typically requires a developer account with OpenWeatherMap(180USD/month). Please note that this is not a hack, instead the library calculates the 3-hour forecast information that free users get, summarize those values, and return it as daily forecast.
open-weather-retriever-z alternatives and similar packages
Based on the "Tools" category.
Alternatively, view open-weather-retriever-z alternatives based on common mentions on social networks and blogs.
-
AndResGuard
proguard resource for Android by wechat team -
Freeline
A super fast build tool for Android, an alternative to Instant Run -
dex-method-counts
Command-line tool to count per-package methods in Android .dex files -
scalpel
A surgical debugging tool to uncover the layers under your app. -
ViewInspector
View Inspection Toolbar for Android Development -
maven-android-sdk-deployer
A tool to install components of the Android SDK into a Maven repository or repository manager to use with the Android Maven Plugin, Gradle and other tools. -
AdaptiveTableLayout
Library that makes it possible to read, edit and write CSV files -
vectalign
Tool for create complex morphing animations using VectorDrawables (allows morphing between any pair of SVG images) -
android-resource-remover
A simple utility to remove unused resources in your Android app to lower the size of the APK. It's based on the Android lint tool output. -
Uber Apk Signer
A cli tool that helps signing and zip aligning single or multiple Android application packages (APKs) with either debug or provided release certificates. It supports v1, v2 and v3 Android signing scheme has an embedded debug keystore and auto verifies after signing. -
AndroidLocalizationer
This is a Android Studio/ IntelliJ IDEA plugin to localize your Android app, translate your string resources automactically. -
scrollscreenshot
Make Android screenshots of scrollable screen content -
Debug Bottle
🍼Debug Bottle is an Android runtime debug / develop tools written using kotlin language. -
osmtracker-android
GPS tracking tool for OpenStreetMap -
Let
Annotation based simple API flavored with AOP to handle new Android runtime permission model -
android-gradle-template
Combines tools for fast android app devlopment -
PDFCreatorAndroid
Simple library to generate and view PDF in Android -
density-converter
A multi platform image density converting tool converting single or batches of images to Android, iOS, Windows or CSS specific formats and density versions given the source scale factor or width/height in dp. It has a graphical and command line interface and supports many image types (svg, psd, 9-patch, etc.) aswell as some lossless compressors like pngcrush. -
USB-Device-Info
This application will provide information about almost all currently plugged-in USB devices. -
enroscar
A set of Android tools that facilitate apps development -
TaggerString
TaggerString is very light library which allows to build dynamic string resource in much more readable way. -
release-android-library
Remote script to create a maven compatible release of an android library (aar) -
Layout-to-Image
Android Layout (Relative Layout, Linear Layout etc) to Image -
AndroidGradleStarter
Android Gradle Starter -
PackageHunter
:inbox_tray: [Android Library] Hunt down all package information -
NotificationLog
Use an expanded notification as a makeshift Android log output console -
Uber Adb Tools for Android
A tool that enables advanced features through adb installing and uninstalling apps like wildcards and multi device support. Useful if you want to clean your test device from all company apks or install a lot of apks in one go. Written in Java so it should run on your platform. -
Java7-on-Android
Java 7 features backported to Android 2.2+ -
Shutdown
An android library that handles the closing of your app interactively. -
Android-Intent-Library
A library which will save you a lot of time from writing the same intent creation code. it consist of many intent creation codes like Share, Contacts, Email and etc, which you can easily use. -
AnUitor
AnUitor is a result of my rebranding experiences of one android app. -
IntroApp
This Android app adds splash screen slides to make a great intro for an app. -
change-scene
Switch between different layouts for different states, easily. -
gplay.ws
create a badge to promote your own Android application in a single step
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of open-weather-retriever-z or a related project?
README
open-weather-retriever-z
This is a wrapper that makes getting weather information from OpenWeatherMap a whole lot easier. What seperates this from other wrappers is that, in addition to the basic weather information, it allows free openweathermap user to get up to 5 days of daily forecast information, which typically requires a developer account with OpenWeatherMap(180USD/month). Please note that this is not a hack, instead the library calculates the 3-hour forecast information that free users get, summarize those values, and return it as daily forecast.
Getting Started
Dependency
Step 1: Add jcenter to your repository in project's build.gradle file:
repositories {
...
...
jcenter()
}
Step 2: In module's build.gradle add the following dependency:
dependencies {
...
...
compile 'com.ftoslab:openweatherretrieverz:0.1.4'
}
Available Information
Current Weather Information:
- current temperature
- current maximum temperature
- current minimum temperature
- short and long weather description
- weather icon link from OpenWeatherMap
- pressure
- humidity
- windspeed
- 3-hour rain volume
- 3-hour snow volume
5 Day Forecast:
- daily average temperature
- daily high temperature
- daily low temperature
- weather description
- weather icon link from OpenWeatherMap
- average pressure
- average humidity
- average wind speed
- rain volume projected
- snow volume projected
Tools:
- convert all units to Metric
- convert all units to Imperial
- temperature converter
Initialization
// Initialize OpenWeatherRetrieverZ by passing in your openweathermap api key
OpenWeatherRetrieverZ retriever = new OpenWeatherRetrieverZ(API_KEY);
/*
You can retrieve weather information with either OpenWeatherMap cityID or geolocation(Latitude, Logitude)
*/
retriever.updateCurrentWeatherInfo("6167865", new WeatherCallback() {
@Override
public void onReceiveWeatherInfo(CurrentWeatherInfo currentWeatherInfo) {
// Your code here
}
@Override
public void onFailure(String error) {
// Your code here
}
});
retriever.updateDailyForecastInfo("6167865", new DailyForecastCallback() {
@Override
public void onReceiveDailyForecastInfoList(List<DailyForecastInfo> dailyForecastInfoList) {
// Your code here
}
@Override
public void onFailure(String error) {
// Your code here
}
});
Both updateCurrentWeatherInfo and updateDailyForecastInfo are async, which means the main thread won't hang there and wait for the operation to finish. Instead, callback functions will be called when the information became available or when something went wrong.
Example
You can find an example app here
Notes
The ArrayList you get from updateDailyForecastInfo starts from the same day you request it (index 0, day 1), and you will be able to get forecast up until day 6 around the same time, which means the forecast on day 6 might not cover the whole day. This is because as a free user, you only get 40 pieces of 3-hour forecast information (5 days starting from the time you request it). To check how many pieces of 3-hour data for a particular day, you can make use of the function getDataCount() on DailyForecastInfo.
Contribution
The project is still in its preliminary phase, any contribution is welcomed and appreciated. I will review all the pull requests. If you find any bug or just wanna throw in a thought, feel free to create an issue!
License
Copyright 2017 FTOSLab.
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.
*Note that all licence references and agreements mentioned in the open-weather-retriever-z README section above
are relevant to that project's source code only.