(المقدمة) ربط تطبيق أندرويد مع MySQL و PHP و JSON

السلام عليكم ورحمة الله وبركاته

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

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

للأسف لا يمكن الاتصال بقاعدة بيانات MySQL أو أي قاعدة بيانات خارجية مباشرة من خلال تطبيق الأندرويد. وللقيام بذلك علينا معرفة مفهوم Web Services.

قمت بعمل رسم توضيحي لطريقة العمل :

لا ترتبك من الصورة بالأعلى فعند معرفتك لمفهوم Web Services و طريقة عملها سوف تسهل عليك العمل على أي نظام تشغيل و أي لغة برمجة أخرى.

سأشرح لكم مفهوم Web Services ببساطة جدا وبدون أي تعمق في الموضوع:

في أي لغة برمجة يوجد ما يسمى بالدالة (Function أو Method)  عمل هذه الدالة هو عمل جزء محدد من البرنامج بمعنى تقسيم المشروع الكبير إلى عدة بريمجات صغيرة.

كمثال في حال كنا نريد عمل برنامج آلة حاسبة فسيكون هناك عمليات كثيرة مثل الجمع والضرب و الطرح و القسمة … الخ، سنقوم بعمل دالة لكل عملية مثلا الجمع (Java):

public int sum(int num1, int num2)

{

int result = 0;

num1 + num2;

return result;

}

 

وعندما نريد استخدام هذه الدالة في أي مكان في الكلاس أو في كلاس آخر نقوم فقط بكتابة اسم الدالة مع إضافة الباراميترز المطلوبة هكذا :

sum(2 , 5);

وسوف نحصل على الناتج (7).

فكرة عمل Web Services  نفس فكرة عمل الدالة  حيث قمنا بعمل الدالة وقمنا بكتابة جميع العمليات المطلوبة بداخل هذه الدالة ووضعنا باراميترز مطلوبة لإنجاز هذه الدالة.

وعندما قمنا بإستخدام الدالة لم نهتم بما تقوم به هذه الدالة فقط أرسلنا الباراميترز المطلوبة و قامت الدالة بعمل كل شي لنا.

الفائدة من Web Services  هو أنك ستقوم بكتابة جميع الدوال المطلوبة للتحكم بقاعدة البيانات أو حتى بالموقع تماما كما ستقوم بكتابتها للتحكم بأي شي عن طريق المتصفح فأنت ستستخدم أحد الطرق POST أو GET  للحصول على البيانات

ولكن الفرق الوحيد هو أنك لن تقوم بإرجاع البيانات على المتصفح (كصورة و تنسيق…الخ) بل ستعيد الببيانات إما بإستخدام XML كما هو مستخدم في RSS  ، أو أن تستخدم (JavaScript Object Notation (JSON حيث لاحقا من خلال العميل سواء كان Android, IOS, Windows Phone أو حتى برامج سطح المكتب أو حتى تستخدمها لبناء موقعك أو قد تكون خدمات تتيحها للمطورين حيث يستفيدوا من بعض الخدمات التي تقدمها في موقعك (مثل خدمات حالة الطقس). فهم لن يعرفوا ما هو الكود الموجود بداخل الدالة ولكن فقط اسم الدالة و الباراميترز المطلوبة.

الآن لنعد لموضوعنا و الصورة بالأعلى سأشرح طريقة سير العمل وما هو المطلوب :

  1. مقدمة وشرح توضيحي عن Web Services وعن المشروع.
  2. إعداد السيرفر المحلي WAMP و بناء قاعدة بيانات MySQL.
  3. التعامل مع PHP لبناء Web Service  تقوم بعمل Login و Register (مع شرح مبسط عن JSON) .
  4. التعامل مع PHP لبناء Web Service  بجلب بيانات المستخدمين الموجودة بقاعدة البيانات.
  5. بناء مشروع أندرويد  جديد و إعداد واجهة تطبيق الأندرويد.
  6. تطوير كلاسات Register و Login وJSONParser في أندرويد.
  7. تطوير UsersActivity و ListViewAdapter لعمل قائمة المستخدمين بالتنسيق الذي نحتاجه.

قمت ببناء التطبيق كما ترون في الفديو التوضيحي سأقوم برفع جميع الأكواد في الدروس مع توضيح لكل سطر في الكود قدر الإمكان.

بإمكانك تحميل المشروع من خلال GitHub :
https://github.com/ahmadssb/Android-PHP-MySQL-JSON-Tutorial.git

16 Comments

Add a Comment
  1. WordPress › Error

    There has been a critical error on this website.

    Learn more about troubleshooting WordPress.