آموزش پورت برنامه های شرکتی(آنالیز و عیب یابی)
با سلام
در آموزش قبلی چگونگی پورت برنامه را آموزش دادیم اکنون با ما باشید تا چگونگی آنالیز و رفع اشکال برنامه ای که پورت کردیم را بررسی کنیم
از لینک بالا می تونید آموزش پورت برنامه را ببینید
بسته شدن برنامه موقع اجرا میتونه سه دلیل داشته باشه که عبارت هستند از
- کم بودن کتابخانه های فریمورک
- ناقص بودن فایلهای so.
- متود جاوا و عملکرد آن با رام کنونی شما همخوانی ندارد
از روشهای زیر برای رفع اشکال استفاده کنید
کم بودن کتابخانه های فریمورک
ناقص بودن فایلهای so.
اینجا کمی سخت بفهمیم که برنامه چه فایلهای so. نیازی دارد
باید logcat را نصب و عیب یابی کنید
مثلا ligcat چنین خطایی میزنه
can’t find class libUXVisualizer
در اینجا شما در مسیر system/lib باید فایل libUXVisualizer.so به رامی که می خواهید پورت کنید انتقال دهید
متود جاوا و عملکرد آن با رام کنونی شما همخوانی ندارد
فاکتورهای زیادی باعث کرش برنامه می شوند
در مثال ما برنامه سونی بیشتر با اشکال GetString مواجه می شوند
خطاهای مانند زیر
بعد از دیدن این log چه باید بکینم؟
- برنامه را با استفاده از framework-res.apk دیکامپایل کنید
- به مسیر smali/com/sonyericsson/metadatacleanup/util/ بروید
- فایل StorageManagerIf.smali را باز کنید
- خط 262 را پیدا کنید
- فایل framework-res.apk خودتان را دیکامپایل کنید
- به مسیر res/value/ بروید
- فایل Public.xml را باز کنید
- طبق StorageManagerIf.smali در خط 262 یک کد مشابه هست
const-string v2, "storage_internal"
پس storage_internal را در Public.xml خود جستجو کنید
کد زیر را نیز کپی کنید برای تغییر
const-string v2, "storage_internal" invoke-direct {p0, v1, v2}, Lcom/sonyericsson/metadatacleanup/util/StorageManagerIf;->getString(Landroid/content/res/Resources;Ljava/lang/String;)Ljava/lang/String; move-result-object v2 invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2
برای کوچک کردن کد
const v2, 0x10405ad
در آخر کد شبیه زیر می شود
.line 262 .local v0, "description":Ljava/lang/String; const v2, 0x10405ad if-eqz v2, :cond_0
در logcat خطاهای زیادی ممکن بوجود بیاد باید مثل بالا دنبال فایلها باشید و کدها را تغییر بدید
وقتی تمام شد فایلها را ریکامپایل ساین و ذخیره کنید
هرگونه کپی برداری از متن بدون ذکر منبع شرعا حرام و مورد پسند نویسنده نمی باشد
سلام
واقعا ممنووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووون
عالی بود
سلام و تشکر از حمایتتون