يسمى تطبيق العينة في هذا المستودع Gogogiphy.
Gogogiphy هو تطبيق تعليمي عينة يستخدم مع الكتاب ، "Learn Visual Studio App Center مع أشكال Xamarin". يمكنك إما مفترق هذا المشروع أو استيراد هذا المشروع إلى Azure DevOps. سأريكم تلك الخطوات في كتابي.
نظرًا لأنني لن أدير هذا التطبيق أو إصلاح الأخطاء المتقدمة ، يرجى عدم تقديم أي طلبات سحب.
يستخدم هذا التطبيق بحتة لأغراض التدريب والتوضيح. تم تصميمه في إطار عمل Xamarin على معيار .NET باستخدام C#.
ستجد نسختين مختلفتين من تطبيق نموذج: البدء والانتهاء. كلاهما وظيفي. يحتوي المشروع في المجلد على معظم وظائف العمل باستثناء تلك الوظائف التي تتفاعل مع حزم Nuget Center. يتم ترك هذه الوظائف كعبادة فارغة. يمكنك العثور على كعبان فارغة في Visual Studio من خلال البحث عن "TODO". يمكن العثور على إصدارات العمل من نفس الوظائف في المجلد النهائي. خلاف ذلك ، كلا المشروعين متطابقة.
أولاً وقبل كل شيء ، تم تصميم هذا التطبيق باستخدام FreshMVVM Framework. إذا فهمت نمط تصميم الموديل-View-Viewmodel ، فأنت تفهم الحاجة في نهاية المطاف إلى التنقل في الصفحة ، واستخدام BindingContext من صفحات XAML ، وحقن التبعية ، وانعكاس التحكم في السيطرة. لن أخوض في تفاصيل كبيرة حول كل من هذه المفاهيم ، لكنني استفدت من إطار FreshMVVM لأن المؤلف ، مايكل ريدلاند ، قام بعمل رائع في إنشاء إطار عمل MVVM على وجه التحديد لأشكال Xamarin وجعل من السهل الاندماج في تطبيق Forms Xamarin. يمكنك العثور على مزيد من المعلومات في صفحة GitHub أدناه.
https://github.com/rid00z/freshmvvm
يمكنك العثور على المزيد من المعلومات المفيدة حول دليل البدء السريع من مدونته أدناه.
https://michaelridland.com/xamarin/freshmvvm-quick-start-guide/
مجموعة الأدوات الكبيرة التالية التي استخدمتها في التطبيق هي Xamarin Essentials. تتيح مجموعة الأدوات هذه للمطور القدرة على استخدام واجهة برمجة تطبيقات منصة واحدة للاستفادة من ميزات محددة من الطولاً مثل الاتصال والبطارية والحافظة ، وما إلى ذلك ، بدلاً من الاضطرار إلى تعلم كل واجهة برمجة تطبيقات بشكل منفصل لنظام التشغيل Android و iOS و Windows. يمكنك العثور على صفحة Github لـ Xamarin Essentials في الموقع أدناه. في هذا التطبيق ، أستفيد من API للاتصال ، و API الخاص بالاتصال ، ونظام الملفات. إذا قررت استخدام تطبيق نموذجي كقاعدة لتطبيقك الخاص ، وإذا توصلت إلى المزيد من الأفكار ، فيمكنك الاستفادة من واجهة برمجة تطبيقات المنصات من Xamarin Essentials. أشجعك على قراءة صفحة GitHub الخاصة بهم والوثائق على الروابط أدناه.
https://github.com/xamarin/essentials https://docs.microsoft.com/en-us/xamarin/essentials/
جيمس مونتيماجنو ، الذي كان صوتًا رئيسيًا في مشهد أشكال Xamarin لفترة طويلة ، هو مساهم رئيسي بين فريق من المساهمين الآخرين في Open Source في Xamarin Essentials. إذا كنت لا تعرف الكثير عنه ، فيمكنك دائمًا متابعة مدونته أدناه لأنه ينشر الكثير من المقالات الإرشادية ذات الصلة المتعلقة بأشكال Xamarin وغيرها من التقنيات. ينشر بانتظام نموذج رمز يمكنك التعلم منه.
https://montemagno.com/
مكتبة أخرى حاسمة المستخدمة في هذا التطبيق هي مكتبة التحميل ffimageLoading. هذه المكتبة أمر بالغ الأهمية لأنها تمنح التطبيق القدرة على عرض صور GIF. تتوفر هذه المكتبة في عدد من الأطر المختلفة مثل Xamarin.ios و Xamarin.android وبطبيعة الحال ، xamarin.forms. أنا شخصياً أحب هذه المكتبة لأنه يمكنك ببساطة توصيل وتشغيل عناصر التحكم ، وتعديل بعض الإعدادات ، ولا تقلق أبدًا بشأنها. أشجعك على قراءة المزيد عن هذه المكتبة وأنت تتصفح الكود في نموذج التطبيق.
https://github.com/luberda-molinet/ffimageLoading https://github.com/luberda-molinet/ffimageloading/wiki
بالطبع ، يجب تخزين هذه الصور المتحركة في مكان ما محليًا حتى يتمكن المستخدم من حفظ الصور في مجموعات للعرض لاحقًا. لهذا السبب قمت بتطبيق SQLite في المشروع الأساسي للحل لأنه كان من السهل التنفيذ وسهل التعلم حتى للمبتدئين. حزمة Nuget المدمجة في المشروع الأساسي هي حزمة .NET Wrapper حول عميل SQLite. يمكنك العثور على مزيد من المعلومات على الروابط أدناه.
https://github.com/praeclarum/sqlite-net https://www.nuget.org/packages/sqlite-net-pcl https://www.sqlite.org/index.html
أخيرًا ، الإطار المهم النهائي للتعرف عليه هو json.net. إذا كنت قد طورت إما موقع ويب أو مشروع واجهة برمجة تطبيقات ويب أو تطبيق جوال ، فقد أصبح تدوين كائن JavaScript (JSON) لدينا حمولة خيارنا لأنه سهل الاستخدام وسهل القراءة وسهل التسلسل أو التسلسل إلى كائن .NET. إذا كنت جديدًا على json.net ، أشجعك على قراءة الوثائق على موقعه على الويب أدناه.
https://www.newtonsoft.com/json https://www.newtonsoft.com/json/help/
اتبع هذه الخطوات البسيطة للحصول على القيمة السرية للتطبيق لنظام التشغيل iOS.
اتبع هذه الخطوات البسيطة للحصول على القيمة السرية للتطبيق لنظام Android.
اتبع هذه الخطوات البسيطة لإعداد حساب GIPHY الخاص بك.
انتقل إلى موقع الويب التالي ، وقم بإعداد حساب GIPHY مطور ، وانتقل إلى لوحة القيادة الخاصة بك.
https://developers.giphy.com
قم بإعداد تطبيق جديد في حسابك. ستجد تطبيقك مدرجًا ضمن "تطبيقاتك". ويتم إعطاء مفتاح API الخاص بك في الداخل.
انسخ القيمة واستبدل قيمة سلسلة "giphyapikey" في متغير apikey في الإعدادات.
حذر
من غير الآمن ارتكاب سر التطبيق الخاص بك وقيم مفتاح API الخاصة بك في التحكم في المصدر ببساطة من خلال ارتكاب التغييرات في فئة الإعدادات عند وجودها حاليًا. يمكنك استخدام الخطوات الموضحة أعلاه لجعل التطبيق يعمل محليًا على أجهزة محاكاة iOS و Android. لكنني سأريك في الكتاب فيما يتعلق بالخطوات اللازمة لتجنب ارتكاب القيم السرية ومفاتيح API في التحكم في المصدر والحصول على مركز التطبيق لاستبدال هذه القيم لك بشكل ديناميكي قبل كل بناء.