3.3.3
In order to not break existing tools, some functions were re-added in this patch release.
Note that still some functions are renamed or even removed due to
refactoring and reorganization of the parser.
As the method of resolving namespaces has changed, some methods do
not make any sense. Please check your projects!
Detailed changes between 3.2 and 3.3:
in the module androguard.core.bytecodes.axml
:
StringBlock
: Made some functions private, as they are not used from
the outside.
Renamed functions:
decode8(offset) --> _decode8(offset)
decode16(offset) --> _decode16(offset)
decode_bytes(data, encoding, str_len) --> _decode_bytes(data, encoding, str_len) (and static)
decodeLength(offset, sizeof_char) --> _decode_length(offset, sizeof_char)
AXMLParser
: renamed some functions, also removed many namespace
parsing functions.
Renamed functions:
reset() --> _reset()
doNext() --> _do_next()
getPrefix() --> namespace but was added again for legacy
getName() --> name but was added again for legacy
getText() --> text but was added again for legacy
Removed functions:
getNamespacePrefix(pos)
getNamespaceUri(pos)
getXMLNS()
getNamespaceCount(pos)
getAttributeOffset(index)
getAttributePrefix(index)
getPrefixByUri(uri)
For a reference implementation on using namespaces, please see AXMLPrinter
!
AXMLPrinter
: changed the parsing behaviour to use lxml.etree directly
Renamed functions:
getAttributeValue(index) --> _get_attribute_value(index)
Removed functions:
getPrefix(prefix)