Unified Remote is one of my favorite Android apps ever. It’s an app that connects to a PC-side server program and allows you to control various parts of your computer from your Android device. This ranges from basic keyboard/mouse input to customized remotes for things like media players, websites like Netflix and YouTube, the task manager, and browsers. It’s a great app and it often takes the place of my mouse and keyboard when I’m relaxing in bed and watching something on my PC.

The problem

Despite being a great app, it’s had – and technically still has – one major flaw. It’s a flaw that most people probably would never discover, and yet it has driven me beyond crazy for months. The app supports action shortcuts, which are like app shortcuts but to specific parts of the app. In this case, you can create shortcuts to specific remotes, skipping the menu and going right to e.g. the Basic Input remote. The problem is that it does this in a rather backwards way – probably with very good reason, but still awkward for the end user.

You see, the action that you can link to is actually to a menu that lets you choose to create a shortcut to a specific remote, it isn’t to a specific remote directly. When you click anything in the menu that asks you to select a remote to link to, internal features in Unified Remote creates a shortcut on the home screen, instead of doing it directly through the action shortcut. This might sound confusing, so let me try to explain why it matters: If you try to add the direct remote action to anything besides the home screen, it won’t work, because it always sends the resulting shortcut to the home screen. This means that so far, it’s been impossible to use the direct shortcuts with any app that can use actions, but aren’t launchers. Examples are lock screens like WidgetLocker, folder and shortcut widgets, and Tasker and similar apps. Any attempt to add the remote to such apps would simply result in the icon ending up on the home screen instead.

Like I said, this is a flaw that most people would probably never notice. It has annoyed me to no end however, because I want to have a shortcut to the Basic Input remote on my WidgetLocker lock screen. That way it’s much faster to get directly to the mouse/keyboard input from the screen being off, an action I can do dozens of times while watching something. As such it’s not just about saving an insignificant second once a day, but saving it over and over and over – often when I need to e.g. pause something quickly because someone is knocking at my door or something like that.

The solution…sort of

I contacted Unified Remote about this a month ago, after failing a few “hacks” to actually launch the home screen icon from within Tasker. That solution would probably have been possible eventually, but the response I got from UR said that it was aware of the problem and was working on a major release that would fix that among other things. Late June was the date that it was hoping to release the update, but it could be later. It was, and the update finally hit Google Play yesterday.

I quickly skimmed the change log and found nothing to indicate it had been fixed, and trying to add a remote shortcut ended up putting it on the home screen like before. I was confused and updated my original support ticket asking what was going on, but have yet to get a reply. After messing about with it for a while and re-reading the original support reply I don’t think the proper fix is included in this release, but as a result of what has to be a happy coincidence it’s not possible to make it work. The method, however, isn’t exactly anything close to standard.

How to do it

The method to get it working depends on whether you have an NFC enabled device or not. You see, one of the new features in the update is the ability to open remotes using NFC tags, and as such, a NFC tag writer is now included in the app. This is only available for devices with NFC. It’s accessible by going into any remote, clicking the menu button, and then Share. This should, hopefully, land you in a URI Writer menu. I say “hopefully” because I don’t have an NFC device, so I haven’t accessed the URI Writer this way before.

If you don’t have an NFC device (or if the above NFC method doesn’t work like I think it will), like me, you’re going to need QuickShortcutMaker. Open it, then just type in “unified” in the filter to get the list of Unified Remote intents. Click the one that says URI Writer under the name, and then hit Try. URI Writer should pop up.

Regardless of the method, you should now be in URI Writer. This has two pulldown menus, Remote and Action. Action is basically different controls available for each remote, like Play/Pause for a media player. Choose whatever remote and (optionally) control you want to link to, and copy the URI code that is generated in the field.

Next up, it’s Tasker time. There are probably ways of doing this without it, but I’ll cover what I know works. In Tasker, you need to go to Tasks, and then create a new task. Name it whatever. Click the plus sign to add an action, go to Net, then Browse URL. Paste what you copied from the URI Writer into the URL field. Click the green checkmark, then click the Play button to test it. If you selected a remote, it should open. If you selected a remote and command, it should flash another screen for a split second, and the command should have been sent.

Go back to the Task edit screen and select an icon using the colored squares icon on the task edit screen. Application Icon -> Unified Remote is a good choice for an icon if you don’t have your own. Checkmark your way out of Tasker and go to wherever you wanted to add the shortcut, like WidgetLocker. Select to add an action, but instead of going for Unified Remote, go for Task Cut, which is Tasker’s feature to launch tasks using action shortcuts. Select the Task you just created, and you’re done. When clicked, the shortcut will run the Tasker action, which in turn will open the URI link that launches the remote or the remote command.

What you’re technically doing here is “stealing” the command that Unified Remote creates for use with NFC tags and launching it separately. A bit of a backwards way of doing it, and a weird priority for an update if you ask me, but her, it works!

Naturally, if you’re used to Tasker, you can use multiple URIs to actually copy entire control sets over to Tasker, create your own widgets, scenes, make it voice controlled, and so on and so forth. If you need to access the URI Writer a lot, you can use QuickShortCutMaker to add a shortcut directly to it.  Here’s my own voice assistant, Nelly, augmented with the ability to remote control Media Player Classic:

Simply way out: Pocketables’ own UR Shortcut app

Tasker recently entered a beta stage for a new app export feature that allows non-programmers like me to create their own apps without knowing how to program. This has allowed me to create a simple app that lets you skip the QuickShortcutMaker and Tasker steps here and do it all from within that app. A tutorial video and the .apk download is available below.

Warning: Use this app at your own risk. Like the video shows, it works on my device. However the app was created using the beta version of Tasker’s app export, hasn’t been tested for compatibility on other devices, and in short: I have no clue if it will work on your device. I doubt it will ever break anything, but there’s a chance it simply won’t work. 

Main download

Download: Pocketables

(.zip due to WordPress file upload limitations, needs to be unzipped before installation)


 

Mirror (xda-developers)

I posted the app over at xda-developers, so if you prefer to download from there, or if the above link doesn’t work, try the this download link and QR code

Download: xda-developers

 

 

 

Final words

I realize that this is a weird fix to a niche problem, but it’s a problem that’s big enough for it to be on the developer’s todo list. I don’t exactly agree with prioritizing NFC tag creation over actually fixing this issue properly, but as long as it gives me a working way to launch the Basic Input remote from my WidgetLocker I’m happy.