Я создаю проект с помощью AspectJ, чтобы перехватить метод в Android. Когда я создаю файл фляга коды я создал это создает скомпилированный синтаксис каждого среза точек я прикладываемые к методам, как, как ниже:Можем ли мы обмануть аннотации в java, используя инструмент dex2jar или любым другим способом?
кода перед запутыванием:
@After(value="(execution(* android.app.Activity.onCreate(..)) && (target(obj) && within(com.snapdeal.ui.activity.MainActivity)))", argNames="obj")
public void ajc$after$demo_Common_Aspects$1$dcc8d2c5(Object obj)
{
.
.
.
}
Когда я запутать этот метод, используя dex2jar инструмента она изменяет только имя метода из
ajc$after$demo_Common_Aspects$19$a6eef354
в строку я запутать pkt1
но т.е. линию этой заметки выше определения методы не изменяется, который показывает деталь методы interce ption.
Код после запутывания:
@After(value="(execution(* android.app.Activity.onCreate(..)) && (target(obj) && within(com.snapdeal.ui.activity.MainActivity)))", argNames="obj")
public void pkt1(Object obj)
{
.
.
.
}
Uptil что теперь я знаю, что мы можем запутывать имена классов, методов и переменных. Но я хочу, чтобы запутать эту строку:
@After(value="(execution(* android.app.Activity.onCreate(..)) && (target(obj) && within(com.snapdeal.ui.activity.MainActivity)))", argNames="obj")
Так что мои Quitions являются:
Можно ли запутать аннотации? Если да, то как?
Как мы можем запутать локальные переменные какого-либо метода?