Вирішення проблеми - navigator.splashscreen.hide() undefined Cordova SplashScreen

З оновленням Cordova до 12 версії, якщо ви колись використовували, або навіть просто намагалися ставити cordova-plugin-splashscreen. То ви зіткнетеся с проблемою, що navigator.splashscreen.hide() буде повертати undefined.

Справа в тому, що апі плагіна було інтегровано в саму Cordova, і все працює чудово в iOS, навіть якщо плагін встановлений, але в андроїд плагін викликає конфлікти. Тому вам треба видалити цей плагін, а також package-lock.json/yarn.lock, node_modules, та зробити очистку платформи Android - cordova platform rm android && cordova platform add android. Після чого, сплешскрін, а також його апі запрацює.

І якщо у вас відразу виникло питання, а як встановити картинку на сплеш скрін, то ніяк. Можна задати фон, і по центру розмістити іконку:

<platform name="android">
       <preference name="AndroidWindowSplashScreenBackground" value="#008dfe" />
       <preference name="AndroidWindowSplashScreenAnimatedIcon" value="res/android/xxxhdpi.png" />
</platform>