با گسترش ابزارهایی که از سیستم عامل اندروید استفاده می کنند، برنامه نویسی اندروید جزء حوزه های پرطرفدار برنامه نویسی شده است به همین دلیل این ترم در درس برنامه نویسی سیستم ، اندروید را ارائه کرده ام.
یکی از مسائلی که پیش روی برنامه نویسان تازه کار اندروید است ، عدم توانایی در طراحی فرم های حرفه ای و جذاب برای برنامه هاییست که می خواهند بنویسند. برای حل این مشکل و ایده گرفتن از تلاشهای سایرین در طراحی برنامه های جدید ، دو ابزار را معرفی و توصیه می کنم . کافیست از سایت کافه بازار ، برنامه های مورد نظر خود را دانلود کنید و به روش زیر ، به سورس آنها و طرح بندی صفحات آنها دسترسی پیدا کنید.
یکی نرم افزار ApkTools که با دادن برنامه اندروید به آن ، منابع آن شامل عکس ها، رشته ها و طرح بندی صفحات برنامه را به شما بر می گرداند و دیگری برنامه Dex2Jar که سورس برنامه اندروید را در اختیار شما می گذارد. با کلیک بر روی نام هر برنامه آنرا دانلود کنید و مراحل زیر را برای استفاده از آنها انجام دهید. بعد از بازکردن فایل زیپ و استخراج محتویات آنها ، برای مشاهده منابع یک برنامه به روش زیر عمل کنید : برنامه اندروید موردنظر را در پوشه ApkTool کپی کنید ، بعد وارد خط فرمان ویندوز شوید و به پوشه مورد نظر رفته و دستور زیر را بنویسید :
java –jar apktool.jar d test.apk
که test.apk نام فایلی است که می خواهید عکس ها و طرح بندی آنرا ببیند. بعد از این کار پوشه ای ساخته می شود و درون پوشه ، قسمت ریسورس ، می توانید عکس ها ، آیکون ها و نیز طرح بندی برنامه را ببینید .
اما اگر خود کد برنامه را نیاز دارید و یا می خواهید بدانید که فلان قسمت چگونه نوشته شده است نیاز به برنامه دوم دارید.
اول از همه پسوند فایل apk را به zip تغییر دهید و فایل زیپ را باز کنید و دنبال فایلی بگردید با پسوند Dex که معمولاً classes.dex خواهد بود . این فایل ، کامپایل شده برنامه است و نیاز به رمز گشا دارد. این فایل را کنار فایلهای بازشده ، کپی کنید . دستور زیر را بنویسید تا فایل jar برنامه که حاوی کلاسهای جاوای برنامه است تولید شود . دستور زیر را در خط فرمان بنویسید :
d2j-dex2jar.bat classes.dex
با این کار فایل classes-dex2jar.jar تولید خواهد شد . کافیست این فایل را با برنامه جاوا دیکامپایلر که در همین پوشه برایتان گذاشته ام ، باز کنید یعنی با فایل jd-jui.exe حال با باز کردن پکیج برنامه ، تک تک کلاسهای برنامه را می توانید مشاهده کنید و لذت ببرید .نظرات (17)


نویسنده raha, ژانویه 12, 2013
استاد گرامی من یک عکس کد کیو آر دارم که میخوام دیکدش کنم میشه راهنماییم کنید

نویسنده mixroid, سپتامبر 23, 2013
raha جان سلام شما می تونی تو گوگل سرچ کنی و سایت هایی که به صورت آنلاین این کار رو می کنن پیدا کنی ، من الان برات یکی پیدا کردم.
برو اینجا : http://zxing.org/w/decode.jspx
تو قسمت اول (Enter an image URL
می تونی لینک تصویر کیو آر کد رو بدی تا برات ترجمه کنه
تو قسمت دوم (Or upload a file (
برو اینجا : http://zxing.org/w/decode.jspx
تو قسمت اول (Enter an image URL

تو قسمت دوم (Or upload a file (

نویسنده علیرضا, نوامبر 15, 2013
آقا یک سوال من برای مشاهده classes.dex که گفتید باید چه کار کنم؟
اول این فایل را به پوشه ی dex2jar-0.0.9.11 منتقل کردم.بعد از آن جا نفهمیدم باید چه کار کنم.دستور d2j-dex2jar.bat classes.dex را باید کجا وارد کنم؟
آخرش هم که باید فایل ایجاد شده را با برنامه jd-gui باز کنم.این وسط این جا را کلا نفهمیدم.از اون دستور تا قبل از باز کردن فایل با اون برنامه.
بنایی :
اون دستور را تو خط فرمان باید وارد کنید . توی آدرسی که فایل d2j-dex2jar هست اما جلوش باید آدرس کامل فایل dex را بدید که برای راحتی می تونید تو همون آدرس فایل خودتون را کپی کنید و دستور فوق را بعد از رفتن به اون آدرس انجام بدید
اول این فایل را به پوشه ی dex2jar-0.0.9.11 منتقل کردم.بعد از آن جا نفهمیدم باید چه کار کنم.دستور d2j-dex2jar.bat classes.dex را باید کجا وارد کنم؟
آخرش هم که باید فایل ایجاد شده را با برنامه jd-gui باز کنم.این وسط این جا را کلا نفهمیدم.از اون دستور تا قبل از باز کردن فایل با اون برنامه.
بنایی :
اون دستور را تو خط فرمان باید وارد کنید . توی آدرسی که فایل d2j-dex2jar هست اما جلوش باید آدرس کامل فایل dex را بدید که برای راحتی می تونید تو همون آدرس فایل خودتون را کپی کنید و دستور فوق را بعد از رفتن به اون آدرس انجام بدید

نویسنده رضا, دسامبر 10, 2013
ممنون از آموزش خوبتون
میخواستم بپرسم بعد از دی کد کردن حالا برای تغییر و کد کردن دوباره و برگشت به فایل اندروید چه باید کرد؟
ممنون میشم راهنمایی بفرمایید
بنائی :
برای تغییر از محیط های برنامه نویسی اندروید استفاده کنید که خودشان به ظور خودکار فایل اجرایی اندروید آنرا برایتان خواهند ساخت ...
میخواستم بپرسم بعد از دی کد کردن حالا برای تغییر و کد کردن دوباره و برگشت به فایل اندروید چه باید کرد؟
ممنون میشم راهنمایی بفرمایید
بنائی :
برای تغییر از محیط های برنامه نویسی اندروید استفاده کنید که خودشان به ظور خودکار فایل اجرایی اندروید آنرا برایتان خواهند ساخت ...

نویسنده محمد طوسی, مه 16, 2014
سلام مهندس.
من میخوام فایلهای بازی رو باز کنم که بفهمم سیوش رو کجا ذخیره میکنه (در مورد همه بازیهای اندروید). بعد با hex editor دستکاری کنم. البته مرحله دوم کار رو بلدم. روی بازیهای جاوا و سیمبین اجرا کردم اما با فایلهای اندروید زیاد آشنایی ندارم. میشه راهنمایی کنین چطور مسیر سیو هر بازی رو پیدا کنم؟
بنائی :
متاسفانه بنده هم خیلی حرفه ای تو این زمینه نیستم .
من میخوام فایلهای بازی رو باز کنم که بفهمم سیوش رو کجا ذخیره میکنه (در مورد همه بازیهای اندروید). بعد با hex editor دستکاری کنم. البته مرحله دوم کار رو بلدم. روی بازیهای جاوا و سیمبین اجرا کردم اما با فایلهای اندروید زیاد آشنایی ندارم. میشه راهنمایی کنین چطور مسیر سیو هر بازی رو پیدا کنم؟
بنائی :
متاسفانه بنده هم خیلی حرفه ای تو این زمینه نیستم .

نویسنده علی, اكتبر 01, 2014
سلام.من یه برنامه رو دیکد کردم ولی نمیتونم بفهممش .برای فهمش از کجا وچجوری شروع کنم

نویسنده امیر, نوامبر 25, 2014
سلام منم همون مشکلی که اول ذکر شد رو دارم ولی جوابی که دادینو متوجه نشدم.یعنی جاوا رو سیستمم نصب هست ولی جایی که گفتین
متغیر محیطی path سیستم مسیر اجرای جاوا وارد نشده است)رو متوجه نشدم باید چیکار کنم این پیغامو نده؟؟؟؟؟؟؟؟؟
بنائی :
این آدرس را یک نگاه بیندازید :
http://www.pda-planet.com/forum/forum573/thread8226.html

بنائی :
این آدرس را یک نگاه بیندازید :
http://www.pda-planet.com/forum/forum573/thread8226.html

نویسنده elias, اكتبر 18, 2015
از شما بسیار متشکرم عزیز بزرگوار کمک بزرگی به حقیر کردین با این آموزش بسیار خوبتون


نویسنده goodbache, اكتبر 22, 2016
ممنون از اموزش خوبتون.
فقط یه سوال؟من تمام مراحل رو کامل رفتم اما اخرش رو تفهمیدم که چطور میتونم فایل تولید شده رو دیکامپایل کنم و کلاس ها رو ببینم.لطفا حتما جواب بدین
فقط یه سوال؟من تمام مراحل رو کامل رفتم اما اخرش رو تفهمیدم که چطور میتونم فایل تولید شده رو دیکامپایل کنم و کلاس ها رو ببینم.لطفا حتما جواب بدین

نویسنده محسن , نوامبر 27, 2016
سلام ، استاد اين به اين معناست كه با اين روش ميتوان هر برنامه جعلي را ساخت جوري كه به طور كامل كار كند و به سرور خود برنامه هم متصل شود؟؟ مثلا بياييم برنامه اينستاگرام را ديكد كرد و با ايجاد تغييراتي خاص دوباره ان را كامپايل نمود و ازش استفاده كرد؟؟؟؟؟؟
سلام . نه عزیزم شما فقط کدهای اپ هایی را می تونید برگردونید که هیچ عملیات محافظه کارانه ای روی اونها انجام نگرفته باشه و اتصال به سرور هم نیاز به نام کاربری و رمزعبوری دارد که با دیکد برنامه به دست نخواهید آورد.
موفق باشید
سلام . نه عزیزم شما فقط کدهای اپ هایی را می تونید برگردونید که هیچ عملیات محافظه کارانه ای روی اونها انجام نگرفته باشه و اتصال به سرور هم نیاز به نام کاربری و رمزعبوری دارد که با دیکد برنامه به دست نخواهید آورد.
موفق باشید
نظرتان را بنویسید
من دستورات فوق رو هر چی میزنم به پیغام زیر میرسم:
'java' is not recognized as an internal or external command,
operable program or batch file.
لطفا راهنمایی کنید
بنائی :
دستور فوق یا به این دلیله که اصلا جاوا رو سیستمتون نصب نیست یا اینکه تو متغیر محیطی path سیستم مسیر اجرای جاوا وارد نشده است .