سفری به درون فایل های IPA: بخش دوم

در این سلسله پست  ها میخواهیم سفری به درون فایل های IPA داشته باشیم و با آنها بیشتر آشنا شویم.

 

قسمت دوم: دست کاری های مقدماتی

خب قسمت قبل تا اینجا دسترسی پیدا کردیم.

Payload/
/Payload/Application.app
/iTunesArtwork
/iTunesMetadata.plist

خب در اینجا ما یک فایل متنی داریم. یعنی iTunesMetadata.plist. این فایل را می توانید مثلا توسط برنامه ی NotePad ویندوز به راحتی باز کنید. در این متن شما اطلاعات اپ را مشاهده می کنید. متغیر های مهم در اینجا برای شما توضیح داده می شود.

(البته ممکن است بعضی از این متغیر ها در برنامه های کرک موجود نباشد.)

<key>appleId</key>

پس از این متغیر در داخل دو تا string، اپل آی دی شخصی که برنامه را به صورت اورجینال دانلود کرده، آمده است.

اگر اپ کرک شده باشد، کرک کننده در اینجا متنی دلخواه مثل نامش یا متنی دیگر را مینویسد.

<key>artistId</key>

مقدار این کلید، شماره ی آی دی نویسنده ی برنامه در آیتونز است.

<key>artistName</key>

نام نویسنده ی برنامه مثل  اسم برنامه نویس یا شرکت

<key>genre</key>

مقدار این کلید مشخص کننده ی نوع برنامه است. مثلا آموزشی، سرگرمی، بازی اکشن،….

<key>genreId</key>

کد نوع برنامه را نشان می دهد.

<key>itemId</key>

شماره ی مشخص کننده ی برنامه در آیتونز استور

<key>itemName</key>

نام برنامه

<key>purchaseDate</key>

زمان و تاریخ خرید برنامه توسط کاربر

<key>releaseDate</key>

زمان انتشار برنامه

 …

اینها بخشی از این متغیر ها بود. متغیر های دیگری نیز وجود دارند که بسیار پیچیده ترند و مقدار حافظه ی integer به آنها داده شده است. البته integer مقدار بسیار کمی دارد ولی برای یک مقدار عددی بسیار بزرگ به نظر می رسد.

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

خب حالا از تئوری ها می گذریم و میخواهیم وارد عمل شویم. عملیات را با مثال و با یک برنامه ی ساده شروع می کنیم. حتما همه ی شما برنامه ی بسیار جالب و سرگرم کننده ی Talking Tom 2 را دارید. خب جالب تر می شود که به جای آن  گربه، خودتان (یا هر شخص یا چیز دیگری) حرف های دیگران را تکرار کند!

ابتدا نسخه ای از آن را به جایی کپی کنید تا اگر برنامه خراب شد، از آن استفاده کنید.

حالا برنامه را با یک نرم افزار زیپ، استخراج Extract کنید.

به پوشه ی Payload بروید و وارد پوشه ی موجود در آن بشوید.

هدف ما تغییر انیمیشن های برنامه است. پس به پوشه ی AnimationsTom2Idevice می رویم. البته بخش آخر idevice با توجه به برنامه ی شما، مثلا اگر مخصوص آیپد باشد نوشته شده AnimationsTom2Ipad.

خب باید کمی انگلیسی بدانید و اگر هم ندانید لااقل یک دیکشنری دم دست خود داشته باشید. در این پوشه حدود چهل پنجاه تا پوشه ی انیمیشن وجود دارد.

1

خب حالا با توجه به نام پوشه، انیمیشن را تغییر می دهیم. مثلا پوشه ی poke_foot، انیمیشنی را در بر دارد که در داخل برنامه وقتی به پای گربه دست می زنیم اجرا می شود.

در داخل این پوشه ده عکس وجود دارد که هنگام اجرا پشت سر هم انیمیشن موجود را می سازند. حالا ده عکس متوالی از خود بگیرید تا به جای این انیمیشن، انیمیشن خود را جایگزین کنید. برای ده عکس متوالی، می توانید از خود فیلم بگیرید و ده فریم متوالی آن را به صورت عکس جدا کنید. روش دوم استفاده از برنامه ی FastCamera است که به طور متوالی عکس میگیرد.

2

روش آخر که کمی از مد افتاده و سخت است، این است که به صورت متوالی کمی حرکت کنید و تک تک از خود عکس بگیرید. (همانند انیمیشن سازی های زمان قدیم)

حالا ده عکس برگزیده ی خود را دقیقا در ابعاد عکس های اصلی برنامه کنید و نام های آن ها را هم به نام های عکس ها ی اصلی تغییر دهید و عکس های خودتان را با عکس های اصلی برنامه  جایگزین کنید. این مرحله بسیار مهم و وقت گیر است. باید ابعاد عکس ها و اسم ها تغییر نکند. پس این مرحله را با دقت انجام  دهید.

برای شروع تا این مرحله کافی است. حالا از پوشه ها خارج شوید و به عقب برگردید تا به پوشه ای برسید که دو فایل iTunes Artwork و iTunesMetadata و پوشه Payload در آنجا موجود است. حالا این سه فایل را انتخاب کرده و آن ها را compress  کنید تا به یک فایل زیپ تبدیل شوند. حالا پسوند .zip را پاک کرده و آن را به .ipa تغییر دهید.

برنامه را نصب کنید.

برنامه را باز کنید. حالا اگر در برنامه به پای گربه ضربه بزنید، انیمیشن شما اجرا خواهد شد.

لذت بردید؟!

حالا این بخش اول است. اگر به جای آن چهل پنجاه تا انیمیشن، انیمیشن های خود را قرار دهید، برنامه بسیار جالب می شود و می توانید دیگر برنامه را به جای Talking Tom نام دیگری مثل Talking MY NAME بنامید!

این روش را خودم رفته ام و متن را نیز دقیقا بر اساس تجربیات خودم نوشته ام. امیدوارم خوشتان آمده باشد.