دسترسی به سورس پکیج های اندروید


به عنوان یک توسعه دهنده و دولوپر شاید این کنجکاوی برای شما هم پیش اومده باشه که دوست داشته باشید که به سورس بعضی اپ ها نگاهی بندازید و ببینید که چطوری پیاده سازی شدن. قطعا فایل های پکیح اندروید با پسوند apk هم از این مورد مستثنی نیستند.

ابزار هایی که میخوام اینجا معرفی کنم dex2jar و jd-gui هستند که شاید برخی از شما دوستان با اون آشنایی داشته باشید. با استفاده از این دو ابزار شما قادر خواهید بود به سورس کد جاوای فایل های apk دسترسی پیدا کنید.

البته لازم به ذکر هستش که در صورتی که توسعه دهنده های پکیج مورد نظر از تکنیک obfuscate یا همون مبهم کردن کد استفاده کرده باشند کار برای شما کمی سخت خواهد بود. لازم به ذکر هست که شاید خوشبختانه یا متاسفانه توسعه دهنده های داخلی زیاد به این مورد توجهی ندارند.

برای شروع ابتدا بایستی پکیج dex2jar را دریافت و در محل مورد نظر خودتون استخراج کنید. در زیر نحوه انجام این کار در لینوکس را در چند خط میتونید مشاهده کنید.

بعد از انجام عملیات فوق میتونید به راحتی و تنها با وارد کردن دستوری شبیه به این در ترمینال فایل apk مورد نظر خودتون را به فایل jar تبدیل کنید.

بسیار خوب، تا اینجا فایل apk شما به فایل jar تبدیل شده اما برای مشاهده کد نیاز به نرم افزار Java Decompiler دارید که نحوه استفاده از اون هم پیچیدگی خاصی نداره و فقط کافی هست که مطابق دستور زیر برنامه را دریافت و اجرا کنید.

بعد از اجرای برنامه کافی هستش که فایل jar مربوطه را از طریق دکمه Open a file در نوار ابزار و یا از طریق منوی فایل باز کنید. ساختار درختی پکیج ها در سمت چپ و سورس فایل انتخابی در سمت راست قابل مشاهده خواهد بود.

همچنین نسخه لایو Java Decompiler به صورت آنلاین در این آدرس در دسترس هستش که میتونید بدون نصب لوکال و تنها با درگ کردن فایل jar در اون به صورت آنلاین و در مرورگر خودتون سورس پکیج ها را مشاهده کنید.

 

8 پاسخ
    • میلاد
      میلاد says:

      سلام رضا جان، کدوم یکی از برنامه ها مد نظر هست؟ اگر مشخصا به من بگی میتونم برات جایی آپلودش کنم.

      پاسخ
  1. حسین
    حسین says:

    ضمن عرض سلام و تشکر از سایت خوبتون… مهندس اگه کد ها Obfuscate شده باشن چیکار باید بکنیم تا بخونیمشون؟

    پاسخ

تعقیب

  1. […] دسترسی به سورس پکیج های اندروید – میلاد نکوفر […]

دیدگاه خود را ثبت کنید

Want to join the discussion?
Feel free to contribute!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *