/* * Copyright (C) 2012 Sony Mobile Communications AB * * This file is part of ApkAnalyser. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package andreflect.injection; import org.jf.dexlib.Code.Opcode; public enum DebugMethod { //LOG_CLASSNAME, LOG_METHODNAME, LOG_RETURN, LOG_PARAM (WIDEPARAM is not supported!) LOG(Opcode.INVOKE_STATIC_RANGE, "Landroid/util/Log;", "v", "I", "Ljava/lang/String;", "Ljava/lang/String;"), SYSTEMOUT(Opcode.INVOKE_STATIC_RANGE, "Ljava/io/PrintStream;", "println", "V", "Ljava/lang/String;"), THREAD_CURRENTTHREAD(Opcode.INVOKE_STATIC, "Ljava/lang/Thread;", "currentThread", "Ljava/lang/Thread;"), THREAD_GETNAME(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/Thread;", "getName", "Ljava/lang/String;"), GC(Opcode.INVOKE_STATIC, "Ljava/lang/System;", "gc", "V"), STRINGBUFFER_APPEND_IBS(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "I"), STRINGBUFFER_APPEND_Z(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "Z"), STRINGBUFFER_APPEND_D(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "D"), STRINGBUFFER_APPEND_C(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "C"), STRINGBUFFER_APPEND_J(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "J"), STRINGBUFFER_APPEND_F(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "F"), STRINGBUFFER_APPEND_STRINGBUFFER(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "Ljava/lang/StringBuffer;"), STRINGBUFFER_APPEND_CHAR_ARRAY(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "[C"), STRINGBUFFER_APPEND_OBJECT(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "Ljava/lang/Object;"), STRINGBUFFER_APPEND_STRING(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "append", "Ljava/lang/StringBuffer;", "Ljava/lang/String;"), STRINGBUFFER_TOSTRING(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/StringBuffer;", "toString", "Ljava/lang/String;"), STRINGBUFFER_INIT(Opcode.INVOKE_DIRECT_RANGE, "Ljava/lang/StringBuffer;", "<init>", "V"), THROWABLE_INIT(Opcode.INVOKE_DIRECT_RANGE, "Ljava/lang/Throwable;", "<init>", "V"), LOG_GETSTACKTRACE(Opcode.INVOKE_STATIC_RANGE, "Landroid/util/Log;", "getStackTraceString", "Ljava/lang/String;", "Ljava/lang/Throwable;"), OBJECT_HASHCODE(Opcode.INVOKE_VIRTUAL_RANGE, "Ljava/lang/Object;", "hashCode", "I"), OBJECT_HASHCODE_SUPER(Opcode.INVOKE_SUPER_RANGE, "Ljava/lang/Object;", "hashCode", "I"); public final Opcode opcode; public final String className; public final String methodName; public final String returnName; public final String[] params; DebugMethod(Opcode opcode, String className, String methodName, String returnName, String... params) { this.opcode = opcode; this.className = className; this.methodName = methodName; this.returnName = returnName; this.params = params; } }