Skip to content

۳. سناریو عملی: فراخوانی متد روی شیء زنده ​

قدرت واقعی Java.choose فقط خواندن نیست؛ شما می‌توانید متدهای آن شیء زنده را صدا بزنید! مثلا دکمه‌ای که مخفی است را کلیک کنید یا متد "ارسال پول" را روی یک تراکنش باز اجرا کنید.

سناریو: اجرای متد مخفی Refresh ​

کد جاوا:

java
package com.example.admin

public class AdminPanel {
    /* این متد وجود دارد اما دکمه‌ای برای آن در UI نیست */    
    public void grantAccess() {
        System.out.println("Access Granted to ALL!")
    }
}

کد فریدا (فراخوانی متد):

javascript
Java.perform(function () {
    Java.choose("com.example.admin.AdminPanel", {
        onMatch: function (instance) {
            console.log("[+] Found AdminPanel instance. Invoking method...")
            
            /* صدا زدن متد روی همین نمونه زنده */            
            instance.grantAccess()
        },
        onComplete: function () {
            console.log("[*] Finished.")
        }
    })
})