Skip to content

ساخت کلاس جدید: Java.registerClass ​

تا اینجای کار، ما با Java.use کلاس‌های موجود در اپلیکیشن را تغییر می‌دادیم. اما گاهی اوقات لازم است یک کلاس کاملا جدید را از صفر بسازیم و به اپلیکیشن تزریق کنیم.

چرا باید این کار را بکنیم؟

  1. پیاده‌سازی Interfaceها: اپلیکیشن منتظر دریافت یک شیء است که یک اینترفیس خاص (مثل OnClickListener یا TrustManager) را پیاده‌سازی کرده باشد.
  2. Bypass کردن SSL Pinning: ساختن یک TrustManager جعلی که همه گواهی‌ها را تایید می‌کند.

تفاوت با Java.use

  • Java.use: ویرایشگر (Editor) است. کدهای موجود را تغییر می‌دهد.
  • Java.registerClass: سازنده (Creator) است. یک کلاس جدید در حافظه Runtime می‌سازد.