أردرويد

هل التطوير لأندرويد صعب ومعقّد؟ شاهد تجربة فريق Pocket

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

ويزيد الأمر سوءاً (بالنسبة للقارىء غير المطّلع) بعض التقارير التي تظهر من فترة لأخرى، كالتقرير الذي أصدره مطوروا تطبيق OpenSignalMaps قبل أيام الذين تمكنوا من إحصاء ما يقارب الأربعة آلاف جهاز أندرويد مختلف، قاموا بتمثيلها بهذه الصورة المُرعبة عند النظر إليها:

هل يستطيع المطور أن يضمن بأن يعمل تطبيقه بنفس الطريقة المتوقعة، وبدون أية مشاكل غير متوقعة على جميع هذه الأجهزة؟

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

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

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

يُعتبر تطبيق Pocket (أو Read It Later سابقاً) أحد أشهر وأفضل تطبيقات أندرويد. حيث حقق بعد طرحه في سوق أندرويد في آذار/مارس 2011 المرتبة الأولى ضمن تصنيف تطبيقات الأخبار المدفوعة وذلك بعد يومين فقط من طرحه! وحقق تقييماً نسبته 4.7 من 5 نجوم، وهي نسبة ليس الوصول إليها سهلاً كما تعلمون. كما حقق المزيد من النجاح بعد طرح النسخة المجانية والمحسنة قبل فترة. يُعتبر تطبيق Pocket قصة نجاح بجميع المقاييس، لهذا أحب مطوروا التطبيق مشاركتنا قصة النجاح هذه وقاموا من خلالها بالرد على من يقول بأن التطوير لأندرويد صعب بسبب مشكلة (أو ميزة) التجزئة هذه. وبدأوا قصتهم بعبارة بسيطة جداً: “لا تخشَ شيئاً”.

وقدموا للراغبين بدخول عالم تطوير أندرويد أربع خطوات لاتباعها وهي:

1- اختر أي جهاز كان. ويقول المطور بأنه بدأ تطوير التطبيق في خريف العام 2010 حيث قام بالتطوير على جهاز Samsung Fascinate الذي كلفه سنتاً واحداً فقط (مع عقد لمدة سنتين)، في ذلك الوقت كانت أحدث نسخة لأندرويد هي 2.2 مع سيطرة بنسبة 50 بالمئة لأندرويد 2.1. وفي ذلك الوقت كان مُحاكي أندرويد Android Emulator (الذي يسمح لك بتجربة التطبيق على جهاز الكمبيوتر) بطيئاً ولا يعمل بشكل جيد، لهذا قام بالتجربة باستخدام الهاتف فقط. بعد ذلك قام أخوه وهو المطور الآخر للتطبيق الذي يعيش في مدينة أخرى بشراء هاتف Nexus One مستعمل يعمل بأندرويد 2.2 حيث ساهم معه بالتطوير والاختبار.

2- انشر تطبيقك بنسخة تجريبية (بيتا) مع عدد محدود من المستخدمين، حيث قام مطوروا Pocket بنشر التطبيق بشكل مغلق مع 50 مستخدم يستخدمون أجهزة متنوعة بالطبع وعندما تأكدوا من خلو النسخة من المشاكل قاموا بطرحها في سوق أندرويد حيث أحتل التطبيق كما ذكرنا أعلاه مراتب عالية. وتبين للمطورين من خلال الإحصائيات بأن تطبيقهم الذي تم تطويره واختباره بشكل رئيسي على جهازين رخيصين فقط قد غطى أكثر من 90% من جميع أجهزة أندرويد المتوفرة في السوق دون مشاكل. وكانت الشكاوى حول المشاكل المتعلقة بأجهزة معينة نادرة جداً.

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

4- استمتع بأندرويد – كمطور، ستعشق الكثير من الإمكانيات الممتعة المتوفرة في أندرويد والتي لا توفرها المنصات الأخرى، مثل الرسائل الفورية من السحابة إلى الجهاز C2DM، الخدمات التي تعمل في الخلفية background services، النوايا intents والويدجتس widgets.

في النهاية، أضاف المطور بأن الأمر لا يخلو من أن يصادفك جهاز ما قد يسبب مشكلة أحياناً، في النهاية فأندرويد متوفر على عدد ضخم من الأجهزة منها بعض الأجهزة الصينية الرخيصة من شركات غير معروفة والتي لا تُنتج أجهزتها بالتعاون مع غوغل (توفر غوغل حزمة لاختبار التوافقية للشركات الراغبة بالتعاون معها) وقد تستخدم هذه الشركات في أجهزتها بعض الأجزاء غير القياسية، لكن في النهاية هذا لا يمنع -يقول المطور- بأنهم قد حققوا نجاحاً كبيراً انطلاقاً من جهاز واحد كلفهم سنتاً واحداً فقط!

[Pocket]

أنس المعراوي

مدوّن حالي، مطوّر ويب سابق، مهووس دائم بالتكنولوجيا والمصادر المفتوحة. مؤسس موقع أردرويد.

عنواني على تويتر: [email protected]

23 من التعليقات

ضع تعليقًا

  • مقال جميل و مشجع
    تبقى المشكلة الوحيدة هي تشغيل الSDK في بلدان مثل سوريا و السودان
    للاسف مخدم الانترنت عندي خاص فلا يسمح باتصالات VPN
    مشكور جدا

    • أعتقد أنك تستطيع إيجاد نسخ كاملة من الـ SDK للتحميل بكامل ملفاته

      • وجدت طريقة بديلة لكن ما زالت تحتاج لاتصال VPN
        اذا عندك روابط فيدني

  • مقال رائع جدا
    بصراحة فتحت شهيتي لكي اعرف اكثر عن المطورين
    اخي انس ممكن تكتب لنا مقال عن اهم الأدوات التي يستخدمها المطور في برمجة تطبقاته ؟
    اظن انه سيكون المقال الاول من نوعه باللغة العربية
    ما رأيك ؟…..

    • يكون بأسم مثلا ” كيف تصبح مطور اندوريد / طريقك في البرمجة للاندوريد

      • اذهب لأعلى الصفحة (في موقع اردرويد طبعا) و اضغط على الوصلة برمجة اندرويد (اقصى اليسار)
        بمكانك ايضا التوجه الى xda-developers.com و ادخل على وصلة TV و تابع الدروس و الشروح باللغة الانكليزية طبعا

        • في برمجة اندرويد تابع المقالات الاولى التي تتضمن الدروس

  • اوافق الاخ Abdo.Mh

    اهم الادوات ..
    وكمان دروس مايضر 🙂

  • طيب يا بش مهندس انس لو بدي اعمل زي المطوريين شو بلزمني وشو لازم اكون دارس او بعرف في لغات البرمجة علما بأنني مبتدأ ولكن ادرس لغة #c

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

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

  • الاخ انس والاخوة الاعزاء…اليوم اخبرني احد الباعة لاجهزة الجوال في مدينة الرياض,ان جالكسي3 اللون الازرق يوجد به عيب ولذلك تم ايقاف تداوله في السوق , والعيب هو ذهاب اللون الازرق من الغطاء الخلفي؟ ارجو التوضيح لصحة القول من عدمه,
    وعندي سوال :الجهاز المنافس لجالكسي3ولجهاز one x ماهو؟

  • أعتقد بأنه في المستقبل القريب سنجلس ونضحك على هذه المقالة.ليس لشيئ إلا لأنه هذه المشكلة ستكون من الماضي.أنا متفائل جدا بمستقبل أندرريد.

  • لك آاااااااااااااااااااخ
    تركنا البرمجة من سنة والتهينا بالثورة اقسم بالله عم حس حالي نسيان كل فنكشن وكل تعليمة تعلمتها
    الله يفرجها علينا يارب

    • ايييييييييييييييه أخ أب عبدو بتفرج
      بعد الليل الصبح رح يطلع و قريباً بإذن الله

  • الصباح قادم لا محالة ….اذا الشعب يوما اراد الحياة….فلابد ان يستجيب القدر…تحية ل الاخ انس و اب عبدو الغالي و سوريا الحرة

  • كبداية، تستطيع التصوير عن طريق برامج الويب HTML5 JavaScript php لمرونتها بين الاجهزة. وبعد التعود تنطلق بالجافا.

  • طلب صغير من المشرفين على الموقع او من الاعضاء ان امكن …. انا امتلك جهاز سامسونج جلاكسي اس 2 …. لكن لا يوجد تطبيق جيد لقراءة الملاحظات بصيغة txt …. بحثت كثيرا في الماركت وفي المنتديات عن تطبيق يفي بالغرض ولم اجد طلبي حيث ان جميع التطبيقات لا تدعم اللغة العربية بالشكل المناسب ….. فاذا سمحتم اريد تطبيق لقراءة الملاحظات والتعديل عليها مع دعم كامل للغة العربية

  • مقال رائع .. أنس إذا بتريد سا،يلنا أبديت على كتاب البرمجة اللي طرحتو من فترة .. كان راذع بس بصراحة بيحكي عن إصدارات قديمة وبطل الشرح يفيد لمبتدئين..
    وشكرا

  • صحيح لا تخف ، اهم شي انك تبداء وبعدين التصميم الافتراضي للواجهات يغطي جزء كبير من الاجهزه ..اضافة الى انه ممكن تضع تصميمات مختلفه وخاصة الصور خاصة بحجم الشاشه ( صغير ، عادي ، كبير) و ودرجة وضوحها ( عالي ، متوسط ، منخفض ) …التفاصيل في الرابط تحت :
    http://www.kandroid.org/guide/practices/screens_support.html#qualifiers
    To simplify the way application developers design their user interfaces for multiple devices, and to allow more devices to participate without impacting applications, the platform divides the range of actual supported screen sizes and resolutions into:

    A set of three generalized sizes: large, normal, and small, and
    A set of three generalized densities: high (hdpi), medium (mdpi), and low (ldpi)

  • شكرا لجهودك المخلصة لتوفير المعلومة القيمة والمفيدة

    نادرا ما نرى اشخاص مثلك يقدمون الفائدة القصوى والمحتوى الافضل على الاقل في عالمنا العربي

    واتمنى ان نرى قريبا مطورون عرب ينافسون في سوق اندرويد اللذي احببناه وزاد حبنا له بهذا الموقع المتميز……

  • هذه ليست مشكلة تعترض أندرويد لكنها خطأ كان على المهندسين معرفة هذا الأمر بديهياً وجعل الأجهزة تستخدم الي تطبيق بشكل واحد

%d bloggers like this: