MAT (محلل ذاكرة Eclipse) - كيفية عرض الصور النقطية من تفريغ الذاكرة
-
13-12-2019 - |
سؤال
أقوم بتحليل استخدام الذاكرة لتطبيق Android الخاص بي بمساعدة محلل الذاكرة الكسوف (المعروف أيضًا باسم MAT).في بعض الأحيان يمكنني أن أجد حالات غريبة من android.graphics.Bitmap
فئة، وذلك باستخدام جزء كبير من الكومة.المشكلة هي أنني لا أستطيع العثور على مصدر هذه الصور النقطية، لا اسم الملف, ، لا معرف المورد, ، لا شئ.جميع المعلومات التي يمكنني العثور عليها للصورة النقطية هي التالية:
هناك مجال mBuffer
مع مجموعة من بكسلات الصورة، أفترض.ولكنه بتنسيق Android داخلي، وليس PNG.
سؤال:كيف يمكنني عرض الصورة التي تمثلها هذه الصورة النقطية من تفريغ الذاكرة؟
المحلول
لقد وجدت طريقة لعرض هذه الصور النقطية:
- أولاً، تحتاج إلى التنزيل والتثبيت الأعرج
- بعد ذلك، ابحث عن
Bitmap
كائن في MAT، انقر بزر الماوس الأيمن علىmBuffer
الحقل، في القائمة المنبثقة اختر "ينسخ" -> "حفظ القيمة في الملف" عنصر القائمة وحفظ قيمة هذه المصفوفة في بعض الملفات - إعطاء التمديد
.data
إلى ذلك الملف - إطلاق الأعرج، اختر "ملف" -> "يفتح", ، إختر حقك
.data
الملف وانقر يفتح زر - "تحميل الصورة من البيانات الأولية" سيظهر الحوار.هنا تحتاج إلى تعيين المعلمات الصحيحة للصورة النقطية الخاصة بك
- أولا، اختر "نوع الصورة" مثل "آر جي بي ألفا" (تحتوي معظم موارد Android على هذا النوع من الصور، ولكن قد تحتاج إلى تجربة أنواع صور أخرى)
- ثانيا، تعيين الصحيح عرض و ارتفاع للصورة النقطية الخاصة بك (يمكن العثور على الأبعاد الصحيحة في تفريغ الذاكرة)
عند هذه النقطة يجب أن تلاحظ بالفعل معاينة الصورة الأصلية.إذا لم تقم بذلك، يمكنك محاولة تغيير بعض المعلمات الأخرى "تحميل الصورة من البيانات الأولية" الحوار.
ملحوظة:للحصول على عرض وارتفاع الصورة التي يمكنك النظر إليها mWidth
و mHeight
الحقول في MAT في قسم السمات كما هو موضح في الصورة المعنية.
نصائح أخرى
يمكنك تحويل عمليات تفريغ الذاكرة من MAT إلى png باستخدام ImageMagick على سطر الأوامر.
في MAT
ذات الصلة Bitmap
كائن انقر بزر الماوس الأيمن mBuffer
الحقل وحدد "نسخ" -> "حفظ القيمة في الملف"، ثم قم بتسمية الملف بـ .rgba
امتداد.
تحتاج إلى ملاحظة عرض الصورة النقطية وارتفاعها من mWidth
و mHeight
الحقول، والتي يمكنك رؤيتها في كائن الصورة النقطية.
نأخذ ImageMagick
أدوات سطر الأوامر المثبتة (لـ Ubuntu apt-get install imagemagick
)، أنت تصدر convert
الأمر مع المعلمات التالية.
convert -size 'width'x'height' -depth 8 filename.rgba filename.png
على سبيل المثال
convert -size 680x1209 -depth 8 phone_decor.rgba phone_decor.png
يمكنك التحقق من ملف png الذي تم إنشاؤه عبر eog, ، يحب eog phone_decor.rgba
على Ubuntu
بسهولة.