def __init__(self, namespace, fully_qualified_class, natives, jni_params, main_dex, use_proxy_hash, enable_jni_multiplexing=False, switch_prefix=None): self.namespace = namespace self.natives = natives self.proxy_natives = [n for n in natives if n.is_proxy] self.non_proxy_natives = [n for n in natives if not n.is_proxy] self.fully_qualified_class = fully_qualified_class self.jni_params = jni_params self.class_name = self.fully_qualified_class.split('/')[-1] self.main_dex = main_dex self.helper = jni_generator.HeaderFileGeneratorHelper( self.class_name, fully_qualified_class, use_proxy_hash, None) self.use_proxy_hash = use_proxy_hash self.enable_jni_multiplexing = enable_jni_multiplexing # Each java file path is assigned a 16-bit integer as a prefix to the # switch number to ensure uniqueness across all native methods. self.switch_prefix = switch_prefix self.registration_dict = None
def __init__(self, namespace, fully_qualified_class, natives, jni_params, registration_dict, main_dex): self.namespace = namespace self.natives = natives self.fully_qualified_class = fully_qualified_class self.jni_params = jni_params self.class_name = self.fully_qualified_class.split('/')[-1] self.registration_dict = registration_dict self.main_dex = main_dex self.helper = jni_generator.HeaderFileGeneratorHelper( self.class_name, fully_qualified_class)
def __init__(self, namespace, fully_qualified_class, natives, jni_params, main_dex): self.namespace = namespace self.natives = natives self.proxy_natives = [n for n in natives if n.is_proxy] self.non_proxy_natives = [n for n in natives if not n.is_proxy] self.fully_qualified_class = fully_qualified_class self.jni_params = jni_params self.class_name = self.fully_qualified_class.split('/')[-1] self.main_dex = main_dex self.helper = jni_generator.HeaderFileGeneratorHelper( self.class_name, fully_qualified_class) self.registration_dict = None