DroidAssist icon indicating copy to clipboard operation
DroidAssist copied to clipboard

对于Java8的lambda似乎无效

Open iYouthy opened this issue 3 years ago • 1 comments

设备信息

  • 版本: Android 8.1.0
  • 型号: Samsung Galaxy Tab A(2016)

项目信息

  • com.android.tools.build:gradle:3.6.3
  • com.didichuxing.tools:droidassist:1.1.1
  • compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }

xml内容

<DroidAssist>
    <Global>
        <Filter>
            <Include>*</Include>
        </Filter>
    </Global>

    <Insert>
        <BeforeMethodExecution>
            <Source>
                void android.view.View$OnClickListener.onClick(android.view.View)
            </Source>
            <Target>
                com.demo.aop.ClickAop.onClick($1);
            </Target>
        </BeforeMethodExecution>
    </Insert>
</DroidAssist>

现象: 调用View的setOnClickListener方法 传入一个对象: onClick方法调用的时候会执行com.demo.aop.ClickAop.onClick 传入一个lambda表达式, onClick方法调用的时候不会执行com.demo.aop.ClickAop.onClick

iYouthy avatar Apr 20 '21 09:04 iYouthy

同意,对于 Kotlin 的 lambda 也无效。

hehua2008 avatar Feb 11 '22 05:02 hehua2008