دورة الجافا الرسومية بأستخدام NetBeans ...الدرس(25)_برمجة تطيقات الجوال (7_ التعامل مع إدارة المعلومات الشخصية PIM )

اذهب الى الأسفل

 دورة الجافا الرسومية بأستخدام NetBeans ...الدرس(25)_برمجة تطيقات الجوال (7_ التعامل مع إدارة المعلومات الشخصية PIM ) Empty دورة الجافا الرسومية بأستخدام NetBeans ...الدرس(25)_برمجة تطيقات الجوال (7_ التعامل مع إدارة المعلومات الشخصية PIM )

مُساهمة من طرف أحمد مناع في الجمعة مايو 17, 2013 3:54 pm

بسم الله الرحمن الرحيم

اهلا وسهلا بكم إخوانى الكرام ومرحبا بكم مجددا ....تحدثنا فى الدرس السابق عن كيفية تخزين البيانات باستخدام RMS ....فى هذا الدرس إن شاء الله تعالى سنتعلم سويا كيفية التعامل مع PIM وهى أختصار للجملة الانجليزية Personal Information Management إدارة المعلومات الشخصية .

_ مفهموم PIM إدارة المعلومات الشخصية .

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


_ مفهوم PIM API

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

_ كيفية استخدام PIM API للتعامل مع جهات الاتصال بالجوال

لكى تستطيع أستخدام PIM API للتعامل مع جهات الاتصال سواء بالاضافة أو القرءاة يجب عليك فعل الاتى :

1_الاعلان عن كائن الاتصال لتعيين قيم للحقول من جهة الاتصال....وذلك باستخدام الكود التالى :

الكود:


private ContactList egy =null;


2_ نقوم بجعل الكائن egy فتح اتصال مع جهات الاتصال بالجوال ...بإستخدام الكود التالى :


الكود:
 

try {

egy=(ContactList)PIM.getInstance().openPIMList(PIM.CONTACT_LIST,PIM.READ_WRITE);
} catch (PIMException ex) {
ex.printStackTrace();

}


كما ترون فى الكود السابق أستخدمنا الطريقة PIM.getInstance وذلك لكون PIM عبارة عن فئة مجردة وبالتالى لا نستطيع إنشاء مثيل منه إلا بأستخدام تلك الطريقة .....بعد ذلك قمنا بفتح CONTACT_LIST وهو جهات الاتصل بالجهاز ...وذلك لكون أن قاعدة بيانات pim تحتوى على ثلاث وجهات :

أ_ CONTACT_LIST ....وهى التى تمكنك من الاتصال بدفتر العناوين....فى الجوال مثل الاسم والعنوان والبريد الإلكتروني، تاريخ الميلاد، ...الخ

ب_ EVENT_LIST ....وهى الواجهة التى تمكنك من إنشاء حدث فى أحد حقول قاعدة البيانات ...بمعنى ان يتم انشاء حدث لموعد معين مثلا فنقوم بحديد مخلص لهذا الموعد وتحديد تاريح بدء الحدث وتاريخ الانتهاء و كيفية اظهار اشعار التنبيه وهكذا .

ج_ TODO_LIST .....وهى الواجهة التى تمكنك من انشاء المهام tasks

فى مثالنا السابق نريد الاتصال بقائمة الاسماء أو دفتر العناوين CONTACT_LIST لذلك قمت بفتحة مع تحديد طريقة الفتح هل هى للقراءة فقط أم للقراءة و الكتابة .....طبعا فى مثالنا جعلتها للقراءة و الكتابة

3_ نقوم اشتقاق مثيل من الكائن Contact و استخدام الطريقة createContact لانشاء جهة اتصال جديدة و ذلك باستخدام الكود التالى :

الكود:

Contact a = egy.createContact();

4_ نقوم بانشاء مصفوفة من نوع String وذلك لوضع بيانات جهة الاتصال بها ....وذلك على النحو التالى :

الكود:

String [] name = new String[egy.stringArraySize(Contact.NAME)];

لاحظ استخدام الأسلوب stringArraySize في التعليمات البرمجية السابقة، وهذا الأسلوب هو جزء من واجهة ContactList التي يمكن استخدامها للحصول على (ثابت) حجم مصفوفة نصية .....ولاحظ ايضا الاسلوب NAME وهو جزء من الكائن Contact وهو الخاص بتحديد حقل البيانات المراد الحفظ فية ....كما يوجد حقول اخرى كما فى الصور التالية :


 دورة الجافا الرسومية بأستخدام NetBeans ...الدرس(25)_برمجة تطيقات الجوال (7_ التعامل مع إدارة المعلومات الشخصية PIM ) Egy-tech13688055491

 دورة الجافا الرسومية بأستخدام NetBeans ...الدرس(25)_برمجة تطيقات الجوال (7_ التعامل مع إدارة المعلومات الشخصية PIM ) Egy-tech13688055492

وكل حقل من الحقول السابقة تحتفظ بنوع من البيانات .....فمثلا الحقل ADDR يقوم بحفظ العناوين ...الحقل EMAIL مخصص فى قاعدة بيانات pim لحفظ البريد الالكترونى ...وهكذا



5_ نقوم بإسناد القيم المراد تخزينها فى جهة الاتصال الى الحقول و ذلك على النحو التالى :


الكود:

name[Contact.NAME_GIVEN] = "ahmed";
name[Contact.NAME_FAMILY] = "manna";
a.addStringArray(Contact.NAME,Contact.ATTR_NONE , name);

6 _نقوم بحفظ البيانات السابقة باستخدام الطريقة commit و ذلك با ستخدام الكود التالى :

الكود:


try {
a.commit();
} catch (PIMException ex) {
ex.printStackTrace();
}

ويمكنك ملاحظة أن الطريقة commit تستخدم لحفظ كافة الحقول المدرجة فى قاعدة بيات pim وطبعا استخدام تلك الطريقة ينتج عنها الاستثناء PIMException لذلك أستخدمنا معها التعليمة try .....catch والكود بالكامل سيكون كما يلى :

الكود:


try {

egy=(ContactList)PIM.getInstance().openPIMList(PIM.CONTACT_LIST,PIM.READ_WRITE);
} catch (PIMException ex) {
ex.printStackTrace();

}
Contact a = egy.createContact();

String [] name = new String[egy.stringArraySize(Contact.NAME)];
name[Contact.NAME_GIVEN] = "ahmed";
name[Contact.NAME_FAMILY] = "manna";
a.addStringArray(Contact.NAME,Contact.ATTR_NONE , name);
try {
a.commit();
} catch (PIMException ex) {
ex.printStackTrace();
}

فى الدرس القادم إن شاء الله تعالى سنتعلم سويا كيفية القراءة من جهات الاتصال المختلفة فالى اللقاء

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
أحمد مناع
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 994
النقاط : 201782
التقيم : 118
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى