Say I have an app that externally controls other apps, not immitating it, but simulating mobile phone events (simulate mouse touch, button click...) to assume control of it, and provide an alternative interface (UI) for it. Would that mean missusing the "foreign" app?

Let's make it more complicated - I will let the user take the responsibility on running the foreign app(s) using my external interface. I mean, I am not trying to forge anyone, or hide anything, just provide an external accessiblity interface. Is it still deep in the gray zone?


Assuming that you and each of your users have a legitimate license to the foreign app and the "controlling" aspect isn't for any nefarious or otherwise illegal purpose, then there is probably no law that would make it illegal to control another app.

The next question is whether the use you are proposing for the app is within the bounds of the End User License Agreement, Terms of Service, or similar agreement that gives you and your end users the copyright license to operate the software. Many people mistakenly assume that boilerplate EULAs would catch this, but often the do not. If you violate the terms of the EULA, you may be forfeiting your copyright license and may be liable for copyright infringement for using the software without a valid license. If you induce others to violate copyright, you may have additional liability.

Your goal in providing the layer on top of the app is probably not material to whether it is allowed, unless the EULA specifically restricts by what your intended purpose is, so even if you are providing a more accessible interface, there may not be any additional wiggle room than if you simply wanted a Hello Kitty themed interface. It really all boils down to the EULA and the specific terms that are provided in there.

Another caveat is that you must also have stayed within the EULA when you developed the software. For instance, if there is a no-reverse-engineering clause, then your development efforts may run afoul of that depending on the exact language and techniques used. If you violated the EULA, courts may strain to find a violation for all your downstream users.

  • EULA's rerally address this issue (as far as I know). Besides, many launchers for blind people are providing alternative interfaces to control remote apps. Add to that automation, macro, and various taskers. Actually if these are the user's "fingers" that are repeated (by macro) - you cannot blame my app for running it. Otherwise - you got an awful lot of apps that "illegaly" control other apps. – rubmz Oct 11 '16 at 7:17
  • Ah... Didn't read thoroughly your answer ;) Yupp. I agree + thanks for bringing the "no reverse engineering" up. Important! – rubmz Oct 11 '16 at 16:04

The "foreign" app has an End User Licence Agreement (EULA) which will detail what can and cannot be done with it.

Breaching the EULA is illegal. That is, it can result in your loss of copyright privileges to the underlying software and give rise to a copyright infringement claim, or to a claim for other damages suffered by the rights holder.

Hazarding a guess, I would say that the EULA would prohibit what you are suggesting. Now, if it were an API instead of an App ...

  • I will sure check... Thanks for the extensive answer. Hopefully you are wrong with your assumption :) An API is not always available, and even when it does, it can needs interfacing which for my specific needs can be easier to achieve with pointer simulation. Thanks! – rubmz Oct 4 '16 at 20:36
  • Let's make it more complicated - I will let the user take the responsibility on running the foreign app(s) using my external interface. I mean, I am not trying to forge anyone, or hide anything, just provide an external accessiblity interface. Is it still deep in the gray zone? – rubmz Oct 4 '16 at 20:46
  • @rubmz you mean you'll just drive the getaway car while they rob the bank? Aiding and abetting an illegal act is itself illegal. And no, you can't write a contract to transfer your illegal act to someone else. – Dale M Oct 4 '16 at 21:56
  • 1
    @jqning The common law does - the definition of a contract is an agreement that is legally enforceable – Dale M Oct 11 '16 at 2:11
  • 1
    @jqning so if I were to kill you in cold blood that would not be illegal until I was convicted? Surely the act is illegal in contemplation irrespective or when or if it is adjudged by a court of law? – Dale M Oct 11 '16 at 5:35

There's no gray zone about it, when your work entirely depends on another software product to function, that's pretty clearly established to be a derivative work. If you've created a derivative work from something you do not have a license to derive from, then you're wide open to claims of copyright infringement and possibly other things.

Once you start making money from this product, your problems just get worse. Imagine if I made an app called Toogle Mapz and all it does is hide Google maps in the background and provide a different UI to expose the function of Google maps to the user. It's pretty clear when you start to think of it that way, and even this isn't a great example because Google will actually give you API access to essentially accomplish this, but let's pretend they don't do this. You know full well that Google would have the legal department ripping down your app in a heartbeat at the very least.

Dale gave a good answer, I just wanted to be clear though that there is also this angle, and that's regardless of what the EULA says (assuming that the EULA does not grant you a license to create derived works). It's copyright infringement. Plus, you have no idea if there's functionality inside the code that your code relies on that is patented, and then you could double up your problems with patent infringement. Unless you've been given a license to do this, don't do it.

If you can provide an alternative UI, say for example on Android, by making an application that controls accessibility features, and you apply these features through the system in a generic way without being intimately bound (tight coupling of dependency on) to the target application, I'd say you'd be fine. But grabbing a handle to the app, shoving it in the background and hard-coding your application to be tightly coupled to the target app would make it a derivative work for sure.

  • What about automation apps? They let the user operate another app using macro's? (there are many automation/macro apps on google play) - If I let users access functionality in another app using macros that the users create (and/or even share amongst them), isn't it legal? – rubmz Oct 11 '16 at 7:12
  • Okay! Thanks for the additional point of view you provided! – rubmz Oct 11 '16 at 16:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.