kazu22002の技術覚書

PHPer, Golang, AWS エンジニアの日々

cordovaでのsplashscreen設定

cordovaでのスプラッシュ設定を入れてみました。

<preference name="SplashScreen" value="splash"/>

res/drawableにsplash.pngで画像をおけばできます。

ただ画像は9patchにしておくべきでしょう。Androidですので、画面サイズはいろいろですからね。

splash.9.pngになりますかね。

Apache Cordova API Documentation

Cordova: アプリの設定 - Build Insider

プラグインがあるので、導入しましょう。

Splashscreen Plugin導入

cordova plugin add https://github.com/apache/cordova-plugin-splashscreen

動作としてはcordovaActivityのonCreateごとに動作するっぽいですね。

cordovaActivityのソースコードを見ましたが、スプラッシュ表示やスピナー表示系の呼び出しはdecryptingになっています。

プラグインがあるので、プラグインを導入して使いましょう。ということですかね。

プラグイン側は呼び出し関数がありますので、利用可能です。

スプラッシュは設定した表示秒数分だけ表示されます。
cordovaのconfig.xmlで設定ができます。ミリ秒での設定です。

<preference name="SplashScreenDelay" value="10000" />

表示される秒数分は表示されるので、実は読み込み自体は終わっていることもあります。

読み込みができたらWEBページを表示したい場合はjavascriptソースコード側から表示しているスプラッシュを消す方法もあります。

cordova.exec(null, null, "SplashScreen", "hide", []);

これで運用できるぐらいのスプラッシュ表示はできるかな。