تحويل AAB إلى APK عبر الإنترنت: ما الذي تفعله هذه الأداة فعليًا
حزمة تطبيقات Android (.aab) هي التنسيق الذي يطلب Google Play من المطورين تحميله، ولكنه ليس شيئًا يمكنك تثبيته على الهاتف. إذا كان لديك ملف .aab من خادم إنشاء، أو خط أنابيب CI، أو زميل، فأنت بحاجة أولاً إلى تحويله إلى ملف .apk قابل للتثبيت. تمنحك هذه الصفحة شيئين لهذه المهمة: AAB إلى APK منشئ الأوامر التفاعلي الذي يكتب أمر Bundletool الدقيق لنظام التشغيل الخاص بك، وAAB مستكشف الملفات الذي يفتح الحزمة في متصفحك حتى تتمكن من رؤية ما بداخلها قبل تحويلها.
يتم التحويل نفسه من خلال برنامج bundletool الرسمي من Google، وهو برنامج Java. نظرًا لأن Bundletool يحتاج إلى وقت تشغيل Java والوصول إلى ملف تخزين المفاتيح الخاص بك، فإن خطوة الإنشاء الفعلية تحدث على جهازك الخاص، وليس على خوادمنا. لا يتم تحميل ملف .aab الخاص بك في أي مكان أبدًا. يقوم المنشئ ببساطة بإزالة التخمين حتى تتمكن من نسخ أمر صحيح وجاهز للتشغيل بدلاً من حفظ أسماء العلامات.
AAB vs APK: لماذا لا يمكنك إعادة تسمية الملف فقط
يبحث الكثير من الأشخاص عن كيفية تحويل AAB إلى APK عن طريق إعادة تسمية الامتداد، لكنه لا يعمل أبدًا. إن ملف apk. عبارة عن حزمة واحدة قائمة بذاتها يمكن لنظام Android تثبيتها مباشرة. إن .aab عبارة عن حاوية نشر: فهي تحتوي على التعليمات البرمجية المجمعة والموارد المقسمة إلى وحدات، وتتوقع أن يقوم Google Play أو Bundletool بإنشاء ملفات APK النهائية والمحسنة للجهاز منها. لا تؤدي إعادة تسمية الملف إلى فك ضغط هذه الوحدات أو التوقيع على أي شيء، لذلك يرفض Android تثبيته. الطريقة الوحيدة الموثوقة لتحويل حزمة تطبيقات Android إلى APK هي السماح لـ Bundletool بإنشاء مجموعة APK لك.
كيفية تحويل AAB إلى APK على أنظمة التشغيل Windows وMac وLinux
الخطوات هي نفسها على كل نظام أساسي، ويتغير نمط مسار الملف فقط، ولهذا السبب تحتوي أداة إنشاء الأوامر أعلاه على مفتاح تبديل لنظام التشغيل Windows وmacOS وLinux. هنا هو التدفق الكامل من البداية إلى النهاية:
- قم بتثبيت Java JDK 8 أو الأحدث. قم بتشغيل java -version في الوحدة الطرفية للتأكد من وجود Java على المسار الخاص بك.
- تحميل أداة الحزمة. احصل على أحدث bundletool-all.jar من صفحة إصدارات GitHub الرسمية من Google.
- قم ببناء مجموعة APK. قم بتوجيه أداة Bundletool إلى الحزمة الخاصة بك ودعها تنتج أرشيفًا بتنسيق .apks: java -jar bundletool-all.jar build-apks --bundle=app.aab --output=app.apks --mode=universal
- افتح أرشيف apks. إنه مجرد ملف مضغوط، لذا قم باستخراجه وستجد universal.apk بداخله.
- التثبيت على جهازك. انسخ ملف APK إلى هاتفك وقم بتحميله جانبيًا، أو استخدم bundletool install-apks مع جهاز متصل عبر USB.
ملفات APK العالمية مقابل ملفات APK المنقسمة: أيهما يجب أن تقوم بإنشائه؟
إذا كنت تريد تثبيت ملف واحد على أي هاتف، فاستخدم --mode=universal. يؤدي هذا إلى إنشاء APK العالمي من AAB الخاص بك واحد يجمع كل بنية وحدة المعالجة المركزية وكثافة الشاشة واللغة في حزمة واحدة. إنه أكبر حجمًا، لكنه الخيار الأبسط لاختبار الإصدار أو أرشفته أو مشاركته خارج متجر Play. إذا تركت الوضع خارجًا، فبدلاً من ذلك تنتج Bundletool ملفات APK مقسمة يتم اقتطاعها لجهاز واحد محدد، بحيث يتم تنزيلها بحجم أصغر ولكن يتعين عليك تثبيت المجموعة المطابقة معًا. بالنسبة لمعظم الأشخاص الذين يحتاجون فقط إلى تحويل .aab للتثبيت السريع، فإن APK العالمي هو الخيار الصحيح.
التوقيع على APK الذي تحصل عليه من AAB
لن يقوم Android بتثبيت APK ما لم يتم توقيعه. للاختبار، يمكن لـ Bundletool التوقيع باستخدام مفتاح تصحيح الأخطاء تلقائيًا، وهو بالضبط ما يفعله خيار "استخدام مخزن مفاتيح تصحيح الأخطاء" في المنشئ. إذا كنت تقوم بإعداد إصدار إصدار، على سبيل المثال للتوزيع على موقع الويب الخاص بك، فقم بتوقيعه باستخدام مخزن المفاتيح الخاص بك عن طريق ملء مسار مخزن المفاتيح، وكلمة مرور مخزن المفاتيح، والاسم المستعار للمفتاح، وحقول كلمة المرور الرئيسية. يضيف المنشئ بعد ذلك علامات --ks و--ks-pass و--ks-key-alias و--key-pass بحيث يحمل ملف APK الذي تحصل عليه توقيع الإنتاج الحقيقي الخاص بك بدلاً من توقيع تصحيح الأخطاء.
أخطاء Bundletool الشائعة وكيفية إصلاحها
تظهر مشكلتان مرارًا وتكرارًا. تعني الرسالة "bundletool: لم يتم العثور على الأمر" أنك حاولت تشغيل Bundletool كما لو كان أمرًا مضمنًا. إنه ملف JAR، لذا يمكنك دائمًا تسميته بـ java -jar bundletool-all.jar. يعني الخطأ "لا يوجد مفتاح/شهادة" أن تفاصيل التوقيع مفقودة: إما إضافة --mode=universal لبناء اختبار غير موقع، أو توفير علامات تخزين المفاتيح الخاصة بك كما هو موضح أعلاه. تغطي علامة التبويب "استكشاف الأخطاء وإصلاحها" الموجودة أعلى الصفحة المزيد من هذه العناصر، ويتيح لك AAB Explorer التأكد من أن الحزمة الخاصة بك تحتوي بالفعل على الوحدات النمطية التي تتوقعها قبل قضاء الوقت في تصحيح أخطاء أحد الأوامر.
متى تحتاج فعليًا إلى تحويل AAB؟
تتمثل الأسباب المعتادة في اختبار إصدار إصدار على جهاز حقيقي قبل النشر، أو تسليم الإصدار إلى أحد المختبرين الذي لا يستخدم Google Play، أو الاحتفاظ بنسخة قابلة للتثبيت من تطبيقك الخاص لسجلاتك، أو تشغيل ضمان الجودة على الأجهزة التي لا يصل إليها الاختبار الداخلي لمتجر Play. مهما كان السبب، قم فقط بتحويل حزم التطبيقات التي لديك الحق في استخدامها، مثل الإصدارات الخاصة بك أو الحزم التي لديك إذن واضح للعمل بها.