Как интерпретировать эту разобранную строку, используя dedexer?
Ниже приведен фрагмент кода, разобранный с помощью dedexer в приложении для Android Market, в invoke-virtual
Я не понимаю, что может быть оригинальный код Java:
invoke-virtual {v0},[Lcom/google/android/providers/AbstractGDataSyncAdapter$ClientDiffType;/clone ; clone()Ljava/lang/Object;
[
должен быть массивом, тогда он вызывает clone
метод на элементе в массиве типа com/google/android/providers/AbstractGDataSyncAdapter$ClientDiffType
? Тогда почему ;
между именем класса и именем метода clone
? Ошибка в самом dedexer?
1 ответ
Имена классов начинаются с "L" и заканчиваются ";". Так [Lcom/google/android/providers/AbstractGDataSyncAdapter$ClientDiffType;
это массив com.google.android.providers.AbstractGDataSyncAdapter.ClientDiffType
Я не знаю, что такое "/ клон"; синтаксис есть хоть. Похоже, что это может быть ошибка в dedexer. Клон () сразу после этого, очевидно, является методом.
"Затем он вызывает метод клонирования элемента в массиве" - это неверно. Он вызывает метод clone для всего массива, а не для элемента в массиве.