[Android Themes] wblewett:
looks great

This looks really great, I'm setting it up now.

UPDATE1:

I made the following changes:

Issue 1: I was having trouble returning any value when my %LOCL was a two word value.

However, I later realized the two word location was not my real problem. See the UPDATE 2 below to see why none of these changes are reliable.

A. Added new Actions 11-14

11. Variable Set -> %LIN To 41

12. Read Line -> File sync -> Line %LIN -> To Var %HTTPD1

13. Variable Split -> %HTTPD1 -> Splitter "

14. Variable Set -> %LOCZIP to %HTTPD14

(I also wanted to show the State initials on my widget so I added:)

15. Variable Set -> %LIN To 32

16. Read Line -> File sync -> Line %LIN -> To Var %HTTPD1

17. Variable Split -> %HTTPD1 -> Splitter "

18. Variable Set -> %LOCST to %HTTPD14

B. Modified Action 20 (originally 12) to use Zip Code instead of %LOCL

20. HTTP Get -> Server: .../ig/api?weather=LOCZIP (I'm too new to post a URL, the beginning of the address is unchanged from OP).

C. Update Action 21 (originally 13) to reflect shifted Action Numbers

21. Goto Action Number 42 (originally 34)

Issue 2: I don't like getting the "neighborhood" name instead of the name of the City I'm in.

Two quick changes (changing line 21 to 16 and line 22 to 17). Here's what I ended up doing: UPDATE2: HOWEVER, the "neighborhood" information is not always returned. So for those times when it was not I ended up pulling the County Name instead of City Name. See UPDATE 2 below.

3. Variable Set -> %LIN To 21 (instead of 16)

...

7. Variable Set -> %LIN To 22 (instead of 17)

Issue 3: Fahrenheit instead of Celsius

26. Variable Set -> %TNOW to %HTTPD14 (Originally Action 18, instead of %HTTPD16)

(Forecast Temperatures only displayed in Fahrenheit for me, so no other changs needed)

UPDATE2:

Okay then... Apparently Google decides that sometimes it will list a "neighborhood" and sometimes it doesn't. This means relying on the line numbers of the first HTTP Get is

not

reliable. This may be a U.S. Problem only, I'm not sure.

STEP 1: Since I had to ditch the line number references I started poking around online. I found there are currently only two services offering free "reverse geocoding" (looking up address by lat/long). Since I had found Google's to be unreliable, I went to the alternative Geonames(dot)org. Good news and bad news, it's output is much cleaner than Google's. But it requires a (free) username, and we loose the "short name."

Option A - Geonames

1. Split variable -> %LOCN | Splitter ->,

2. Set variable -> %LAT -> To %LOCN1

3. Set variable -> %LON -> To %LOCN2

4. HTTP Get -> Server: api(dot)geonames(dot)org/findNearestAddressJSON?lat=%LAT&lng=%LON&username=whatever_your_name_is

5. Go to -> task 10 | if -> %HTTPR=-1

6. Split variable -> %HTTPD | Spliter -> ,

7. Set variable -> %LOCZIP To %HTTPD6 (Pulling the Zip Code)

8. Set variable -> %LOCST To %HTTPD14 (Pulling the State Abbreviation)

9. Set variable -> %LOCL To %HTTPD30 (Pulling the Place Name)

10. HTTP Get -> Server: www(dot)google(dot)com/ig/api?weather=%LOCZIP

...

(This then picks up with Action #13 in the original post.)

Option B - Google (again)

- Google still gives a ton of information, but since it doesn't return the same thing everytime I can't count on it. (Simply returning a null for the neighborhood when no info is available would be preferable to omitting it all together, since the lines would be the same). Anyways, I had to essentially re-write Actions 3-11 of the original and 3-18 of my modifications above.

2. Go to -> task 7 | if -> %HTTPR=-1

3. Split variable -> %HTTPD | Spliter -> formatted_address

4. Set variable -> %HTTPD1 -> To %HTTPD4

5. Split variable -> %HTTPD1 | Spliter -> "

6. Set variable -> %LOCL -> %HTTPD12

Luckily, Google's weather API seems to be able understand about anything you can throw at it for your input location, regardless of format. That's good because we are going to be throwing slightly different things at it depending on if a neighborhood is returned or not. If we get a neighborhood value it's going to be "City, ST ZIP, USA" Otherwise it's "City, ST, USA." So I'm going to have to pull the City Name and other info from the second HTTP Get.

7. HTTP Get -> Server: www(dot)google(dot)com/ig/api?weather=%LOCL

8. Go to -> action __ | if -> %HTTPR=-1

9. Split variable -> %HTTPD | Spliter -> forecast

10. Set variable -> %HTTPD1 -> To %HTTPD2

11. Split variable -> %HTTPD1 | Spliter -> "

12. Set variable -> %LOCL -> HTTPD12 (This is going to include the State name with the City name. If you don't want that you can split it again with a comma as the splitter).

13. Set variable -> %LOCZIP -> HTTPD14 (Zip Code - Optional).

(This then picks up with Action #15 in the original post.)