Monday, April 30, 2018

YouTube Player

During my development for the upcomming "Arcade Player", i was initially using a core:html control with an iframe pointing to the video source. This solution was a little bit inadequate, because changing the videoId always reloaded the YouTube wrapping api script.

So i decided to write a custom UI5 control to be more flexible.

Currently, not every function and event is propagated to UI5, but i think you will get the point and be able to extend it concerning your additional needs.

YouTube Player API


  • app showing usage of UI5 YouTube Player API Reference for iframe Embeds.
  • response grid layout to fit all device types
  • css hack to allow responsive defined aspect ratio of video (eg. 16/9 or 4/3)
  • wrapper methods and events to control video from UI5


Currently there are some restrictions on playing videos on mobile devices. For security reasons, iOS does not allow to autoplay videos. A user interaction is therefore needed. Concerning this, the player itself will behave a little bit different on different devices, but the major api features should work accross. I also figured out, that setting volume is not working on my iOS devices, but there was no such comment in the google api description. I left the slider in (maybe a current bug). This is working on desktop and you can decide to hide the volume slider control by using the device model.


Released under the Apache license. Have at it.

The sources for this project can be found in my GitHub YouTube repository.

Thursday, April 19, 2018

CacheBuster on SCP

Hooray! Two years ago, i requested the CacheBuster feature for the SAP Cloud Plattform (SCP) to be able to control users cache for UI5 apps and and on 2018-04-12 my wishes has been heard (or implemented). The SAP WebIDE Full Stack update news told me, that the grunt-sapui5-bestpractice-build plugin has been updated to version 1.3.50 with a new task for generation of the CacheBusterInfo.json file.

I tried out the new feature, but it took more time than expected. One issue has been, that the sap grunt script does not run correctly on linux and therefore our automated CI build process was not able to deliver everything as expected. The issue is reported here and confirmed by SAP.

Finally i thought it would be good, to have a working example and i started to create an example app. Doing this i realized, that maybe my whole developing workflow should be part of this project and the example started to grow.

CacheBuster on SCP

Ready Developer One: develop, build, deploy!

Click "here" to read the full blog!