ما هو Zipalign في Android وكيفية جعل Zipaligned

click fraud protection

إذا كنت من محبي Android المتشددين ، فهناك احتمالات قوية بأنك ستحاول بشغف تجربة مظاهر جديدة ، وأقراص مدمجة مخصصة وجميع هذه التعديلات لجهازك. واحدة من نقاط الارتباك الرئيسية هي المصطلحات المرتبطة بهذه التعديلات - وهو أمر مألوف تمامًا للمطورين ، ولكن ليس كثيرًا للمستخدم المبتدئ. من أكثر الكلمات شيوعًا في ROM والمواضيع المخصصة "deodexed" و "zipalign". قبل بضعة أيام ، نحن مغطى بالتفصيل. في هذه المقالة ، سوف نستكشف ما يعني zipalign و كيف يمكن محاذاة ملفات APK.

ما هو ZIPALIGN؟

zipalign هي أداة لمحاذاة الأرشيف تم تقديمها لأول مرة مع 1.6 Android SDK (مجموعة تطوير البرامج). يعمل على تحسين طريقة حزم حزمة تطبيقات Android (APK). يؤدي ذلك إلى تمكين نظام التشغيل Android من التفاعل مع التطبيق بشكل أكثر كفاءة ، وبالتالي لديه القدرة على جعل التطبيق وبشكل عام النظام بأكمله أسرع بكثير. يتم تقليل وقت التنفيذ إلى الحد الأدنى للتطبيقات المضغوطة ، مما ينتج عنه مقدار أقل من استهلاك ذاكرة الوصول العشوائي عند تشغيل APK.

لذا كيف يعمل بالضبط؟

في بيئة تشغيل Android ، يتم الوصول إلى ملفات البيانات المخزنة في كل حزمة تطبيق عن طريق عمليات متعددة ، على سبيل المثال ، سوف يقرأ المثبت بيان البيانات لتحديد ما يرتبط بها أذونات ؛ يمكن لخادم النظام قراءة هذه الموارد لأسباب متعددة ، مثل عرض الإخطارات ؛ سيقرأ تطبيق Home ، على سبيل المثال ، الموارد للحصول على اسم التطبيق ورمزه. نظرًا لأن Android يعتمد على بنية تحتية تشغيلية حقيقية متعددة المهام ، يتم الوصول إلى هذه الملفات بشكل مستمر ومتكرر. أخيرًا وليس آخرًا ، يقرأ التطبيق نفسه بيانات البيان.

instagram viewer

نظرًا لأن Android يعتمد على Linux ، يلعب تعيين الذاكرة دورًا رئيسيًا في المعالجة الفعالة للعمليات. بشكل أساسي ، فإن المحاذاة المثالية لرمز معالجة الموارد لنظام التشغيل Android هي حدود 4 بايت. هذا يعني أنه إذا تم تعيين ملفات APK للذاكرة إلى حدود 4 بايت ، ومحاذاتها وفقًا لذلك ، لن يحتاج نظام التشغيل إلى "قراءة" حزمة التطبيق بالكامل للوصول إلى البيانات المطلوبة يظهر. ستعرف كل عملية نظام مقدمًا أين تبحث عن الموارد المطلوبة ، وبالتالي ستنفذ بشكل أكثر سلاسة وسرعة.

تلخيصها ، يؤدي ضبط ملف APK إلى جعل جميع البيانات غير المضغوطة داخل الحزمة محاذاة على حدود 4 بايت ، مما يسمح بالوصول إلى جميع الأجزاء مباشرة مع خريطة الذاكرة. يتم تقليل استهلاك ذاكرة الوصول العشوائي أثناء التنفيذ لأنه ليس من الضروري قراءة كود الاستعلام من خلال حزمة التطبيق بأكملها.

مساوئ ملفات APK غير المتوافقة

من المفهوم تماما ، سيتم حجز الموقف لحزم التطبيقات غير الانحياز. ستكون قراءة الموارد بطيئة وسيكون استخدام الذاكرة على الطرف الأعلى من الطيف. سيعتمد ذلك أيضًا على عدد التطبيقات غير المنحازة الموجودة. على سبيل المثال ، إذا كان هناك عدد أقل من التطبيقات مع تطبيق المنزل الذي لم تتم محاذاته ، فسوف ترى أوقات بدء تشغيل التطبيق أبطأ. هذا هو أفضل سيناريو. بالنسبة لسيناريو أسوأ الحالات ، فإن وجود عدد من التطبيقات غير المنحازة سيؤدي إلى بدء النظام وعمليات القتل بشكل متكرر ، ويكافح مع التأخير واستنزاف البطارية الضخم.

كيف تفعل ذلك ، ثم؟

كما ذكرنا سابقًا ، أصبحت أداة zipalign جزءًا من Android SDK من الإصدار 1.6 وما بعده. يمكن العثور عليه ضمن مجلد "الأدوات" في SDK. لاستخدامه ، ما عليك سوى تشغيل الأمر:

zipalign [-f] [-v]  infile.apk outfile.apk

أين infile.apk هو ملف المصدر ، و outfile.apk هو ملف الإخراج.

علاوة على ذلك ، يمكنك أيضًا التحقق من محاذاة ملف APK باستخدام الأمر التالي:

zipalign -c -v  موجود. apk

أين موجود. apk يمكن أن يكون أي حزمة تطبيق تحتاج إلى التحقق منها. أيضا ، يجب أن تكون العلامة في كلا الأمرين قيمة متكاملة (وإلا سيعيد الأمر غير صالح). هذه القيمة ، على الرغم من أنها يمكن أن تكون أي عدد صحيح ، يجب أن تكون دائمًا 4 ، مما يوفر محاذاة 32 بت. أي قيمة أخرى ولن تفعل أي شيء.

أخيرًا ، بالنسبة للأعلام المستخدمة في هذه الأوامر ،

  • -F: الكتابة فوق outfile.zip الموجودة
  • -الخامس: سيعطي إخراج مطول
  • : سيؤكد محاذاة ملف معين

كلمة التنبيه: يجب تنفيذ عملية zipalign فقط بعد لقد وقعت ملف APK بمفتاحك الخاص. إذا تم محاذاة zipal قبل التوقيع ، فسوف يزعج إجراء التوقيع المحاذاة. وينطبق الشيء نفسه على أي تعديل أو إضافة أو إزالة أخرى لملف APK. أي تغيير بعد تشغيل zipalign سيؤدي إلى التراجع عن المحاذاة.

تنصل: هذا الدليل مخصص للأغراض التعليمية فقط. لا يعد هذا بأي حال من الأحوال بديلاً لمجموعة أدوات مطوري Android ، ولا يُقصد استخدامه لأغراض التطوير. لا توفر AddictiveTips أي دعم فيما يتعلق بالمواد المعروضة هنا.

watch instagram story