Skip to content

Small library to kill functionality of applications for clients that refuse to pay me

License

Notifications You must be signed in to change notification settings

alex-spataru/QAppKiller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QAppKiller

QAppKiller allows your app to know if it should reduce operations and/or inhibit the end user to use your application.

This library was quickly written by me during an afternoon in which I was desperate to get one of my clients to pay me. The corporate group received the final application binary and someone thought that it was a good idea to try to avoid paying me for my 8-month-long work.

In the case that they pay me, I just need to update my BAD_CLIENTS.json file & the application immediately starts working again (and the end users shall never see my fuck-you banner).

UPDATE: the library worked perfectly for its true purpose, they payed me as soon as they saw the "application suspended" banner.

Usage

  1. Integrate QAppKiller to your project by using the include() qmake function in your *.pro file.

  2. Integrate the following code in your main.cpp file:

#include <QAppKiller>
#include <QGuiApplication>

int main(int argc, char**argv)
{
   QGuiApplication app(argc, argv);
	
   QAppKiller appKiller;
   appKiller.setClient("YOUR_APP_ID");
   appKiller.setUrl("URL_TO_APPCAST_JSON_FILE");
	
   // QAppKiller shall now automatically download
   // the app cast file & decide if we should
   // stop the application from working...
	
   //
   // You can then use QAppKiller::suspended() to
   // know if your application should stop working
   // to screw your dick client.
   // 
   // QAppKiller can also be used with your QML
   // code :)
   //
	
   return app.exec();
}

App cast JSON

This file allows us to know which apps should we "kill" or "suspend", it has the following format:

{
   "enabled":true,
   "clients":[
      {
         "client":"app_id_1",
         "suspended":false
      },
      {
         "client":"app_id_2",
         "suspended":true
      },
      {
         "client":"app_id_3",
         "suspended":false
      }
   ]
}

Note: If enabled is set to false, QAppKiller shall ignore the value of suspended.

License

This project is released under the terms & conditions of the MIT licence. For more information, check the LICENSE.md file.

About

Small library to kill functionality of applications for clients that refuse to pay me

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published