I'm happy to release a new version of B4A. The Android SDK and the underlying toolchain where updated with preparation for Android 14 (targetSdkVersion=34) requirements.
Many of the internal libraries and also external libraries were updated and now depend on the latest Android SDK resources.
The new version depends on Java 19.
Many of the features depend on an updated Android SDK.
Both are available here: https://www.b4x.com/b4a.html
The updated Google / Firebase SDK is considerably larger than before. B4A only adds the components that are part of the dependency tree, still you will see an increase in the app size in many cases. There isn't much that can be done about it. In some of the cases you can keep using the old Android SDK, however you might encounter compatibility issues.
Thank you @Erel,
So far everything is working 100% great. I've assembled 5 of my clients apps, my main 2D barcode app and my password manager app. I had to change the sdkmanager.bat location (added the file) as for example my password manager app uses the fingerprint scanner thus I needed to download androidx.biometric:biometric and something else for another app, but once installed the apps assembled 100% perfectly fine with absolutely no issues whatsoever. What can I say Erel, except that you have knocked it out of the ball park again. B4A V13.00 is stable for me and runs fast and smooth as always. When I get a chance to do so, I'll donate again.
I just downloaded everything, tried to compile and got this error which happens on every project I try. Any ideas if I have done something wrong? I definitely have the IDE paths pointing to JDK19 and SDK 34 See post below
B4X:
B4A Version: 12.80
Parsing code. (0.04s)
Java Version: 19
Building folders structure. (0.01s)
Compiling code. (0.05s)
Compiling layouts code. (0.04s)
Organizing libraries. (5.69s)
(AndroidX SDK)
Compiling resources (2.08s)
Linking resources (2.07s)
Compiling generated Java code. Error
An annotation processor threw an uncaught exception.
Consult the following stack trace for details.
java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
at androidx.lifecycle.LifecycleProcessor.getSupportedSourceVersion(LifecycleProcessor.kt:37)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$ProcessorState.checkSourceVersionCompatibility(JavacProcessingEnvironment.java:758)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$ProcessorState.<init>(JavacProcessingEnvironment.java:698)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.next(JavacProcessingEnvironment.java:823)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:919)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1262)
at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1377)
at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1234)
at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:916)
at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:317)
at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:176)
at jdk.compiler/com.sun.tools.javac.Main.compile(Main.java:64)
at jdk.compiler/com.sun.tools.javac.Main.main(Main.java:50)
Caused by: java.lang.ClassNotFoundException: kotlin.jvm.internal.Intrinsics
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 13 more
javac 19.0.2
Most likely found the problem, the download page still gives you B4A 12.80 No it's doesn't. Microsoft Edge is doing something stupid (what a surpprise!) Download with Firefox and get 13.00, download with Edge and get 12.80. Edge seems to have cached a previous download and is regurgitating that instead of downloading a new version. Sorry for the false alarm. I've thought this before but maybe B4A.exe should have the version number included, e.g. B4A-v13.exe.
I've introduced a new command link in my project, structured as follows: 'ide://run?File=%B4X%\UITest.jar When I execute the program using this command link, it launches without any issues but unexpectedly shuts down after one minute, displaying "Completed. Exit code: -1." This occurs even...
Most likely found the problem, the download page still gives you B4A 12.80 No it's doesn't. Microsoft Edge is doing something stupid (what a surpprise!) Download with Firefox and get 13.00, download with Edge and get 12.80. Edge seems to have cached a previous download and is regurgitating that instead of downloading a new version. Sorry for the false alarm. I've thought this before but maybe B4A.exe should have the version number included, e.g. B4A-v13.exe.
I've just downloaded it at a a reported 16.0 MBytes per second, not bad on a nominally 145Mbit per second connection. It is after all nearly half a GByte of data.
That's confusing, because the Command-line tools and the B4A exe downloaded very fast...
Must be a location based issue then.
I'm downloading from India.