YWheaterData

A wrapper for Yahoo Wheater APIS

License

License

Categories

Categories

Data
GroupId

GroupId

com.github.leonardoxh
ArtifactId

ArtifactId

ywheaterdata
Last Version

Last Version

0.2
Release Date

Release Date

Type

Type

aar
Description

Description

YWheaterData
A wrapper for Yahoo Wheater APIS
Project URL

Project URL

https://github.com/leonardoxh/ywhaterdata
Source Code Management

Source Code Management

https://github.com/leonardoxh/ywhaterdata

Download ywheaterdata

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.leonardoxh/ywheaterdata/ -->
<dependency>
    <groupId>com.github.leonardoxh</groupId>
    <artifactId>ywheaterdata</artifactId>
    <version>0.2</version>
    <type>aar</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.leonardoxh/ywheaterdata/
implementation 'com.github.leonardoxh:ywheaterdata:0.2'
// https://jarcasting.com/artifacts/com.github.leonardoxh/ywheaterdata/
implementation ("com.github.leonardoxh:ywheaterdata:0.2")
'com.github.leonardoxh:ywheaterdata:aar:0.2'
<dependency org="com.github.leonardoxh" name="ywheaterdata" rev="0.2">
  <artifact name="ywheaterdata" type="aar" />
</dependency>
@Grapes(
@Grab(group='com.github.leonardoxh', module='ywheaterdata', version='0.2')
)
libraryDependencies += "com.github.leonardoxh" % "ywheaterdata" % "0.2"
[com.github.leonardoxh/ywheaterdata "0.2"]

Dependencies

compile (1)

Group / Artifact Type Version
com.squareup.okhttp : okhttp jar 2.3.0

Project Modules

There are no modules declared in this project.

Android Arsenal

Yahoo Weather Data

Tired of use fuck yahoo XML apis ? This dependency is what you need

I use in my recent apps this two classes to get Yahoo API informations about the locale temperature so, it's time this become a library...

This library is in alpha stage expect bugs and hard changes on a future. This library missing things like documentation, unit tests, and toons of other features, but remeber it's the first release.

Initialize the library on your Application class:

  public class App extends Application {
  
    private static final String YAHOO_API_KEY = "YOUR_API_KEY";
  
    @Override public void onCreate() {
      super.onCreate();
      YahooWeatherClient.init(YAHOO_API_KEY);
    }
  
  }

Curently the library doesn't get your location :| so, you need do this by hand, like this snippet:

  public class WeatherActivity extends Activity implements WeatherCallbacks {
  
    private YahooWeatherClient wheaterClient = new YahooWeatherClient();
    
    /* ... */
    
    @Override public void onLocationChanged(Location location) {
      wheaterClient.locationInfoForLocation(location, this);
    }
    
    @Override public void wheaterDataReceived(@NotNull LocationInfo locationInfo, @NotNull WeatherData weaterData) {
      //Use the WeatherData properties
    }
    
    @Override public void weatherDataError(@Nullable LocationInfo location) {
      //If the location info is null it's an error
      //If the location info is non null the principal woeid was not found so retry with an alternative woeid
      if (location != null && !location.getWoeids().isEmpty()) {
        //Use one of the alternatives woeids
        wheaterClient.weatherForWoied(location.getWoeids().get(0));
      }
    }
  
  }

The library is available on Maven Central :D Just add this to your buildscript

Gradle

  dependencies {
    compile 'com.github.leonardoxh:ywheaterdata:0.2'
  }

Licence:

Copyright 2015 Leonardo Rossetto

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.

Versions

Version
0.2
0.1