Other Basic4android v3.00 BETA is released

Erel

B4X founder
Staff member
Licensed User
Longtime User
Hi all!

The first beta version of Basic4android v3.00 is released.

The main new feature in this version is the rapid debugger: Rapid Debugger
The rapid debugger makes it much easier and quicker to test and debug your code.

Other improvements:
  • Better support for large number of background tasks. This update (together with an update to the Http library) allows you to send hundreds of requests at once.
  • B4A-Bridge - Last 5 IP addresses are stored. F2 connects to the last one. Some other small improvements in the connection process.
  • For loop performance improvement.
  • Activity / Panel.GetAllViewsRecursive. Provides a simple way to iterate over all views.
  • Color picker. Right click in the code editor to show it.
  • List.SortTypeCaseInsensitive method.
  • PhoneSms.Send2 - send sms without notifications.
  • Screenshots tool - Copy to clipboard.
  • Compilation window closes automatically when it loses focus.
  • Bug fixes and other minor improvements (including the fix for Android 4.3 back key issue and the IDE scrolling issue).
Customers (with an enterprise license) who are eligible for a free upgrade should receive an email with a download link.

The rapid debugger feature is the most complicated improvement since B4A v1.00. This is a beta version. It is more than likely that you will encounter issues with it...
Please post any issue in a new thread in the questions forum tagged with the Beta prefix.

v3.00 BETA #6 is now available in the same link. It fixes the issues discussed in the forum.

You can install this version together with other versions of Basic4android.

Thank you all for your help!
:)
 
Last edited:

msains

Member
Licensed User
Longtime User
Thank you - So far so good. I'm using it on a current project right now.
I will certainly let you know if I find anything you might want to know.

You guys are absolutely awesome.
I love the product and the community you have grown around it and the way we can interact

Thanks again
 
Upvote 0

stefanoa

Active Member
Licensed User
Longtime User
i've this error in Debud (rapid) on line: For n = 0 To fileList.Size - 1

B4X:
Parsing code.                          1.38
Compiling code.                        2.25
Compiling layouts code.                0.17
Generating R file.                      0.79
Compiling debugger engine code.        Error
B4A line: 341
For n = 0 To fileList.Size - 1
javac 1.6.0_45
shell\src\bloomob\mylifebook\birthdays_subs_0.java:1216: illegal start of expression
for (_n = BA.numberCast(int.class, 0); (step201 > 0 && _n.<Integer>get().intValue() <= limit201) || (step201 < 0 && _n.<Integer>get().intValue() >= limit201); _n = RemoteObject.createImmutable((int)(_n.<Integer>get().intValue() + step201))) {
                                                                                                                                                                                                          ^
1 error

in module:

B4X:
Sub ListFolderContent(folder As String) As String
  Dim fileList As List
  Dim n As Int

  fileList = File.ListFiles(path1)
  fileList.Sort(True)

  For n = 0 To fileList.Size - 1
    file1 = fileList.Get(n)
        ListView1.AddSingleLine(file1)
  Next
End Sub
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
Hi Erel,

It is amazing!!! I am enjoying with B4A honestly and ready to pay for 2 years more :)
Thanks for your hard work.

I run my current project with 3.0, it gives me error with Rapid Debug Mode, while with Release Mode it does not give any error. My comments are highlighted in Green color, and I posted the code from the error line for your reference as well.

size 0 0
size 720 1230 '// <-- I DON'T KNOW WHAT IT IS HERE (MAYBE MY DEVICE SCREEN SIZES?)
** Activity (main) Create, isFirst = true **
Error occurred on line: 24 (ctoast) '// <-- I am using CToast module, and the code at this line is (it does not give error in Release Mode): myFont = Typeface.LoadFromAssets("RobotoB.ttf")
mainafterFirstLayout (java line: 98)
java.lang.IllegalArgumentException: invalid value for field
at java.lang.reflect.Field.setField(Native Method)
at java.lang.reflect.Field.set(Field.java:588)
at anywheresoftware.b4a.shell.Shell.setField(Shell.java:409)
at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:219)
at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:170)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:93)
at com.adcvn.mobiblocker.main.afterFirstLayout(main.java:98)
at com.adcvn.mobiblocker.main.access$100(main.java:16)
at com.adcvn.mobiblocker.main$WaitForLayout.run(main.java:76)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4441)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:823)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:590)
at dalvik.system.NativeStart.main(Native Method)

ignoring runMethod: Initialize
ignoring runMethod: Initialize
ignoring runMethod: Initialize
ignoring runMethod: AddView
ignoring runMethod: AddView
ignoring runMethod: Initialize
ignoring runMethod: AddView
ignoring runMethod: AddView
size 0 0
size 720 1230
** Activity (main) Create, isFirst = true **
An error occurred:
(Line: 70) Sub Activity_Create(FirstTime As Boolean)
'// <-- Again, it is second error. Why it also give error here? It is a start of a Sub only. Here the project is force closed.
java.lang.IndexOutOfBoundsException: index 2
size 0 0
size 720 1230
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = true **
size 720 1230
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = true **
size 720 1230
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = true **
size 720 1230 '// <-- Here I started the project again using normal Release Mode, and it does not give any error, the project can run normally as it is.
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
** Service (receiver) Create **
BroadcastReceiver has been initialized.
PhoneStateListener has been initialized.
** Service (receiver) Start **
Fatal signal 13 (SIGPIPE) at 0x00007d59 (code=0)
** Service (receiver) Start **
 
Last edited:
Upvote 0

stefanoa

Active Member
Licensed User
Longtime User
i've this error in Debud (rapid) on line: For n = 0 To fileList.Size - 1

B4X:
Parsing code.                          1.38
Compiling code.                        2.25
Compiling layouts code.                0.17
Generating R file.                      0.79
Compiling debugger engine code.        Error
B4A line: 341
For n = 0 To fileList.Size - 1
javac 1.6.0_45
shell\src\bloomob\mylifebook\birthdays_subs_0.java:1216: illegal start of expression
for (_n = BA.numberCast(int.class, 0); (step201 > 0 && _n.<Integer>get().intValue() <= limit201) || (step201 < 0 && _n.<Integer>get().intValue() >= limit201); _n = RemoteObject.createImmutable((int)(_n.<Integer>get().intValue() + step201))) {
                                                                                                                                                                                                          ^
1 error

in module:

B4X:
Sub ListFolderContent(folder As String) As String
  Dim fileList As List
  Dim n As Int

  fileList = File.ListFiles(path1)
  fileList.Sort(True)

  For n = 0 To fileList.Size - 1
    file1 = fileList.Get(n)
        ListView1.AddSingleLine(file1)
  Next
End Sub

i solved deleting "Dim n As Int"
 
Upvote 0

stefanoa

Active Member
Licensed User
Longtime User
Now i have another problem in compilation "Rapid" in "ClsActionBar":

The XML was improperly formatted. Please escape if necessary.

in lbl.Tag = -TextPosition (the problem is minus char)
B4X:
    If ButtonPosition < 0 Then
        lbl.Tag = -TextPosition    
    Else....

where TextPosition As Byte

and also in PnlHeight = -PnlHeight in "ClsCheckList" (the problem is minus char)
B4X:
PnlHeight = -PnlHeight
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
Just to add: my project is running also normally with Debug Mode (Legacy), and normal Release mode.
I already ran it several times to test. So I suspect error is caused by the Rapid Debug mode. Please check.

Thanks again.
 
Upvote 0

Eric H

Active Member
Licensed User
Longtime User
As a reminder, Erel asked for all problems and issues to be posted in the Questions forum as a new thread with the tag BETA.

Let's keep issues out of this thread and keep it for information and questions about the beta release.
 
Upvote 0

eelias

Active Member
Licensed User
Longtime User
There were a bug where a code module in a library always generate a requirement for a activity context, that is wrong, it only should need activity context if the library have such dependency either.

Is that fixed on this release?
 
Upvote 0

rbghongade

Active Member
Licensed User
Longtime User
Much awaited upgrade! Erel is great!!!
Again I want to express heartfelt gratitude towards Erel, who has brought Android app making to thousands of people like me!
Hooray!!!
 
Upvote 0

Mike Maurice

Member
Licensed User
Longtime User
i've this error in Debud (rapid) on line: For n = 0 To fileList.Size - 1

B4X:
Parsing code.                          1.38
Compiling code.                        2.25
Compiling layouts code.                0.17
Generating R file.                      0.79
Compiling debugger engine code.        Error
B4A line: 341
For n = 0 To fileList.Size - 1
javac 1.6.0_45
shell\src\bloomob\mylifebook\birthdays_subs_0.java:1216: illegal start of expression
for (_n = BA.numberCast(int.class, 0); (step201 > 0 && _n.<Integer>get().intValue() <= limit201) || (step201 < 0 && _n.<Integer>get().intValue() >= limit201); _n = RemoteObject.createImmutable((int)(_n.<Integer>get().intValue() + step201))) {
                                                                                                                                                                                                          ^
1 error

in module:

B4X:
Sub ListFolderContent(folder As String) As String
  Dim fileList As List
  Dim n As Int

  fileList = File.ListFiles(path1)
  fileList.Sort(True)

  For n = 0 To fileList.Size - 1
    file1 = fileList.Get(n)
        ListView1.AddSingleLine(file1)
  Next
End Sub


I get the SAME error for all For loops. Only errors when using the Debug Rapid mode.
 
Upvote 0

Beja

Expert
Licensed User
Longtime User
Thanks Erel for the great job.
Will check it this weekend..
BTW: I hope the final version will have an updated library with all the new creations.
 
Upvote 0
Top