def __init__(self, host, adbkey='<STR_LIT>', adb_server_ip='<STR_LIT>', adb_server_port=<NUM_LIT>):
self.host = host<EOL>self.adbkey = adbkey<EOL>self.adb_server_ip = adb_server_ip<EOL>self.adb_server_port = adb_server_port<EOL>self._available = False<EOL>self._adb_lock = threading.Lock()<EOL>self._adb = None  <EOL>self._adb_client = None  <EOL>self._adb_device = None  <EOL>if not self.adb_server_ip:<EOL><INDENT>self.adb_shell = self._adb_shell_python_adb<EOL>self.adb_streaming_shell = self._adb_streaming_shell_python_adb<EOL><DEDENT>else:<EOL><INDENT>self.adb_shell = self._adb_shell_pure_python_adb<EOL>self.adb_streaming_shell = self._adb_streaming_shell_pure_python_adb<EOL><DEDENT>self.connect()<EOL>
Initialize FireTV object.

        :param host: Host in format <address>:port.
        :param adbkey: The path to the "adbkey" file
        :param adb_server_ip: the IP address for the ADB server
        :param adb_server_port: the port for the ADB server