Good Day,
The way I would do it (and I am not always correct - but rather set in my ways)
Create a layout in designer - place onto this layout a full page webview and disable "Zoom enabled" (at bottom of screen - in Properties Section).
Then, make sure your webview is full screen and anchored left/right and top bottom.
Now in your Main load the Splash Layout First (in B4XPages - this is done in B4XMainPage) then load the image you wish to use using:
wvSplash.LoadHtml("<html><body><img width=100% src='file:///android_asset/gpf.gif'/></body></html>") '<-- gpf.gif - your choice of image here
Dim SplashTimer As Timer
SplashTimer.Initialize("SplashTimer",8500) ' <-- 8.5 seconds - your choice
Sub wvSplash_PageFinished (Url As String)
SplashTimer.Enabled = True 'Start the timer for as long as you want the Splash displayed
End Sub
Sub SplashTimer_Tick
SplashTimer.Enabled = False 'Switch off the timer'
Activity.LoadLayout("scrmain") ' Now load your Main Screen Layout
End Sub
' This is untested code and only meant as an example
Remember to set these as well
#Region Activity Attributes
#FullScreen: True
#IncludeTitle: False
#End Region
You can basically run any image here within bounds. Types that do not work well are ones where there are Round or Square logos for example placed in the middle of the image. A well sorted HTML file here with animations, sliders etc also works well as a splash screen. This should work well on all the B4X platforms.
Whilst your splash is running - use the opportunity to run any setups, global variable seeding or permission settings/checking that may be required.
I hope this helps.
Other B4X'ers are welcome to critique or present their own better solutions - I'm always open to
NEW learning (even at 61 and set in my ways) !!