بدء إنشاء تطبيقات لنظام التشغيل ChromeOS

تتوافق أجهزة ChromeOS، مثل أجهزة Chromebook، مع "متجر Google Play" تطبيقات Android تفترض هذه المقالة أنّ لديك أحد تطبيقات Android الحالية مصمَّمة من أجل الهواتف أو الأجهزة اللوحية التي تريد تحسينها لأجهزة Chromebook. لتعلُّم الأساسيات في إنشاء تطبيقات Android، راجع تصميم أول جهاز Android التطبيق.

تعديل ملف البيان الخاص بتطبيقك

للبدء، يجب تحديث ملف البيان لحساب بعض الأجهزة الأساسية اختلافات البرامج بين أجهزة Chromebook والأجهزة الأخرى التي تعمل بنظام التشغيل Android.

اعتبارًا من الإصدار M53 من نظام التشغيل ChromeOS، جميع تطبيقات Android التي لا تتطلّب صراحةً android.hardware.touchscreen على أجهزة ChromeOS التي تتوافق مع android.hardware.faketouch. مع ذلك، لضمان عمل تطبيقك على جميع أجهزة Chromebook، يُرجى تحديث ملف البيان ميزة android.hardware.touchscreen غير مطلوبة، كما هو موضّح في المثال التالي.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          ... >
    <!-- Some Chromebooks don't support touch. Although not essential,
         it's a good idea to explicitly include this declaration. -->
    <uses-feature android:name="android.hardware.touchscreen"
                  android:required="false" />
</manifest>

تأتي الأجهزة المختلفة مجهزة بمجموعات مختلفة من المستشعرات، قد لا تحتوي أجهزة Chromebook على جميع أدوات الاستشعار في أجهزة Android المحمولة، مثل نظام تحديد المواقع العالمي (GPS) ومقاييس التسارع. ومع ذلك، في بعض الحالات، جهاز الاستشعار بطريقة أخرى. على سبيل المثال، قد لا تستخدم أجهزة Chromebook أدوات استشعار GPS، غير أنها توفر بيانات الموقع استنادًا إلى اتصالات Wi-Fi. اطّلِع على نظرة عامة على أجهزة الاستشعار لمعرفة ذلك. حول أجهزة الاستشعار التي يدعمها نظام Android الأساسي.

إذا أردت أن يعمل تطبيقك على أجهزة Chromebook بغض النظر عن مدى توفُّر أدوات الاستشعار، تعديل ملف البيان لكي لا تكون هناك حاجة لاستخدام أدوات استشعار

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

تحديث حزمة تطوير البرامج (SDK) المستهدَفة

حدِّث targetSdkVersion في تطبيقك. إلى آخر مستوى واجهة برمجة تطبيقات متاح للاستفادة من جميع في نظام Android الأساسي. مراجعة التحسينات في Android منصة عبر إصدارات مختلفة.

التحقُّق من متطلبات الاتصال بالشبكات

تعمل أجهزة Chromebook بنظام التشغيل Android بالكامل في حاوية، على غرار Docker أو LXC. يعني ذلك أنّ نظام Android لا يمكنه الوصول مباشرةً إلى شبكة LAN في النظام. من واجهة pyplot. بدلاً من ذلك، تمر حركة بيانات IPv4 عبر طبقة داخلية من الشبكة وترجمة العنوان (NAT)، ويتم توجيه حركة المرور الأحادية لبروتوكول IPv6 من خلال قفزة.

اتصالات البث الأحادي الصادرة من تطبيق Android إلى الإنترنت في الغالب تعمل كما هي. بوجه عام، يتم حظر الاتصالات الواردة. البث المتعدد أو البث إذا لم تتم إعادة توجيه الحزم من Android إلى شبكة LAN من خلال جدار الحماية.

باستثناء قيد البث المتعدد، يشغِّل نظام التشغيل ChromeOS خدمة لإعادة توجيه حركة بيانات mDNS بين Android وواجهة LAN، وبالتالي فإن واجهات برمجة تطبيقات network service discovery هي الطريقة الموصى بها لاكتشاف الأجهزة الأخرى ضمن شريحة LAN. بعد عند العثور على جهاز على شبكة LAN، يمكن لتطبيق Android استخدام البث الأحادي القياسي أو بروتوكول UDP ومقابس للتواصل معه.

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

استخدام السحابة الإلكترونية ومساحة التخزين المحلية بفعالية

تسمح أجهزة Chromebook للمستخدمين بالنقل بسهولة من جهاز إلى آخر. في حال توقف مستخدم عن العمل استخدام أحد أجهزة Chromebook والبدء في استخدام جهاز آخر، فيجب على المستخدمين فقط تسجيل الدخول تظهر جميع تطبيقاتهم.

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

يمكن أيضًا مشاركة أجهزة Chromebook بين عدد كبير من الأشخاص، كما في المدارس. بما أن التخزين المحلي ليس محدودًا، فالحسابات بأكملها معًا من خلال تخزينه، بحيث يمكن إزالته من الجهاز في أي وقت. بالنسبة والبيئات التعليمية، فمن الجيد وضع هذا السيناريو في الاعتبار.

تحديث مكتبات NDK

إذا كان تطبيقك يستخدم مكتبات Android NDK وكان الإصدار 23 من حزمة تطوير البرامج (SDK) المستهدَف هو أعلى، والتأكد من إزالة عمليات نقل النص من كل من معالجات ARM وx86 من مكتبات NDK الخاصة بك، نظرًا لعدم توافقها في Android 6.0 (واجهة برمجة التطبيقات والمستوى 23) والمستويات الأعلى. من خلال ترك عمليات نقل النص في مكتبات NDK، يمكنك إلى حدوث أخطاء في التوافق مع أجهزة Chromebook، خاصةً عند على جهاز يستخدم بنية x86.

إنشاء حالات اختبار جديدة لتطبيقك

لتطوير حالات اختبار تطبيقك، عليك أولاً تحديد علامات البيان. وعلى وجه الخصوص، ننصحك بضبط السمة screenOrientation إلى unspecified. إذا كنت تريد تحديد اتجاه أفقي، يمكنك استخدام sensorLandscape لضمان أفضل تجربة على الجهاز اللوحي.

إذا كان لديك احتياجات خاصة للحجم أو الاتجاه لبيئات سطح المكتب، إضافة علامات وصفية كتلميحات للحجم أو الاتجاه. لتضمين الحجم والاتجاه على الهواتف، حدد التخطيط defaultHeight, defaultWidth, أو minHeight السمات بدلاً من ذلك.

إذا كنت مهتمًا بمعالجة جهاز إدخال معيّن خاصة بجهاز معيّن الفئات، يُرجى تحديد android.hardware.type.pc لإيقاف الإدخال وضع التوافق.

إذا كنت تستخدم أي نوع من الشبكات، تأكَّد من أنّ التطبيق يمكنه إعادة الاتصال إلى الشبكة بعد حل مشكلة الاتصال أو تنشيط الجهاز من وضع السكون.

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

تغييرات النوافذ المتعددة والاتجاه

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

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

اختبر تغيير حجم النافذة بالضغط على مفتاح ملء الشاشة (F4) والتكبير استعادة البيانات. لاختبار إمكانية تغيير الحجم مجانًا، عليك أولاً تفعيلها ضِمن خيارات المطوّرين. ثم التأكّد من أنّ حجم التطبيق يتغيّر بسلاسة بدون أن يتعطّل.

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

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

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