smali регистрирует утилиту / коллекцию ArrayList - PullRequest
0 голосов
/ 13 ноября 2018

Я хочу записать ArrayList, который напечатан как util / collection, но я не могу понять, каков правильный синтаксис.Для регистрации непосредственно или преобразования его в строку в smali.

Я пытался использовать iglogger, но когда я перекомпилирую с вставленным iglogger, он выдает ошибку, говоря, что не может smali iglogger.smali.

Есть ли документация для входа в систему smali? Я могу найти ее только для записи строки:

invoke-static {v0},Landroid/util/Log;->d(Ljava/lang/String;)I

Спасибо

1 Ответ

0 голосов
/ 13 ноября 2018

Если вы хотите использовать IGLogger, вам нужно вызвать методы IGLogger.В настоящее время вы вызываете класс Log для Android.

Если вы хотите продолжать использовать IGLogger, вам нужно следующее:

invoke-static {v0}, Lcom/whatever/package/holds/iglogger;->d(Ljava/lang/String;)I # where v0 is a String. If v0 is your ArrayList you need to call toString() on it and store that result first

Однако, действительно, имеет смысл использовать класс Log Anroid:

invoke-virtual {v0}, Ljava/util/ArrayList;->toString()Ljava/lang/String; # where v0 is your ArrayList

move-result-object v1

const-string/jumbo v2, "SomeTag"

invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
...