Interface IDexString

All Superinterfaces:
ICodeData, ICodeItem, ICodeString

public interface IDexString extends ICodeString
These objects represent DEX strings. The value of a string can be modified programmatically.
  • Method Details

    • getValue

      String getValue(boolean effective)
      Retrieve the string value.
      Parameters:
      effective - true to retrieve the current value, false to retrieve the original value
      Returns:
    • setValue

      void setValue(String value)
      Set the alternate value of a string. This method does not check for duplicates in the string pool: it may break the DEX specifications.

      On success, it is the responsibility of the caller to notify client code that the unit has changed, by issuing a J#UnitChange to listeners.

      Parameters:
      value - the new value, or null to reset to the original value
    • getHintUsedInDex

      Boolean getHintUsedInDex()
      This method provides a hint regarding whether this string appears to be used in the dex unit. Usage here is meant in the broadest sense: it could be a string immediate used in Dalvik, or a meta string referenced by other dex objects present in one of the dex files parsed to create the dex unit.
      Returns:
      true if the string is used; false if the string is not used (dangling string); null if unknown
    • getHintUsedAsImmediate

      Boolean getHintUsedAsImmediate()
      This method provides a hint regarding how this string is used. If true, it appears that it is used as an immediate in the code, e.g. as a parameter to a const-string opcode. If false, it appears the string used used as a metadata element, such as a method name, or part of a type descriptor.
      Returns:
      true if the string is used as an immediate; false if the string is a pure metadata element (this method never returns null)