2

I have come across a few Android apps that provide various features for communicating with a desktop machine (sending text or typing in one direction or another, controlling the desktop pointer with the mobile device, sending mobile notifications to the desktop, etc).

Most of them rely on both machines being on the same network, running a small server application on the desktop, which opens a port for communication (or the other way round if you're controlling the mobile device from the desktop). Generally they have no provisions for authentication. The obvious security flaws are:

  • No authentication. Anyone else can easily hop onto the open device/desktop via the open port and control it just as you can.
  • No encryption. Anyone can read the stream between the two computers.

Most of the open source apps are up-front about this, an simply advise that you only use them on a trusted network. Some also offer USB access via adb.

I am looking for apps that do not have these flaws (or, potentially, suggesting a new mechanism to an existing app). What existing mechanisms are there for communicating over-the-air between an Android device and an Ubuntu desktop? Bluetooth?

(If the mechanism is generalisable to other platforms, that's also great. If it's more theoretical - like a protocol that needs to be implemented on Android - that's valid too, as there are people doing things like implementing mosh for Android.)

1 Answer 1

1

Set your desktop Ubuntu to act as wireless access point (if you haven't one already, you may need to add a Wifi card or Wifi USB token to your desktop, but these are cheap nowadays) and configure your mobile device to connect to this access point.

If your mobile device is already configured to use a Wifi network on that location to access Internet ressources, then you may want to configure your desktop to act as a gateway for your mobile device.

  • On one side (Wifi side) there will be a private LAN allowing your mobile and your desktop to communicate securely,
  • When your mobile requires to access some Internet resource, he can go through your desktop to fetch them.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .