Since Android 5.1, applications are able to communicate with UICC using the class TelephonyManager. However, the concerned functions require a special privilege, that is the carrier privilege.
This JavaCard applet grants this privilege to the app whose signature is included inside the applet (the variable SHA256_SIGN)