SplashScreen 类似于 Photoshop 完全启动前,先展示的小窗口。
现在大部分 APP 都有 Splash 界面,下面列一下 Splash 页面的几个作用:
-
展示 logo,提高公司形象
-
初始化数据(拷贝数据到 SD)
-
提高用户体验
-
连接服务器是否有新的版本等。
-
不做任何操作,直接进入主界面
实现的方式其实有如下几种:
-
在安卓的
AndroidManifest.xml
文件中指定 -
在
Java
代码中实现 -
在
C++
代码中实现 -
在
QML
中实现
其实最后两种,并不能算得上是真正的 SplashScreen。因为在进入这个 SplashScreen 之前,应用仍然会黑屏。
最后这两种应该作为程序的功能引导页会更好。
这里讲讲在第一种方法,打开 AndroidManifest.xml
,在 activity
标签内添加如下代码:
<meta-data android:name="android.app.splash_screen_drawable" android:resource="@drawable/splash"/>
在 Qt on Android 项目中,打开 android/res
目录,对号入座,将 splash.png
(其他图片格式也可以),放到 drawable-*
文件夹中。
注意对应,在 AndroidManifest.xml
对应的是 @drawable/splash
那么,在文件系统中对应的是 android/res/drawable-*/splash.png
。
这种方式的优点是简单,但是却不能动态更新 SplashScreen。
上述方法,在启动 SplashScreen 仍然会有黑屏,是纯黑的那种黑屏。打开其他软件,例如知乎,是白色的,哔哩哔哩,也是白色的。
Complete Guide to Making a Splash Screen for your QML Android Application