B4A Library ICOSWorldForecast 3.50

grant1842

Active Member
Licensed User
Longtime User
I have the same problem with the emulator I put it on a 2.2 phone and it worked well

Sent from my SCH-S720C using Tapatalk 2
 

walterf25

Expert
Licensed User
Longtime User
Work Around for 5 day forecast

Hi All, for those interested i wrote this little sub to fix an issue when getting the 5 day forecast with this library, i'm not sure if there's anything i did wrong but i could not seem to find a way to do this with the library so i decided to do it this way.

Basically when you use this code like this

B4X:
   l1.Text=a.Full5DayName(0)&CRLF&a.FCDate(0)
   l3.Text=a.Full5DayName(1)&CRLF&a.FCDate(1)
   l5.Text=a.Full5DayName(2)&CRLF&a.FCDate(2)
   l7.Text=a.Full5DayName(3)&CRLF&a.FCDate(3)
   l9.Text=a.Full5DayName(4)&CRLF&a.FCDate(4)
the name of the day doesn't match the Date, check the image below!


I needed a way for the days to match the dates so here it is, if anyone has a more efficient and cleaner way to fix this i'd like to hear from you!

here is how i fixed this issue!

B4X:
Sub GenerateDays
Dim day11 As Int
Dim daycount As Int 
Dim dayslist As List 
Dim today As Long
dayslist.Initialize
dayslist.AddAll(Array As String("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"))
today = DateTime.Now
day11 = DateTime.GetDayOfWeek(today)
daycount = day11 - 1
For i = 0 To 3
day.Add(dayslist.Get(daycount))
daycount = daycount + 1
If daycount = 7 Then
daycount = 0
day.Add(dayslist.Get(daycount))
daycount = daycount + 1
End If
Next
Return day
End Sub

and here is how i call the sub and fill in the 5 day forecast!

B4X:
Dim Nextdays as list
GenerateDays
nextdays.Initialize 
nextdays.AddAll(Array As String(day.Get(0), day.Get(1), day.Get(2), day.Get(3), day.Get(4)))


day1.text = nextdays.Get(0)&CRLF&ics.FCDate(0)
day2.text = nextdays.Get(1)&CRLF&ics.FCDate(1)
day3.text = nextdays.Get(2)&CRLF&ics.FCDate(2)
day4.text = nextdays.Get(3)&CRLF&ics.FCDate(3)
day5.text = nextdays.Get(4)&CRLF&ics.FCDate(4)

and here's a screenshot of how it should look!


Hope this helps someone

Cheers,
Walter
 

lonleystar

Well-Known Member
Licensed User
Longtime User
Hi walter, Why would you create a routine when already is there Short5DayName?

Use Short5DayName instead Full5DayName that is all.

best regard

G.Salvi
 

walterf25

Expert
Licensed User
Longtime User
five day forecast

Hi Lonelystar, the routine i created is not to get the shortnames for the days, it is simply to make the days match with the dates, look at both images and you will see what i mean!

Cheers,
Walter
 

Paulsche

Well-Known Member
Licensed User
Longtime User
Problem under Android 2.2

I have now bought a used Smartphone Dellwith Android 2.2.2 for testing.
On the hardware with Android 2.2.2 , the library is not run, even the demos not run.

The APP is force closed.

when i take out wetter.Initialize("wetter")
the APP runs korrekt.

It may be that the problem is on my local PC? Java installation?


--------- beginning of /dev/log/main


** Activity (main) Create, isFirst = true **


Exception!!! threadid=1: thread exiting with uncaught exception (group=0x4001d858)


main_activity_create (java line: 241)
java.lang.NoClassDefFoundError: android.os.StrictMode$ThreadPolicy$Builder


at com.giuseppe.salvi.icos.library.weather.ICOSWorldForecastWrapper.Initialize(ICOSWorldForecastWrapper.java:77)
at giuseppe.salvi.icosworldforecast2.main._activity_create(main.java:241)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:165)
at giuseppe.salvi.icosworldforecast2.main.afterFirstLayout(main.java:84)
at giuseppe.salvi.icosworldforecast2.main.access$100(main.java:16)
at giuseppe.salvi.icosworldforecast2.main$WaitForLayout.run(main.java:72)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)
 
Last edited:

Paulsche

Well-Known Member
Licensed User
Longtime User
Android 2.2 Test

I have now found on my Dell Streack with Android 2.2, that ICOSWorlsForcast Library runs in version 2.03 + 2.04, and not with version 2.5 .
 

lonleystar

Well-Known Member
Licensed User
Longtime User
I have now found on my Dell Streack with Android 2.2, that ICOSWorlsForcast Library runs in version 2.03 + 2.04, and not with version 2.5 .
hi paulsche i fix the library now work also with android 2.0. I'm sorry if I could not answer before because I'm studying Deutsch.

Tut mir leid, daß ich nicht vorher antworten konnte, habe Deutsch gelernt.

dont forget to rename from .zip to .rar

best regard

G.Salvi


Gruß G.Salvi
 

grant1842

Active Member
Licensed User
Longtime User
Thanks for all your support.

Did you find a way to use this in a service yet.

Thanks allot.
 

Paulsche

Well-Known Member
Licensed User
Longtime User
thanks for the update, :icon_clap:
my App now works under Android 2.2 .

Meine App funktioniert nun wieder unter Android 2.2.

danke.

Und noch viel Erfolg beim deutsch lernen !
 

lonleystar

Well-Known Member
Licensed User
Longtime User
Will this lib support the POP: 96% in a future release ?
Thanks
hi grant1842, What u mean for POP: 96% in a future release.

I'm learning German and I'm a bit confused with 3 languages (Italian, English, German)

please tell me more about it.


best regard


G.Salvi
 

grant1842

Active Member
Licensed User
Longtime User
Ok.
On the website there is a P.O.P.
POSSIBILITY OF PRECIPITATION

I did not see support for it in the lib.
Thanks for your hard work.
Sent from my SCH-S720C using Tapatalk 2
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…