Why the notification cannot be disabled on Android 8?
The most recent version of Floating Apps has come with improved support for Android 8. It’s now compiled against Android 8 SDK and so it must respect changes made by Google. And there are two big differences we must consider – changes to floating windows and background services.
Changes to floating windows
Android doesn’t know how to change the order of the windows. It’s not possible to tell Android that one window should be shown above or below the others. The last added window is always shown on top of the others. The solution is to remove the window and then add it again. However, this process takes some time and it would cause blinking and undesired graphical glitches.
How do Floating Apps solve this? With a little “hack”:-). When you activate some window, Floating Apps first create an image of its content and insert this image as a new window that is added last and thus visible above other windows. Then it removes the original window and immediately adds it. Now, the original window is shown above other windows (and even above the image). The last step is to remove the image. For a short moment, you actually don’t see your floating window but rather a static image :-). Pretty complicated process and I would bet that you don’t even notice it which is great because it’s the goal – to be smooth and does not disturb.
In previous Android versions, several types of floating windows are available and some types are shown above others. Using different types helps us to make bubbles, the floating menu and the floating icon stay on top of normal windows. From Android 8, we can’t use this approach and we must use ordering method described above also for the floating menu, the floating icon, and bubbles. It’s much more complicated now.
Floating Apps relies on its background service and from Android 8, background services are limited. They can’t be even started without the app running in the foreground and that’s what we exactly don’t want Floating Apps to do. It’s not supposed to run in the foreground because you want your email client, game or whatever to be in the foreground.
Fortunately, there are also so-called foreground services in Android 8 but they need the app to show a notification. If the app doesn’t show the notification when running foreground service, it will be killed by Android in short time causing a crash.
And for this reason, we always must show the notification when Floating Apps is running on Android 8 and option to disable the notification is therefore hidden from app’s Settings as we can no longer allow you to hide the notification.
Not just a fancy features…
As you can see, Floating Apps is not only about adding new features and apps but also about a lot of work to maintain correct functionality across different Android versions and devices.