This Is What Freeform Windows Looks Like in Android N and How to Try It Yourself
When Google announced Android N , they showed off split-screen multitasking, which allows you to use multiple apps at the same time on the same screen. It was a little nifty, but nevertheless, there is something even cooler under the surface: freeform windows. Here’s what it looks like in action and how to try it.
Freeform Windows will change the way Android works
Google has been working on multitasking on Android for a long time. Last year, when Google released a preview of Android M to developers , there was a split-screen feature hidden inside that never got to the full, final version. It then became official with the release of the Android N preview. Now, developers and wizards playing with the pre-release version of Android N have discovered that the next evolution of multitasking is lurking inside: it’s called freeform windows.
To run the application in freeform mode, click the square Recent button. This will open your usual Rolodex-style multitasking menu. Each app has a small square icon in the title bar with another square inside it. When you click on it, the application opens in the Freeform workspace.
The Freeform workspace is a dedicated desktop where you can open and resize any number of applications. You can drag windows by the edges or corners to resize them to any arbitrary size, just like with all desktop operating systems you’re used to. Just don’t close the other app entirely. Freeform mode lacks the taskbar or application switching, so the window is easy to get lost.
As long as you are in freeform mode, any applications you launch will appear as windowed applications. However, this is a bit tricky to do as there is no application launcher in freeform mode. If you open an app from another app (for example, you can open Settings from the notification shade), it will launch in windowed mode. However, if you press the Home button and open the app from the regular launcher, it will open in normal full screen mode.
When you exit freeform mode, the workspace and all windows inside are saved in their last state until you return. For example, you can press the Home button, open another app and use it full screen as usual, and then press the Recents button to return to freeform mode.
This approach seems a little odd at first. It is unclear how much this feature has been finalized or even when it will be released. According to Google’s developer documentation, Android N device manufacturers can choose whether to include Freeform support. This could mean that Android N devices will launch with Freeform support, but given the unfinished feature of this feature, it seems unlikely anytime soon. On the other hand, Google I / O is a few months away. Maybe we will be surprised.
How to try it for yourself
At this point, you probably want to try it for yourself and I can’t blame you. Freeform windows on Android are pretty good already. On the right big screen device, they can change the way you use Android. For now, however, this is a hidden experimental feature in an unfinished preview for an operating system that has not yet been released. It will be tricky to try, unsafe and probably half broken. If you’re still with me, here’s how to try freeform mode on yourself.
Option number 1: try it in the emulator
The easiest option is to use the emulator built into Android Studio. If you don’t have Android Studio installed, see our Getting Started Guide as an Android Developer for instructions . You also need to make sure you have downloadedthe Android N SDK components . If any of this sounds too scary, you probably shouldn’t try .
Once you have all these parts, you will need to create an Android virtual device that will run the Android N developer preview. Here’s how to create the AVD you need:
- In Android Studio, open AVD Manager.
- Click Create Virtual Appliance.
- Select the preset profile that is compatible with Android N. I used the Nexus 9 as it offers the most free space for resizing windows. Click Next.
- On the system image screen, click Show Bootable System Images.
- Select the N release marked “x86” in the ABI. The download may take some time. When it’s complete, select this system image and click Next.
- Select “Landscape” next to the orientation. This isn’t technically necessary, but I find it easier to start landscape mode by default when you’re messing with windows. The rest of the default parameters should be fine.
- Click Finish to create your AVD.
Once this is done, start up your AVD. Then you will need to make some changes to get Freeform to work in the emulator. You will need ADB for this. Open a command prompt and do the following:
- Enter
adb shell
- Enter
su
- Enter
setenforce 0
- Enter
settings put global enable_freeform_support 1
- Enter
cd /data/local/tmp
- Enter
mkdir permissions
- Enter
cd permissions
- Enter
cp -a /system/etc/permissions/* ./
- Enter
sed -e “s/live_wallpaper/freeform_window_management/” android.software.live_wallpaper.xml >freeform.xml
- Enter
mount --bind . /system/etc/permissions
- Wait a couple of seconds
- Enter
stop
- Wait a couple more seconds
- Enter
start
After that, your emulator will reboot and you should be able to start playing with Freeform windows.
Option 2: enable freeform on your Nexus device
Trying Freeform mode on a phone or tablet is probably more risky than using an emulator. If you’re in the Android beta testing program, this will likely mess up any future OTA updates that Google releases. You probably won’t brick your device, but it will be difficult to reprogram it back to its original state just to re-register for the beta. At least backing up your device won’t hurt. If you’re really sure you want to try this, go ahead.
First, you need to install a custom recovery like TWRP . Once you’ve done that, follow these steps:
- Boot into your own recovery.
- Mount the system as read-write.
- Open ADB shell.
- Enter
cd /system/etc/permissions
- Enter
sed -e “s/live_wallpaper/freeform_window_management/” android.software.live_wallpaper.xml >freeform.xml
- Reboot into Android and open another ADB shell.
- Enter
settings put global enable_freeform_support 1
- Restart your device again.
You can find more details on these instructions in Android Police here . If there are any commands here that you do not understand, be sure to learn them first . If you’re unsure of where to start, the XDA Forums are a great resource.
Freeform has many bugs so far, but it shows promising prospects and a promising future for Android. So far, Google’s only entry into the laptop market is Chrome OS, which is relatively limited compared to Android. If Freeform allows developers to release their Android apps into the world of traditional windowed operating systems, we can see Android evolve into the desktop operating system you’ll ever see on your laptop or phone. Until then, it’s just fun to play with the toys that Google will release in the future.