لنصنع شئ يسهل رؤيته

21 01 2009

 

متطلبات 

لابد ان تقوم بتنزيل الحزم الخاصة ببرمجة الموبيل من على الموقع الرسمي للجافا كما يلي

       1. Java SE Development Kit 6u11

                      http://java.sun.com/javase/downloads/index.jsp

       2.Java Platform Micro Edition Software Development Kit 3.0

                       http://java.sun.com/javame/downloads/sdk30ea.jsp

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

 

الهواتف والأجهزة الصغيرة الأخرى تعمل على ما يعرف بال MIDlet   وهو عبارى عن برنامج يتم تطبيقه على الهاتف ولكي تقوم بعمل هذا البرنامج لابد للكلاس التي تعمل عليها ان ترث ال Javax.microedition.midlet.MIDlet

و لابد ان تعلم ان هناك 3 دوال اساسية لابد من

startApp() تستدعى لبداية المشروع أو ايقافع او اعادة تشغيلة

pauseApp() تستدعى لايقاف مؤقت للبرنامج لحدوث اي حدث مثل استقابل اتصال

destroyApp() تستدعى عند اغلاق البرنامج

هذة الدوال تعرف بال callback methods لانك لا تستدعيهم بنفسك بل يستدعيهم النظام عندما يحس للحاجه لاي منهم .

والآن حان وقت العمل نذهب إلى ال

Java Platform Micro Edition Software Development Kit             

ومن ثم مشروع جديد وقم بكتابة الكود التالي :

 

import javax.microedition.midlet.MIDlet;

import javax.microedition.lcdui.*;

public class XSTRT extends MIDlet{

    public void startApp(){

          Form f= new Form("X2ME let'sStart");

          Display.getDisplay(this).setCurrent(f);

      } 

    public void pauseApp(){} 

    public void destroyApp(boolean
unconditional){}

}

 

نجد بعد عملية الترجمة الناجحه والتشغيل تظهر شاشة الهاتف وعليها اسم الفورمة “ X2ME let’s Start

 

شارك المستخدم في الحدث

 

لكي نقوم باستقابل الأومر لابد لنا من استخدم مستقبل الأومر CommandListener و يصاحبة دالة واحده تستخدم عند إعطاء اي أمر () commandAction عند استخدام هذه الدالة فلابد من وضع حالة شرطيه تسال اذا ما كان هذا الأمر يطلب إغلاق البرنامج أو لا و هذا على اساس انه لم يكن هناك اي مر من قبل يأمر بإغلاق البرنامج و يمكن ان نرى كيفيه استخدام الأوامر التعديل على المثال السابق

import javax.microedition.midlet.MIDlet;

import javax.microedition.lcdui.*;

 

public class Xstart extends MIDlet implements CommandListener{

    private Command mExitCommand;

    public void startApp(){

          Form f= new Form("X2ME let's Start");

          mExitCommand =new Command("Exit",Command.EXIT,0);

          f.addCommand(mExitCommand);

          f.setCommandListener(this);

           Display.getDisplay(this).setCurrent(f);

 

      }

 

    public void pauseApp(){}

    public void destroyApp(boolean unconditional){}

    public void commandAction(Command c,Displayable d){

        if(c== mExitCommand){

            destroyApp(true);

            notifyDestroyed();

        }

    }

 

}

 

 

نجد التعديل الحادث اضافه زر لإغلاق البرنامج 

انتهى الدرس

ملحوظة : اعاني بشدة من صعوبة في التنسيق للكلام  لان الزاجه الجديده لل 2.7  غريبه الأطور فأما هقوم بنقل المدونة على مكان آخر أو هغير مزود الخدمة 

 

تحياتي





امتحانات

16 12 2008





البداية

5 12 2008

 

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

هذه التدوينات هي محاولة لإلقاء الضؤ الإصدارة الأولى من  كتاب Creating Great Mobile Applications

 Jonathan Knudsen لمؤلفة  

و الصادر في سنة 2008 

Chapter 1

البداية

تصنف الجافا في وقتنا الحالي من افضل اللغات للتعامل مع الأجزة الصغيرة و بالأخص الهواتف المحمولة و التي اصبحت تتحول من وقت لآخر إلى حواسب أكثر تطورا. ويعد الـ Mobile Information Device Profile (MIDP) هو الركيزة الأساسية او نواة بناء التطبيقات الخاصة بالأجهزة المحمولة و قد انتشر على ما يقرب من 2.1 بيلون هاتف صغير حول العالم طبعاً لإحصائيات شركة Sun .

-  1.1 -

فلنبتعد عن الأسلاك و ننتلق إلى الفضاء

مع تطور الحياة ظهرت الشبكلات الاسلكية  مع تطور هذة التقنية بدأت في الظهورفي  نطاق واسع من الأجهزة المحمولة مثل IPhone , Nokia N96 إلى غير ذلك من الأجهزة الحديثة . بالنظر إلى عدد اجهزة المحمول نجد ان عددها يفوق أجهزة الحاسب الموجودة في الوقت الحالي و بالرغم من قلة كفائة و سرعة الشبكات الاسكلية و تفوق الانترنت عن طريق الوصلات إلا ان التقنيات الاسكلية مع مرور الأيام سوف تتطور ويكون لها السبق وبالتالي سوف يكون المستقبل للأجهز الهاتف المحمولة.

- 1.2  -

النواة الأساسية لتقانيات الجافا للموبيل (MIPD) 

يعد حالياُ من اهم التقيات المستخدمة في لغة الجافا للتعامل مع الهواتف المحمولة ولكن مع الوقت سوف يندثر ولكن هو

المتربع على العرش الآن .

يتم تعريف الـ

( MIDP )

عن طريق  مجتمعات تطوير الجافا   

Java Community Process ( JCP )  

ويتم توصيف هذة التعريفات عن طريق

 Java Specification Requests (JSRs)

  ذات الأرقام المسلسة

  (Stck) تعرف المجموعة الكاملة من برامج الهاتف المحمول بال  

كما هو مبين بالشكل

في الوقت الذي كانت الهواتف المحمولة التي تحوي 

MIDP 1.0

بدأت في الانتشار كانت الـ

MIDP 2.0

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

ويفضل معظم مصنعي الأجهزة في العالم استخدام

MIDP

عن ما يعرف بالـ

Native applications

وذلك لان ال

Native applications

تقوم بعمل العمليات مباشرة على المعالج مما قد يؤدي إلى حدوث خطأ في نظام الهاتف إذا ما حدث خطأ في البرنامج أما الـ

MIDP

فتستخدم الماكينة الوهمية

JVM

فإذا ما حدث خطأ في البرنامج و في اسؤ الأحوال سوف يتسبب في خطأ في الماكينة الوهمية ولكن ليس في النظام ككل و بالتالي هي تعطي للمستخدم درجة من الأمان.

 

- 1.3  -

الغطاء الأول (JTWI) 

 

تم إنشاء العديد من الـ

JSRs

المختلفة و التي عرفت بال

Optional APIs

مثل

 (JSR 120, Wireless Messaging API, or WMA)

(JSR 135, Mobile Media API, or MMAPI)

والعديد من الإضافات الي تدعم تقنيات متعددة مثل البلوتوث و ارسال الرسائل القصيرة و المتعددة الوسائط و آخر للأتصال عن طريق الشبكات الا سكلية و استخدام الذاكرة و امن الشبكات

- قد تعاني بعض الشئ من عدم  فهم لاهذة الأمور في الوقت الحال ولكن لا تقلق سشوف يتضح كل شء في الأبواب القادمة فلا تقلق-

فأصبح هناك وفرة من التطبيقات الأختيارية المتعددة و تداخلت خدماتها ولكن  كيف لنا ان نعرف اياً منهم هي المناسبة للأستخدام في تطبيق ما ؟؟!!

إليك الحل .. فقد تم إنشاء مجموعة من المواصفات ضمنت

 MIDP 2.0, CLDC 1.1 (أو 1.0),

وهي الـ

(JTWI, JSR 185)

فأصبح لا داعي للحيرة و هو الآن كما هو موضع في الشكل

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

- 1.3  -

الغطاء أكثر اتساعاً (MSA) 

JTWI قدمت ال

  تعريف متميز للبيئة الخاصة بالتطبيقات إلا أن

MSA

استطاعت ان تحتوي سابقتها و ضمت العديد من المميزات الجديدة التي تطرق إليها الكاتب في بقية الباب و لكني سوف اقوم بتأجيلها في الوقت الحالي فأظن انه لا مشكلة من تركها لانها لن تضيف الكثير الآن وسوف نقوم بالعودة لها في وقت لاحق إن شاء الله

 

 

 





Creating Great Mobile Applications

5 12 2008

السلام عليكم 

إن شاء الله سوف يكون هذا هو الكتاب الذي سوفنبدأ منه

 منه بصورة مبدئية

معلومات عن الكتاب

 

  • By Jonathan Knudsen
  • Copyright 2008
  • Dimensions 7×9-1/4
  • Pages: 432
  • Edition: 1st.
  • ISBN-10: 0-321-46342-0
  • ISBN-13: 978-0-321-46342-5

 

حمل الكتاب من هنا





X2ME .. Start Again

4 12 2008

root@Xprt> Mr.Xprt restart

  restarting Mr.Xprt [ . . . . . . . . . . .  . . . .  .. . . . . . . . . . . ]

  done . . . now 

  X2ME

 See http://x2me.wordpress.com

السلام عليكم 

مدونة جديدة … فكر جديد

:)

إن شاء الله هتكون المدونة دية بداية جديدة ليا 

هتكلم فيها عن مواضيع تخص الموبيل والأجهزة الصغيرة بصورة عامة وهقدم مجموعة من المشاريع إن شاء الله تكون مفيدة لأي حد محتاج انه يتعلم و لحين إشعار آخر هتكون فيه تديونة كل اسبوع :) لحد ما اخلص بس امتحانات الترم دا 


تحياتي

Xprt

 








Follow

Get every new post delivered to your Inbox.