Basic4Android 8.00

Basic4android is the simplest and most powerful Rapid Application Development (RAD) tool available for the Android platform

Basic4android includes all features needed to develop great, real-world Android applications
Compiled applications are native Android applications, there is no extra run-time or any dependencies
Our community with over 50k developers is waiting to help you get started

General Features

Simple and powerful RAD tool for developing native Android applications
Complete IDE and programming language 100% focused on Android development
Compiles to native bytecode. No runtime libraries are required. APK files are exactly the same as APK files created with Java / Eclipse
Performance is similar to applications written with Java
Object oriented programming language
Share the code with B4J – a development tool for desktop applications New!
No need for XML programming
Rapid debugger – supports quick deployments, hot code swapping and expressions watches New!. No other native Android tool supports these features!
Highly extensible with support for custom Java libraries
WYSIWYG visual editor for Android. The visual editor supports multiple screens and resolutions
Powerful designer scripts feature. Lets you easily create sophisticated layouts
Basic4android UI Cloud service. Test your layouts on a cloud of real phones and tablets
Supports all Android phones and tablets from Android 1.6 and up to Android 4.x
Modern IDE with autocomplete, built-in documentation, internal index and other advanced features
Powerful step-by-step debugger
Large set of documentation
Built-in code obfuscation
Supports all Android core features including:
SQL databases including encrypted databases
Home screen widgets and live wallpapers
Background services and broadcast listeners
Bluetooth (serial ports)
Phone features: phone calls, sms, contacts, call logs and others
USB host / accessory modes and MTP New!
Web services
XML, JSON, XLS (MS Excel), MDB (MS Access) New! and CSV formats
Views animations
Multitouch gestures
Http Server (based on Jetty)
Arduino ADK New!
Video and audio playback / recording

Networking (TCP, Wifi Direct, UDP, FTP, SFTP New!, FTPS New!, SMTP, POP3 and SMB/CIFS)
Push notifications (GCM New! and C2DM)
Text to speech and voice recognition
AdMob ads and other ads platforms
OpenGL, libGDX New!
Graphics and charts
Files I/O
Integrate with services such as: Parse, Google services, Twitter, Facebook and others
Google Play In-App Billing service
Objects serialization
Sip / Voip
Device Administration apps
And many more

Some of less obvious new features:

– Press on Ctrl + Click to jump to an identifier (sub, variables, etc.). – Themes – Ctrl + T – Sophisticated conditional compilation: #If, #Else If, #Else and support for OR and AND. Also supported in the manifest editor and designer scripts. – Dockable layout. Including support for multiple open editors. – Find all references – F7. – Quick search – Ctrl + F. – Goto sub / module – Ctrl + E. – Smarter autocomplete. – Hover over variables and expressions in debug mode. – Structure matching. – Automatic warnings and errors highlighting. – Support for multiple visual designer windows – Better support for selection and editing of multiple controls. – Views tree supports drag and drop to allow changing the z-order. – Integrated abstract designer with support for zooming. – Memory leak related to layout animations was fixed. – StartServiceAtExact keyword.


Improvements: The process of starting the app from the background was rewritten to comply with targetSdkVersion 26 requirements. Push notifications and other features that cause apps to start from the background should be more reliable due to changes in the way services are started. A wake lock is automatically held when a receiver receives an intent. The wake lock is released when the service starts. Automatic foreground mode: Notification object rewritten to work with targetSdkVersion 26. In most cases you don’t need to change anything. Notification.SetInfo or Notification.SetInfo2 should be the last calls before you show the notification. Notification.SetInfo / SetInfo2 accept CharSequences so it can work with CSBuilder. StartServiceAt / StartServiceAtExact rewritten to work with targetSdkVersion 26 and they are now more reliable. Notification.Initialize2 – Allows to set the notification channel importance level. Better support for AAR libraries: jni folders (native libraries) are handled properly, assets and resources from internal jars are added to the project. #AdditionalJar with ReferenceOnly – Allows referencing jars that are only used as a reference during compilation. This is required for more complex libraries such as DJI library. Signing key size is explicitly set to avoid issues with newer versions of Java. B4A Sdk Manager v3.25 – Bug fixes and support for Google based AVDs. Screenshot tool modified to work with latest versions of Android SDK. MediaPlayer.IsInitialzied method. Manifest editor macros – Macros can be added to libraries or zip files. For example to set a light theme based on Android version:


Android, applications, features, support, libraries, native, Basic4android, Notification, services, designer, other, multiple, editor, supports, files, based, started, service, programming, targetSdkVersion, Android, applications, features, support, native, libraries, Notification, services, Basic4android, other, editor, designer, multiple, supports, files, programming, Google, service, visual, started