Last week, CodeWeavers announced that after three years of development, a preview version of CrossOver for Android would be released. Why was I so excited? Because CrossOver allows you to run Windows programs on Mac and Linux, and they brought their expertise over to Android. After trying out the Preview version for a week (which you can sign up for here), I'm extremely impressed by its capabilities, despite some major limitations.
Disclaimer: Since I do not own an Intel-based Android tablet, and my Chromebook does not yet have the Google Play Store, I tested CrossOver on the latest version of Remix OS on my Dell Windows laptop. It is possible that some of the bugs I experienced are issues with Remix, but CrossOver's compatibility with Windows programs is identical no matter how you run it. CrossOver for Android is in early beta, so everything in this review is subject to change with subsequent updates.
CrossOver's entire user interface consists of the virtual desktop, where all the Windows programs live, and an 'Install Application' button. The installer functionality is where CrossOver shines on the desktop. With the WINE open-source project that CrossOver is based on, getting a program to run (even at all) can mean hunting down forum posts to see what LinuxFan78 typed in the command line.
CrossOver tries to alleviate this pain with its installer, which downloads a given program and performs all the necessary tweaks for the program to run automatically. For example, when I installed Steam through CrossOver, it downloaded multiple fonts that Steam requires before proceeding with the actual Steam installation.
CrossOver for Android only has a few 'known-good applications', but if you so desire, you can try installing any of CrossOver's available applications. The selection is fairly expansive, but if you want to install something not listed, you'll have to download a web browser like Firefox inside CrossOver and download it manually.
The virtual desktop is fairly basic, showing some app shortcuts at the top and a Start menu with access to your programs at the bottom. There's also a very basic file manager, a setting to add/remove programs, and the Wine configuration tool.
Perhaps the most exciting prospect of running Windows programs on Android (or a Chromebook) is playing Windows' vast library of games. That's a huge reason Wine even exists, despite the rise of Steam OS and Linux gaming, most new titles are still locked to Windows. Linux and Mac users have used Wine, CrossOver, and other similar software for years to play Windows-exclusive titles.
Steam is easy to get up and running, just choose it from the Install Application dialog and click Next/Accept on all the installer popups. But trying to play games is where I ran into problems. Wine, and thus CrossOver, only supports DirectX 9 - meaning most new Windows games will just plain not work. CodeWeavers is working hard on adding DirectX 10 and 11 support, but it's a massive undertaking. Many games also offer an OpenGL mode, except that doesn't work here either. Android only supports OpenGL ES, not the full OpenGL spec that Windows programs expect.
Another frustrating problem is games cannot lock the mouse inside the program. To my understanding, Android doesn't allow applications to lock the mouse at all, so FPS titles won't be playable without a controller. Games running in full-screen seem to be buggy as well, but most games have windowed modes anyways. Finally, there's no way to change the resolution of the virtual desktop, so older games expecting a smaller screen might have problems.
I didn't try many of my Steam games, but I did successfully run three titles - Half Life 1, Team Fortress: Classic, and Game Dev Tycoon. Half Life 1 (pictured above) only worked when I disabled full-screen mode and switched to software rendering instead of OpenGL. The mouse didn't lock so it was uncontrollable, but moving around was buttery smooth. Team Fortress was the same story, and Game Dev Tycoon surprisingly worked without messing with the settings.
If your game can run either on software rendering or DirectX 9, and doesn't need to lock the mouse, there's a good chance it might run in CrossOver. Especially if you install it through CrossOver's install mechanism. As stated earlier, CodeWeavers has been working on DirectX 10 and 11 support on the desktop versions of CrossOver, so it wouldn't surprise me if those changes trickle down to the Android version at some point.
You'll need to use a web browser to install software not available in CrossOver itself. I used CrossOver's installer to download Firefox, seen below. I tried to run a recent release, version 45 to be exact, but it froze whenever I saved a file so I switched back to Firefox 7 (which is still usable for most sites).
One of the best use cases for CrossOver is to run full Microsoft Office, but Office 2013 and newer don't work at all thanks to their dependence on DirectX 10. CodeWeavers officially supports Office 2010 and earlier, but I didn't have a copy of that version, so I tried out LibreOffice. If you've never used it, LibreOffice is an open-source office suite with MS Office compatibility, and it works fairly well in CrossOver.
Granted, it worked until I tried to save a file, then it froze. So close!
Holy Photoshop, Batman
I was incredibly surprised to see my copy of Photoshop CS3, without changing any settings, worked in CrossOver. Well, mostly.
I tried basic image manipulation including transforms, gradients, cropping, filters, etc, all with success. However, it does crash when trying to use fonts, and a few other times randomly, but it's extremely impressive that CrossOver can run it at all. Photoshop CS6 requires some extra packages in Wine, known as 'winetricks,' to run perfectly - but as far as I can tell, there is no way to install winetricks in CrossOver yet.
CrossOver's integration with the host operating system, be it Android or Chrome OS, is rather limited but still more than I was expecting. The root Android file system shows up as a drive in CrossOver, allowing you to transfer data back and forth without too much trouble. For example, I could easily open pictures in Photoshop from the Android downloads folder.
External media such as SD cards and flash drives work fine in CrossOver as well, as long as you can find it in Android's /storage folder. Most programs won't run from outside the CrossOver environment, so you might have to copy programs (and their files) into the virtual C: drive to run them.
CrossOver is one of the only Android applications I've tried that works with right-click, which granted is a necessity for Windows programs. It's worth noting that my laptop's right-click didn't seem to work, I had to use a Bluetooth mouse. But more than likely that was a Remix OS issue, so I won't hold it against CrossOver.
Windows, despite challenges from macOS and Linux over the decades, still retains the largest software library of any operating system. That's why CrossOver is so exciting: it opens an entire new library of applications for Android devices and Chromebooks to enjoy. In the current state, it's rather buggy and needs more work. But despite all the crashes and freezes I experienced, I can't help but be amazed that it works at all. Photoshop alone is enough to get excited about.
CrossOver is huge for Android and Chromebooks, arguably more for Chromebooks. With both CodeWeavers and the entire Wine community working towards better program compatibility, it's only a matter of time until your favorite program or game runs in CrossOver.