دعم بُنى 64 بت

يجب أن تكون التطبيقات المنشورة على Google Play متوافقة. بُنى 64 بت: إضافة إصدار 64 بت من تطبيقك تحسينات في الأداء وإعدادك للأجهزة التي تعمل بالإصدار 64 بت فقط الأجهزة.

تضمن الخطوات التالية أن يتوافق تطبيقك 32 بت مع الأجهزة التي تعمل بالإصدار 64 بت.

تقييم تطبيقك

إذا كان تطبيقك يستخدم فقط رمزًا برمجيًا مكتوبًا بلغة برمجة Java أو بلغة بما في ذلك جميع المكتبات أو حِزم تطوير البرامج (SDK)، يتوافق تطبيقك مع الأجهزة التي تعمل بالإصدار 64 بت. إذا كان تطبيقك يستخدم أي رمز برمجي مدمج مع المحتوى أو لم تكن متأكدًا من استخدامه، عليك تقييم التطبيق.

فحص سريع للحالة

يمكنك الانتقال إلى Play Console وإلقاء نظرة على الإصدارات الحالية لمعرفة ما إذا كانت متوافقون.

تعرض أداة Play Console أيضًا تحذيرات تنطبق على مسودات الإصدارات في حال كانت هناك أي مشاكل متعلقة بمتطلبات الإصدار 64 بت. الصورة التالية هي مثال.

إذا ظهر تنبيه، اطّلِع على الخطوات التالية لجعل تطبيقك متوافقًا مع الأجهزة التي تعمل بإصدار 64 بت.

هل يستخدم تطبيقك رمزًا أصليًا؟

يستخدم تطبيقك الرموز البرمجية الأصلية في الحالات التالية:

  • عند استخدام أي رمز C/C++ (أصلي) في تطبيقك
  • الروابط التي تتضمن أي مكتبات أصلية تابعة لجهات خارجية
  • تم إنشاؤه بواسطة أداة إنشاء تطبيقات تابعة لجهة خارجية تستخدم المكتبات الأصلية.

هل يتضمّن تطبيقك مكتبات 64 بت؟

افحص بنية ملف APK. عند إنشاء حزمة APK، يتم حزمها مع أي مكتبات مجمّعة من رموز برمجية أصلية يحتاجها التطبيق. ويتم تخزين المكتبات المجمّعة من رموز برمجية أصلية في مجلدات مختلفة استنادًا إلى ABI. ليس من المطلوب أن يكون تطبيقك متوافقًا مع كل بنية أساسية بإصدار 64 بت، ولكن يجب تضمين بنية أساسية بإصدار 64 بت مع كل بنية أساسية أصلية بإصدار 32 بت توفّرها.

بالنسبة إلى بنية ARM، تتوفّر مكتبات 32 بت في armeabi-v7a. وفي المقابل، يمكن تشغيل إصدار 64 بت من خلال arm64-v8a.

بالنسبة إلى بنية x86، ابحث عن الأمر x86 لنظام التشغيل 32 بت وx86_64 للحصول على 64 بت

يُرجى التأكُّد من توفُّر مكتبات أصلية في كلا هذين المجلدَين. باختصار:

النظام الأساسي مجلد المكتبات بنظام 32 بت مجلد المكتبات 64 بت
تفعيل جهاز الإنذار lib/armeabi-v7a lib/arm64-v8a
x86 lib/x86 lib/x86_64

يُرجى العِلم أنّه قد تتوفّر مجموعة متطابقة من مكتبات في كل مجلد أو قد لا تتوفّر، وذلك حسب التطبيق. والهدف من ذلك هو التأكد من أن تطبيقك يعمل بشكل صحيح في بيئة 64 بت فقط.

في الحالات العادية، تحتوي حِزمة APK أو الحِزمة التي تم إنشاؤها لكل من البنيتَين الأساسية بإصدارَي 32 بت و64 بت على مجلدات لكل من معيارَي ABI، وكل منهما يحتوي على مجموعة مقابلة من المكتبات الأساسية. في حال عدم توافق الإصدار 64 بت، قد يظهر لك مجلد ABI 32 بت. ولكن ليس مجلدًا 64 بت.

البحث عن المكتبات الأصلية باستخدام أداة تحليل APK

أداة تحليل حِزم APK هي أداة تتيح لك تقييم مختلف الجوانب لحزمة APK تم إنشاؤها. استخدِم هذا العنوان للعثور على أي مكتبات أصلية، وتأكَّد من تثبيت الإصدار 64 بت وجود المكتبات.

  1. افتح استوديو Android وافتح أي مشروع.
  2. من القائمة، اختَر الإنشاء > تحليل حزمة APK.

    تشغيل أداة تحليل حِزم APK

  3. اختَر حزمة APK التي تريد تقييمها.

  4. ابحث داخل المجلد lib الذي يستضيف الملف " .so" الملفات إن وجدت. إذا كانت هناك لا شيء، فإن تطبيقك يتوافق مع الأجهزة التي تعمل بالإصدار 64 بت ولا يتم اتخاذ أي إجراء آخر مطلوبة. إذا ظهر لك armeabi-v7a أو x86، هذا يعني أنّ لديك مكتبات 32 بت.

  5. تحقَّق ممّا إذا كانت لديك ملفات ‎.so مشابهة في مجلد arm64-v8a أو x86_64.

    تشغيل أداة تحليل حِزم APK

  6. إذا لم يكن لديك أي مكتبات arm64-v8a أو x86_64، حدِّث لبدء إنشاء تلك العناصر وتغليفها في حزمة APK.

  7. إذا كنت ترى بالفعل كلتا المكتبتين في حزمة، يمكنك التخطي إلى اختبار تطبيقك على أجهزة 64 بت.

البحث عن المكتبات المجمّعة من الرموز البرمجية الأصلية عن طريق فك ضغط حِزم APK

تكون ملفات APK منظمة على شكل ملفات ZIP. استخرِج ملف APK باستخدام سطر الأوامر أو أي أداة دتثبيت أخرى. استنادًا إلى أداة الاستخراج، قد يكون عليك إعادة تسمية الملف إلى ‎.zip.

تصفَّح الملفات التي تم استخراجها باتّباع الإرشادات أعلاه لتحديد ما إذا كان تطبيقك متوافقًا مع الأجهزة التي تعمل بإصدار 64 بت. يمكنك تشغيل المثال التالي على الأوامر من سطر الأوامر:

:: Command Line
> zipinfo -1 YOUR_APK_FILE.apk | grep \.so$
lib/armeabi-v7a/libmain.so
lib/armeabi-v7a/libmono.so
lib/armeabi-v7a/libunity.so
lib/arm64-v8a/libmain.so
lib/arm64-v8a/libmono.so
lib/arm64-v8a/libunity.so

يُرجى ملاحظة توفّر مكتبتَي armeabi-v7a وarm64-v8a في هذا المثال، ما يعني أنّ التطبيق متوافق مع البنى الأساسية بإصدار 64 بت.

إنشاء تطبيقك باستخدام مكتبات 64 بت

توضِّح التعليمات التالية كيفية إنشاء مكتبات 64 بت. لاحظ أن لا تغطي هذه الخطوات سوى رمز المبنى والمكتبات التي يمكنك إنشاءها من المصدر.

الإنشاء باستخدام "استوديو Android" أو Gradle

تستخدم معظم مشاريع "استوديو Android" منصّة Gradle كنظام تصميم أساسي، لذلك التطبيق على كلتا الحالتين. لتفعيل عمليات الإنشاء للرمز البرمجي الأصلي، أضِف arm64-v8a و/أو x86_64، استنادًا إلى البنى التي تريد توفّرها، إلى الإعداد ndk.abiFilters فيملف build.gradle في تطبيقك:

رائع

// Your app's build.gradle
plugins {
  id 'com.android.app'
}

android {
   compileSdkVersion 27
   defaultConfig {
       appId "com.google.example.64bit"
       minSdkVersion 15
       targetSdkVersion 28
       versionCode 1
       versionName "1.0"
       ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
// ...

Kotlin

// Your app's build.gradle
plugins {
    id("com.android.app")
}

android {
    compileSdkVersion(27)
    defaultConfig {
        appId = "com.google.example.64bit"
        minSdkVersion(15)
        targetSdkVersion(28)
        versionCode = 1
        versionName = "1.0"
        ndk {
            abiFilters += listOf("armeabi-v7a","arm64-v8a","x86","x86_64")
        }
// ...

الإنشاء باستخدام CMake

إذا تم إنشاء تطبيقك باستخدام CMake، يمكنك إنشاء إصدار لنظام 64 بت. واجهات التطبيق الثنائية (ABI) عن طريق تمرير arm64-v8a في "DANDROID_ABI" :

:: Command Line
> cmake -DANDROID_ABI=arm64-v8a … or
> cmake -DANDROID_ABI=x86_64 …

الإنشاء باستخدام ndk-build

إذا تم إنشاء تطبيقك باستخدام ndk-build، يمكنك إنشاء ملف APK لنظام التشغيل Android Studio باستخدام ملف Application.mk من خلال تعديل المتغيّر APP_ABI:

APP_ABI := armeabi-v7a arm64-v8a x86 x86_64

منفذ رمز مصدر 32 بت إلى 64 بت

إذا كان الرمز البرمجي يعمل على أجهزة الكمبيوتر المكتبي أو iOS، لن تحتاج إلى إجراء أي عمل إضافي على Android. إذا كانت هذه هي المرة الأولى التي يتم فيها إنشاء الرمز البرمجي لنظام بسعة 64 بت، فإنّ المشكلة الرئيسية التي يجب معالجتها هي أنّ المؤشرات لم تعُد تناسب أنواع الأعداد الصحيحة بسعة 32 بت مثل int.

عدِّل الرمز الذي يخزّن المؤشرات في أنواع مثل int أو unsigned أو uint32_t. في أنظمة التشغيل Unix، يتطابق الرمز long مع حجم المؤشر، ولكن هذا ليس هو الحال في Windows. بدلاً من ذلك، يمكنك استخدام الأنواع uintptr_t أو intptr_t لتخزين الفرق بين مؤشرَين، استخدِم ptrdiff_t. الكتابة.

ينبغي لك دائمًا تفضيل أنواع الأعداد الصحيحة المحددة ذات العرض الثابت المحددة في <stdint.h> بدلاً من الأنواع غير الثابتة العرض، مثل int أو long، حتى لللاعبين الذين لم يوجِّهوا النقاط.

استخدام علامات برنامج التجميع التالية لرصد الحالات التي يكون فيها الرمز البرمجي غير صحيح التحويل بين المؤشرات والأعداد الصحيحة:

-Werror=pointer-to-int-cast
-Werror=int-to-pointer-cast
-Werror=shorten-64-to-32

تكون فئات Java التي تتضمن حقول int تحتوي على مؤشرات لكائنات C/C++ متطابقة المشكلة. ابحث عن jint في مصدر JNI وتأكَّد من التبديل إلى وlong على جانب Java وjlong على جانب C++.

إنّ تعريفات الدوال الضمنية أكثر خطورة بكثير على التعليمات البرمجية 64 بت. ملفات المصدر C/C++ لنفترض أن نوع الإرجاع لدالة مُعلَنة ضمنيًا (أي التي لم يرى المحول البرمجي تصريحًا لها) هي int. إذا كان نوع الإرجاع الفعلي لدالة معيّنة هو مؤشر، يعمل ذلك بشكل جيد على نظام 32 بت حيث يتلاءم المؤشر مع int. ومع ذلك، على نظام 64 بت، يسقط المُجمِّع النصف العلوي من المؤشر. مثلاً:

// This function returns a pointer:
// extern char* foo();

// If you don't include a header that declares it,
// when the compiler sees this:
char* result = foo();

// Instead of compiling that to:
result = foo();

// It compiles to something equivalent to:
result = foo() & 0xffffffff;

// Which will then cause a SIGSEGV if you try to dereference `result`.

تحول علامة برنامج التجميع التالية تحذيرات إعلان الدالة الضمني إلى لكي تتمكّن من العثور على هذه المشكلة وحلّها بسهولة أكبر:

-Werror=implicit-function-declaration

إذا كان لديك مجمع مضمن، فأعد كتابته أو استخدم تنفيذ C/C++ عادي.

إذا كانت لديك أحجام أنواع مضمّنة في الرمز (8 أو 16 بايت مثلاً)، استبدِلها بتعبير sizeof(T) المكافئ، مثل sizeof(void*).

إذا كنت بحاجة إلى تجميع تعليمات برمجية مختلفة بنظام 32 بت عن 64 بت بشكل مشروط، يمكنك استخدام #if defined(__LP64__) للاختلافات العامة في 32/64، أو __arm__، __aarch64__ (arm64) و__i386__ (x86) و__x86_64__ للتحديد الهياكل التي يدعمها Android.

عدِّل سلاسل التنسيق للدوالّ المشابهة لدالة printf أو scanf، لأنّ محدّدات التنسيق التقليدية لا تسمح لك بتحديد أنواع 64 بت بطريقة صحيحة لكل من الأجهزة التي تعمل بالإصدار 32 بت و64 بت. وحدات ماكرو PRI وSCN في حلّ <inttypes.h> هذه المسألة: PRIxPTR وSCNxPTR لكتابة وقراءة المؤشرات السداسية العشرية وPRId64 وSCNd64 للكتابة قراءة قيم 64 بت بسهولة.

عند النقل، قد تحتاج إلى استخدام 1ULL للحصول على ثابت 64 بت لنقله بدلاً من استخدام 1 الذي يبلغ 32 بت فقط.

الحدّ من الزيادات في الحجم باستخدام "مجموعة حزمات تطبيق Android"

يمكن أن تؤدي إضافة بنية أساسية بإصدار 64 بت إلى تطبيقك إلى زيادة حجم حزمة APK. ننصحك بشدة بالاستفادة من ميزة حِزم Android App Bundle لتقليل تأثير حجم تضمين الرمز البرمجي الأصلي بنظامَي 32 و64 بت في حِزمة APK نفسها.

مطوّرو الألعاب

وتدعم المحركات الثلاثة الأكثر استخدامًا نظام 64 بت:

  • لعبة استثنائية منذ عام 2015
  • مشروع Cocos2d منذ عام 2015
  • Unity منذ عام 2018

مطوّرو Unity

الترقية إلى الإصدارات المتوافقة

توفّر Unity إصدارًا متوافقًا مع الإصدار 64 بت من خلال الإصدارَين 2018.2 و 2017.4.16.

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

في ما يلي رسم بياني يوضّح إصدارات Unity المختلفة والإجراءات التي يجب اتّخاذها:

إصدار Unity يتوافق الإصدار مع نظام 64 بت؟ الإجراء المقترَح

2020.x

✔️

التأكّد من دمج الإصدار تعمل الإعدادات على إخراج مكتبات 64 بت.

2019.x

✔️

تأكَّد من أنّ إعدادات الإصدار تنتج مكتبات 64 بت.

2018.4 (الإصدار المتوفّر لفترة طويلة)

✔️

تأكَّد من أنّ إعدادات الإصدار تنتج مكتبات 64 بت.

2018.3

✔️

التأكد من صحة ناتج إعدادات الإصدار مكتبات 64 بت.

2018.2

✔️

تأكَّد من أنّ إعدادات الإصدار تنتج مكتبات 64 بت.

2018.1

يتوفّر دعم تجريبي لإصدار 64 بت.

2017.4 (LTS)

✔️

متاح اعتبارًا من 2017.4.16. تأكَّد من أنّ إعدادات الإصدار تنتج مكتبات 64 بت.

2017.3

DUNS️

الترقية إلى الإصدار الذي يتوافق مع 64 بت.

2017.2

✖️

يجب الترقية إلى إصدار متوافق مع الإصدار 64 بت.

2017.1

DUNS️

الترقية إلى الإصدار الذي يتوافق مع 64 بت.

‫<=5.6

✖️

الترقية إلى الإصدار الذي يتوافق مع 64 بت.

تغيير إعدادات الإنشاء لإخراج مكتبات 64 بت

إذا كنت تستخدم إصدارًا من Unity متوافقًا مع مكتبات Android بإصدار 64 بت، يمكنك إنشاء إصدار 64 بت من تطبيقك من خلال تعديل إعدادات الإصدار. استخدام خلفية IL2CPP كخلفية لبرمجة النصوص البرمجية لإعداد مشروع Unity لإنشاء بنية أساسية بنظام 64 بت، اتّبِع الخطوات التالية:

  1. انتقِل إلى إعدادات الإنشاء وتأكَّد من أنّك بصدد إنشاء تطبيق لنظام التشغيل Android من خلال verifying that the Unity symbol is next to Android under Platform. 1. إذا لم يكن رمز Unity بجانب نظام Android الأساسي، اختَر Android وانقر على تبديل النظام الأساسي.
  2. انقر على إعدادات المشغّل.

    إعدادات المشغّل في Unity

  3. انتقِل إلى لوحة إعدادات المشغّل > إعدادات Android > الإعدادات الأخرى > الإعداد.

  4. اضبط Scripting Backend على IL2CPP.

  5. اختَر بنية الاستهداف > ARM64.

    تحديد البُنى الأساسية المستهدفة في Unity

  6. ابنِ كالمعتاد!

لاحظ أن إنشاء ARM64 يتطلب إنشاء جميع أصولك بشكل خاص لذلك النظام الأساسي. اتّباع إرشادات Unity للحدّ من استخدام حزمة APK الحجم، وفكر في الاستفادة من استخدام ميزة مجموعة حزمات تطبيق Android للمساعدة في الحدّ من هذه الزيادة في الحجم.

التوافق مع حِزم APK المتعدّدة وإصدار 64 بت

إذا كنت تستخدم دعم حِزم APK المتعدّدة من Google Play لنشر تطبيقك، يُرجى العِلم أنّه يتم تقييم الامتثال لمتطلبات الإصدار 64 بت على مستوى الإصدار. ومع ذلك، لا ينطبق شرط استخدام نظام التشغيل 64 بت على حِزم APK أو حِزم التطبيقات التي لا يتم توزيعها على الأجهزة التي تعمل بنظام التشغيل Android 9 Pie أو الإصدارات الأحدث.

في حال تم وضع علامة على أحد حِزم APK تشير إلى أنّه غير متوافق، ولكنّه إصدار سابق وليس من الممكن تحقيق الامتثال المطلوب، تتمثل إحدى الإستراتيجيات في إضافة maxSdkVersion="27" في العنصر uses-sdk في بيان APK هذا. لم يتم تسليم حزمة APK هذه للأجهزة التي تعمل بنظام التشغيل Android 9 Pie أو ما بعده، ولم تعد تمنع الامتثال.

التوافق مع RenderScript و64 بت

إذا كان تطبيقك يستخدم RenderScript وتم إنشاؤه باستخدام إصدار سابق من أدوات Android، قد تواجه مشاكل في التوافق مع الإصدار 64 بت للتطبيق. باستخدام أدوات الإنشاء الأقدم من الإصدار 21.0.0، قد ينشئ المُجمِّع رمزًا ثنائيًا في ملف .bc خارجي. لم تعُد ملفات .bc القديمة متوافقة مع المعماريات التي تعمل بنظام 64 بت، لذا يؤدي وجود الملف في حزمة APK إلى حدوث مشكلة عدم الامتثال.

لحلّ المشكلة، عليك إزالة أي ملفات.bc في مشروعك، ثم ترقية على build-tools-21.0.0 أو إصدار أحدث، وضبط renderscriptTargetApi في "استوديو Android" للمستخدمين الذين تزيد أعمارهم عن 21 عامًا، لإخبارهم برنامج التجميع حتى لا يصدر ملفات .bc. بعد ذلك، أعِد إنشاء تطبيقك وتحقّق من .bcملفّات ، ثم حمِّله على Play Console.

اختبار تطبيقك على أجهزة تعمل بنظام 64 بت

يجب أن يقدّم إصدار تطبيقك بنظام 64 بت الجودة ومجموعة الميزات نفسها التي يقدّمها الإصدار بنظام 32 بت. اختبِر تطبيقك للتأكّد من أنّ المستخدمين الذين يستخدمون أحدث الأجهزة التي تعمل بالإصدار 64 بت يحصلون على تجربة رائعة في تطبيقك.

الأجهزة التي تعمل بالإصدار 64 بت فقط

ننصح باختبار تطبيقك في بيئة 64 بت فقط بقدر الإمكان باستخدام أحد الخيارَين التاليَين:

هاتف Google Pixel مزوّد بنظام 64 بت فقط

لتسهيل تطوير التطبيقات واختبارها، وفّرنا صورًا خاصة للنظام تتضمّن بيئة صارمة تعمل بنظام 64 بت فقط لبعض أجهزة Pixel. تم توفير هذه الصور المخصّصة لنظام التشغيل 64 بت فقط في الأصل مع صور نظام التشغيل العادية المخصّصة للمصنع لإصدارَي Android 13 و14 التجريبيَين، ولكن يمكنك مواصلة استخدامها أثناء اختبار تطبيقك للتأكّد من توافقه مع الإصدار 64 بت.

الحصول على صورة 64 بت فقط

على غرار صور نظام التشغيل الأصلية، يمكنك فلاش صورة 64 بت فقط على جهازك باستخدام أداة فلاش Android أو من خلال فلاشه الجهاز يدويًا، كما هو موضّح في الأقسام التالية.

فلاش جهازك باستخدام أداة Android Flash Tool

تتيح لك أداة Android Flash تثبيت نسخة نظام التشغيل بأمان. إلى جهاز Pixel المتوافق. تعمل أداة فلاش Android مع أي متصفّح ويب يتوافق مع WebUSB، مثل Chrome أو Edge 79 والإصدارات الأحدث.

ترشدك أداة Android Flash Tool خطوة بخطوة خلال عملية تثبيت جهازك — لا يلزم وجود أدوات مثبتة — ولكنك تحتاج إلى فتح قفل وتفعيل ميزة "تصحيح أخطاء الجهاز عبر USB" في "خيارات المطوّرين". للحصول على التوجيهات الكاملة، يُرجى الاطّلاع على مستندات أداة فلاش Android .

يمكنك توصيل جهازك عبر USB، ثم حسب نوع صورة النظام تريد تطبيق Flash، انتقل إلى أداة Android Flash باستخدام أحد الروابط التالية واتّبِع الإرشادات التي تظهر على الشاشة:

  • صور النظام بنظام 64 بت فقط في الإصدار 14 من نظام التشغيل Android (الإصدار التجريبي 5.2)

    اختَر الجهاز الذي تحاول فلاشه:

  • صور نظام التشغيل Android 13 (الإصدار التجريبي 3.2 من QPR3) بإصدار 64 بت فقط

    اختَر الجهاز الذي تحاول ومضغه:

تحديث جهازك يدويًا

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

بعد الاحتفاظ بنسخة احتياطية من بيانات جهازك وتنزيل صورة النظام المطابقة، يمكنك فلاشة الصورة على جهازك.

يمكنك اختيار الرجوع إلى أحدث إصدار متاح للجميع في أي وقت. الوقت.

صور المصنع لنظام التشغيل Android 14 (الإصدار التجريبي 5.3) بنظام 64 بت فقط

توفر هذه الصور بيئة صارمة لها 64 بت فقط لاختبار تطبيق 64 بت التوافق. هذه الإعدادات المخصّصة لإصدار 64 بت فقط مخصّصة للمطوّرين فقط.

الجهاز رابط التنزيل المجموع الاختباري لخوارزمية SHA-256
Pixel 4a (5G)‎ 7e6731fab811ae389f5ff882d5c5a2b8b942b8363b22bbcc038b39d7c539e60a
Pixel 5 c4da6a19086a02f2cd2fa7a4054e870916954b8e5a61e9a07ee942c537e4b45a
Pixel 6 98943384284cbc7323b8867d84c36151757f67ae7633012fb69cb5d6bec2b554
Pixel 6 Pro 67ec40be5bd05a40fa5dabc1ce6795aae75d1904193d52e2da00425ed7cb895b
صور المصنع بإصدار 64 بت فقط لنظام التشغيل Android 13 (الإصدار التجريبي 3.2 من QPR3)

توفر هذه الصور بيئة صارمة لها 64 بت فقط لاختبار تطبيق 64 بت التوافق. يُرجى العلم أنّ عمليات ضبط الإصدار 64 بت فقط مخصَّصة لمطوّري البرامج فقط.

الجهاز رابط التنزيل المجموع الاختباري لخوارزمية SHA-256
Pixel 4a (5G)‎ b4be40924f62c3c2b3ed20a9f7fa4303aa9c39649d778eb96f86c867fe3ae59a
Pixel 5 6e5e027a4f64f9f786db9bb69d50d1a551c3f6aad893ae450e1f8279ea1b761a
Pixel 6 becb9b81a5bddad67a4ac32d30a50dcb372b9d083cb7c046e5180510e479a0b8
Pixel 6 Pro b0ef544ed2312ac44dc827f24999281b147c11d76356c2d06b2c57a191c60480
الرجوع إلى إصدار متاح للجميع

يمكنك استخدام أداة فلاش Android لتثبيت نسخة البرامج الأصلية أو الحصول على نسخة من نظام التشغيل المتوافقة مع مواصفات الشركة المصنّعة من صفحة نسخة البرامج الأصلية لأجهزة Nexus وPixel ثم تثبيتها يدويًا على الجهاز.

محاكي Android

بدءًا من الإصدار Android 12 (المستوى 31 من واجهة برمجة التطبيقات)، ستكون صور نظام "محاكي Android" بنظام 64 بت فقط. إنشاء جهاز Android افتراضي (AVD) باستخدام نظام صورة تعمل بالإصدار 12 من نظام التشغيل Android (المستوى 31 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث للحصول على إصدار 64 بت فقط لاختبار التطبيق.

خيارات الأجهزة الأخرى

إذا لم يكن لديك أي من هذين الجهازين أو لم تتمكن من استخدام محاكي Android، فإن الخيار الأفضل التالي هو استخدام جهاز يعمل بالإصدار 64 بت، مثل هاتف Pixel أو أجهزة أخرى حديثة من شركات مصنّعة أخرى للأجهزة

تثبيت تطبيقك واختباره

أسهل طريقة لاختبار حزمة APK هي تثبيت التطبيق باستخدام أداة Android Debug Bridge (adb). في معظم الحالات، يمكنك تقديم --abi كمَعلمة للإشارة إلى المكتبات التي يجب تثبيتها على الجهاز. يؤدي ذلك إلى تثبيت التطبيق باستخدام مكتبات 64 بت فقط على الجهاز.

:: Command Line
# A successful install:
> adb install --abi armeabi-v7a YOUR_APK_FILE.apk
Success

# If your APK does not have the 64-bit libraries:
> adb install --abi arm64-v8a YOUR_APK_FILE.apk
adb: failed to install YOUR_APK_FILE.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]

# If your device does not support 64-bit, an emulator, for example:
> adb install --abi arm64-v8a YOUR_APK_FILE.apk
ABI arm64-v8a not supported on this device

بعد تثبيت التطبيق بنجاح، اختبِر تطبيقك على النحو المعتاد. التأكد من أن الجودة مماثلة لإصدار 32 بت.

التحقّق من المشاكل المعروفة في التوافق

أثناء الاختبار، تحقّق من تطبيقك بحثًا عن المشاكل التالية التي تؤثر في التطبيقات عند تشغيلها على الأجهزة التي تعمل بالإصدار 64 بت. حتى إذا كان تطبيقك لا يعتمد على المكتبات المتأثرة مباشرةً، قد تعتمد عليها المكتبات وحِزم SDK التابعة لجهات خارجية والملحَقة بتطبيقك.

SoLoader

في حال استخدام حزمة تطوير البرامج (SDK) لأداة تحميل الرموز الأصلية SoLoader: يجب تحديثه إلى الإصدار 0.10.4 أو إصدار أحدث. إذا كان تطبيقات SDK التي تعتمد على SoLoader، فاحرص أيضًا على التحديث إلى آخر إصدار ثابت من حِزم تطوير البرامج (SDK) المتأثّرة

يفترض الإصدار 0.9.0 من SoLoader والإصدارات الأقدم أنّ مكتبات النظام متوفّرة في ‎ /vendor/lib:/system/lib. لا يمكن ملاحظة هذا الخطأ في أجهزة مثل Pixel 7 التي يتوفّر فيها المسار، ولكن يؤدي هذا الافتراض إلى حدوث أعطال في الأجهزة التي تحتوي فقط على مكتبات النظام في /vendor/lib64:/system/lib64.

لمزيد من المعلومات عن حلّ هذه المشكلة وغيرها من المشاكل الناتجة عن SoLoader، يُرجى الاطّلاع على الإجابة المناسبة في "مركز مساعدة Google"

OpenSSL

إذا كنت تستخدم مكتبة OpenSSL، يجب التحديث إلى الإصدار 1.1.1i من OpenSSL أو إصدار أحدث. إذا كان تطبيقك يستخدم حِزم تطوير برامج (SDK) توفّر إمكانية الاتصال باستخدام بروتوكول HTTPS أو حِزم تطوير برامج (SDK) أخرى تعتمد على مكتبة OpenSSL، احرص أيضًا على التحديث إلى أحدث إصدار من حزمة SDK التي تستخدم إصدارًا أحدث من مكتبة OpenSSL. يُرجى التواصل مع موفِّر حِزَم تطوير البرامج (SDK) إذا لم يكن مرتبطًا بحزمة SDK. المتوفرة.

ARMv8.3 PAC يتيح التحكُّم بمساعدة الأجهزة سلامة التدفق من خلال مصادقة المؤشرات في وقت التشغيل. تستخدم الإصدارات السابقة من مكتبة OpenSSL هذه الإمكانات بشكل غير صحيح، ما يتسبب في حدوث أعطال في وقت التشغيل في جميع الأجهزة التي تعمل بمعالجات تستند إلى ARMv8.3a والإصدارات الأحدث.

لمزيد من المعلومات حول إصلاح هذه المشكلة وغيرها من المشكلات التي يتسبب فيها OpenSSL، يمكنك الاطلاع على الإجابة المناسبة في "مركز مساعدة Google"

مؤشر BTI

يستخدم الإصدار ARMv8.5 والإصدارات الأحدث تعليمات استهداف الفروع (BTI) للمساعدة في الحماية من هجمات JOP. الإصدارات السابقة من التشويش إنّ حِزم تطوير البرامج (SDK) التي تتفرع إلى إزاحة عشوائية للمكتبات التي تم إنشاؤها باستخدام BTI يمكن أن تتسبب في حدوث للتحطم. وبما أنّ التعليمات يتم ترميزها على هيئة إشارات، لا يمكن ملاحظة هذا الخطأ في الأجهزة التي لا تتوافق مع BTI.

نشر

عندما ترى أنّ تطبيقك أصبح جاهزًا، يمكنك نشره كالمعتاد. كالعادة، تابع اتّبِع أفضل الممارسات لنشر تطبيقك. ننصحك بالاستفادة من من مسارات الاختبار المغلقة لطرحها في عدد محدود من المستخدمين لضمان اتساق جودة تطبيقك.

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

تنزيل Android 14 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 14 factory system image (64-bit-only)

bramble_beta_64-upb5.230623.006-factory-7e6731fa.zip

تنزيل Android 14 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 14 factory system image (64-bit-only)

redfin_beta_64-upb5.230623.006-factory-c4da6a19.zip

تنزيل Android 14 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 14 factory system image (64-bit-only)

oriole_beta_64-upb5.230623.006-factory-98943384.zip

تنزيل Android 14 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 14 factory system image (64-bit-only)

raven_beta_64-upb5.230623.006-factory-67ec40be.zip

تنزيل Android 13 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 13 factory system image (64-bit-only)

bramble_64-t3b3.230413.009-factory-b4be4092.zip

تنزيل Android 13 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 13 factory system image (64-bit-only)

redfin_64-t3b3.230413.009-factory-6e5e027a.zip

تنزيل Android 13 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 13 factory system image (64-bit-only)

oriole_64-t3b3.230413.009-factory-becb9b81.zip

تنزيل Android 13 factory system image (64-bit-only)

قبل تنزيل التطبيق، عليك الموافقة على الأحكام والشروط التالية.

الأحكام والشروط

By clicking to accept, you hereby agree to the following:

All use of this development version SDK will be governed by the Android Software Development Kit License Agreement (available at https://developer.android.com/studio/terms and such URL may be updated or changed by Google from time to time), which will terminate when Google issues a final release version.

Your testing and feedback are important part of the development process and by using the SDK, you acknowledge that (i) implementation of some features are still under development, (ii) you should not rely on the SDK having the full functionality of a stable release; (iii) you agree not to publicly distribute or ship any application using this SDK as this SDK will no longer be supported after the official Android SDK is released; and (iv) you agree that Google may deliver elements of the SDK to your devices via auto-update (OTA or otherwise, in each case as determined by Google).

WITHOUT LIMITING SECTION 10 OF THE ANDROID SOFTWARE DEVELOPMENT KIT LICENSE AGREEMENT, YOU UNDERSTAND THAT A DEVELOPMENT VERSION OF A SDK IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
.
تنزيل Android 13 factory system image (64-bit-only)

raven_64-t3b3.230413.009-factory-b0ef544e.zip