الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

J2ME setup

مغلق
بدأه نحلة نشيطة في 30 أبريل 2005 · 22 رد · 3,608 مشاهدة · في JavaME
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اخواني و اخواتي

لقد انتهيت و لله الحمد و المنة من بناء تطبيق Print Server حيث يتم استقبال ملف من الclient و طباعته بالطابعة المحلية في Server.

طريقة connection كانت TCP Connection-orinted . و هى بين جهازي لابتوب.

الآن أريد استخدام البلوتوث عوضاً عن طريقة التوصيل السابقة. حسب ما قرأت فإن bluetooth package تعمل مع java wirless develoment kit ، لذلك عملت على تنصيب هذه kit مع ClCD و MIDP و JSR-82 اضافة لJ2SE .

و كما قرأت أيضا فإن JSR-82 تحتوي على javax.bluetooth و javax.obex

لذلك قمت بنقل هذين الفولدرين من JSR-82 إلى الفولدرjavax في J2SE .

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

import javax.microedition.io.*;

import javax.bluetooth.*;

import javax.obex.*;

و لم أعرف السبب علما أنها المرة الثانية التي أقوم بها بعملية التنصيب و لم افلح؟

ارجو المساعدة لأنني لا أملك من الوقت الكثير

مقدما ، الشكر الجزيل لكم

كما أريد أن أكون .. بأمر الله أكون

#2

هذه الحزم غير موجودة في جهازك. لا تستطيعين نقل هذه الحزم من j2me إلى jdk se لأنها أصلا غير موجودة!!!!

كيف غير موجودة وقد نقلتيها؟!!!!

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

إذن أنت تحتاجين إلى تنفيذ فعلي للسن الأزرق على الحاسب. ابحثي عن هذا في الشبكة، ستجدين التنفيذ غير مجاني في الغالب، لكن لو بحثتي جيدا قد تجدينها مجانا. ابحثي عن J2SE bluetooth.

#3

هي ترغبين بالاتصال بواسطة البلوتوث بين جهازين حاسوب ولا بين حاسوب و موبايل؟؟؟

Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why

#4
أبومازن كتب:
هذه الحزم غير موجودة في جهازك. لا تستطيعين نقل هذه الحزم من j2me إلى jdk se لأنها أصلا غير موجودة!!!!

كيف غير موجودة وقد نقلتيها؟!!!!

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

إذن أنت تحتاجين إلى تنفيذ فعلي للسن الأزرق على الحاسب. ابحثي عن هذا في الشبكة، ستجدين التنفيذ غير مجاني في الغالب، لكن لو بحثتي جيدا قد تجدينها مجانا. ابحثي عن J2SE bluetooth.

1. بعد تنصيب JSR82 حصلت على فولدر Javax يحتوي على bluetooth و obex ، قمت بنقلهما إلى فولدر j2se و عند فتح البرنامج لم يكن هناك خطأ في وجود هذين الحزمتين. إنما في compile أعطاني الخطأ !!

2. التنفيذ الفعلي للسن الأزرق يمكن استخدامه عن طريق emulator المرافق J2me و قد قمت و لله الحمد بتجربة bluetooth demo الموجود مع J2ME عن طري Ktoolbar إذا كان الإسم الأخير صحيحاً، فاشتغل البرنامج بشكل رائع جداً ، حيث فتحت two emulators الأول كserverو الآخر ك Client و من ثم نقلت صورة من السيرفر للكلينت.

3. بحثت عن J2SE bluetooth حتى أجعل برنامجي الذي كتبته أصلا بJ2se يعمل، و لكن لم أجد شيئا. !

شكرا لك.

كما أريد أن أكون .. بأمر الله أكون

#5
رامي العيساوي كتب:
هي ترغبين بالاتصال بواسطة البلوتوث بين جهازين حاسوب ولا بين حاسوب و موبايل؟؟؟

بين جهازين حاسوب ! two laptops for example

كما أريد أن أكون .. بأمر الله أكون

#6

بالمناسبة، حتى أنا أحب أن يكون لدي تنفيذ فعلي للسن الأزرق على جهازي!!

اقتباس
1. بعد تنصيب JSR82 حصلت على فولدر Javax يحتوي على bluetooth و obex ، قمت بنقلهما إلى فولدر j2se و عند فتح البرنامج لم يكن هناك خطأ في وجود هذين الحزمتين. إنما في compile أعطاني الخطأ !!

هذا هو المفروض! لأن هذه الملفات حقيقة وظيفتها للمحاكاة، وهي مرتبطة مع حزم أخرى في J2ME وحزم المحاكي KToolBar.

اقتباس
2. التنفيذ الفعلي للسن الأزرق يمكن استخدامه عن طريق emulator المرافق J2me و قد قمت و لله الحمد بتجربة bluetooth demo الموجود مع J2ME عن طري Ktoolbar إذا كان الإسم الأخير صحيحاً، فاشتغل البرنامج بشكل رائع جداً ، حيث فتحت two emulators الأول كserverو الآخر ك Client و من ثم نقلت صورة من السيرفر للكلينت.

هذا هو التنفيذ المحاكي فقط، وهو ليس تنفيذ فعلي! عند تشغيلك لبرنامج bluetooth demo على الحاسب عن طريق KToolBar يقوم البرنامج بتمثيل ما سيقوم به كل جوال يحوي bluetooth. إذا وجدت أخطاء هذا يعني أن برنامجك سيعمل بصورة خاطئة على التنفيذ الفعلي (الجوال). أما إذا تم البرنامج من دون أخطاء في المحاكي، فهذا يعني أن التنفيذ الفعلي في الجوال سيتم بإذن الله بدون أخطاء.

وإذا كنت مصممة، فاقرأي شفرة هذه الحزمة بنفسك بفك الملفات وقراءة الشفرة. هل ترين أي قراءة فعلية؟ هل يستخدم JNI؟ هي يستخدم Java Comm؟ لا أعتقد ذلك! والله أعلم!

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

اقتباس
. بحثت عن J2SE bluetooth حتى أجعل برنامجي الذي كتبته أصلا بJ2se يعمل، و لكن لم أجد شيئا. !

بصراحة لم أجد ما يفيدك مئة بالمئة، لكن خذي هذه الوصلة فهي تشير إلى صفحات بها حزم للسن الأزرق. بعضها منفذة على JSR-82 وبعضها منفذة تنفيذا مختلفا (هذا يعني أنك قد تحتاجين إلى تغيير شفرة برنامجك). بعضها مجاني. كما أن بعضها غير مكتملة!

http://www.caside.lancs.ac.uk/java_bt.php

بالتوفيق!

#7

الاهم هو ان تسيطري على منفذ البلوتوث في الجهاز ... يوجد هناك شئ اسمه بلوتوث مودم يمكن يكون عندك على COM5

تستطيعين ارسال اشارت له و السيطرة عليه و التحكم به مثل

import javax.comm.*;

import java.io.*;

import javax.swing.*;

public class RamyBean

{

    String pass;

   static CommPortIdentifier portId;

   static SerialPort serialPort;

   static OutputStream outputStream;

   static InputStream inputStream;

    public void open()

   {

       try 



{portId=CommPortIdentifier.getPortIdentifier("COM2");}catch 



(NoSuchPortException np){pass="Error:"+np;}

 try {





serialPort=(SerialPort)portId.open("RamyAlisawi",2000);

 }catch (PortInUseException 



pin){pass="Error:"+pin;}





try{outputStream=serialPort.getOutputStream();inputStream=serialPo



rt.getInputStream();}catch (IOException e){pass="Error:"+e;} 

}

   

}

و لكن هذه طريقة صعبة جدا و معقدة انظري على هذا الموضوع فسيفيدك فعلا و خصوصا الرد قبل الاخير

/index.php?showtopic=62318

Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why

#9
أبومازن كتب:
بالمناسبة، حتى أنا أحب أن يكون لدي تنفيذ فعلي للسن الأزرق على جهازي!!

هذا هو المفروض! لأن هذه الملفات حقيقة وظيفتها للمحاكاة، وهي مرتبطة مع حزم أخرى في J2ME وحزم المحاكي KToolBar.

هذا هو التنفيذ المحاكي فقط، وهو ليس تنفيذ فعلي! عند تشغيلك لبرنامج bluetooth demo على الحاسب عن طريق KToolBar يقوم البرنامج بتمثيل ما سيقوم به كل جوال يحوي bluetooth. إذا وجدت أخطاء هذا يعني أن برنامجك سيعمل بصورة خاطئة  على التنفيذ الفعلي (الجوال). أما إذا تم البرنامج من دون أخطاء في المحاكي، فهذا يعني أن التنفيذ الفعلي في الجوال سيتم بإذن الله بدون أخطاء.

وإذا كنت مصممة، فاقرأي شفرة هذه الحزمة بنفسك بفك الملفات وقراءة الشفرة. هل ترين أي قراءة فعلية؟ هل يستخدم JNI؟ هي يستخدم Java Comm؟ لا أعتقد ذلك! والله أعلم!

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

بصراحة لم أجد ما يفيدك مئة بالمئة، لكن خذي هذه الوصلة فهي تشير إلى صفحات بها حزم للسن الأزرق. بعضها منفذة على JSR-82 وبعضها منفذة تنفيذا مختلفا (هذا يعني أنك قد تحتاجين إلى تغيير شفرة برنامجك). بعضها مجاني. كما أن بعضها غير مكتملة!

http://www.caside.lancs.ac.uk/java_bt.php

بالتوفيق!

مرحبا أخي أبو مازن

شكراً على الرد التفصيلي .. إنما أردت أن أعرف كيف يمكنني عمل محاكاة فعلية أي كيف أنقل الملفات إلى موبايلين و من ثم التجربة لأرى هل المحاكاة تمثيلية أم تنفيذ صحيح للكود ؟

كما أريد أن أكون .. بأمر الله أكون

#10
رامي العيساوي كتب:
الاهم هو ان تسيطري على منفذ  البلوتوث في الجهاز ... يوجد هناك شئ اسمه بلوتوث مودم يمكن يكون عندك على COM5

تستطيعين ارسال اشارت له و السيطرة عليه و التحكم به  مثل 

import javax.comm.*;

import java.io.*;

import javax.swing.*;

public class RamyBean

{

    String pass;

   static CommPortIdentifier portId;

   static SerialPort serialPort;

   static OutputStream outputStream;

   static InputStream inputStream;

    public void open()

   {

       try 
{portId=CommPortIdentifier.getPortIdentifier("COM2");}catch 
(NoSuchPortException np){pass="Error:"+np;}

 try {


serialPort=(SerialPort)portId.open("RamyAlisawi",2000);

 }catch (PortInUseException 
pin){pass="Error:"+pin;}


try{outputStream=serialPort.getOutputStream();inputStream=serialPo
rt.getInputStream();}catch (IOException e){pass="Error:"+e;} 

}

   

}

و لكن هذه طريقة صعبة جدا و معقدة  انظري على هذا الموضوع فسيفيدك فعلا و خصوصا الرد قبل الاخير

/index.php?showtopic=62318

مرحبا أخي رامي

ما الصعب في الكود؟ ؟

أريد أن أجربه و لكنني قبلاً أريد أن أعرف المخرجات حتى أتأكد أن اتفيذ صحيح أم لا ..

إنما لا أرى أي باكج للبلو توث .. ماذا يقوم به هذا الكود بالضبط ..

يا ليت تمر على المثال الذي أدرجته سابقا إن كان لديك وقت ..

الخطأ الذي يظهر لي هو التالي ..

post-17900-1115235555_thumb.jpg

كما أريد أن أكون .. بأمر الله أكون

#11

يعني كانك تعيدي تصميم bluecove

انسي امر الكود اللي اعطيتك ياه اذا موجود مثله عندك..

و المثال مبين عليه تمام طولي بالك و اشتغلي على مهلك و لا تفقدي الامل وسوف يعمل باذن الله

Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why

#12

كأن javabluetooth من source forge به تطبيق كامل ل JSR82 تقريبا.

(تنفيذ فعلي على الحاسب)

http://sourceforge.net/projects/javabluetooth

جربوه!! ولو أنه لم يكتمل!

#13

Sorry to write in English but I have no Arabic support in this machine.

I know the example is good but I have diffculties in installation part such as:

1. installing Service Pack 2 will result in insatllain Microsoft Bluetooth Stack. but after following steps of installing Service Pack 2 I don't know if it installed or not, and when I checked the Microsoft Bluetooth Stack it wasn't there, so I dont know where is the wrong here?

2. In installing Bluecove library, the author advice us to use his compiled and patched version of Bluecove which is .jar and I dont know how to open this file or how to extract it or where to put it??

if these two questions are answered I probably could run the example? and I aprcieated of have time to help me on that.

Thanks.

كما أريد أن أكون .. بأمر الله أكون

#14

لقد قمت بتنفيذ المثال في اللينك الموجود في أحد ردودي

و قد عمل بشكل صحيح و لله الحمد و المنة بين جهازيك موبايل نوكيا 6630 ..

لكن للأسف للآن لم أستطع أن أجعله يعمل بين الموبايل و الجهاز ؟؟

كما أريد أن أكون .. بأمر الله أكون

#15

قد يكون السبب هو أن Windows XP SP 2 لا يدعم كل الدرايفرات الخاصة بوصلات اليو اس بي ... في الرابط التالي مايدعمه الويندوز

http://support.microsoft.com/kb/841803

وفي الرابط التالي يوضح احدهم طريقة للتحايل على الويندوز بأن يقبل اي وصلة أخرى غير المدعومين

http://not.hellalame.com/bluetooth.htm

بإذن الله سأطبق الخطوات المذكورة في الرابط الثاني لكني أخشى من الاضرار الجانبية اللاحقة ... حيث ان المجلد inf مخفي ويبدو أنه نظامي :wacko: لكني لازلت متردد :unsure:

تم تعديل هذه المشاركة بواسطة _Student في 29 مايو 2005 في 03:27

#16

السلام عليكم

الاخت نحلة نشيطة،،

في كتاب bluetooth for java chpater 6

سوف تجدي مثال جاهز عباره عن سيرفير برنيتر بين حاسوبين.....المثال تنفد بشكل صحيح وبدون أخطاء

وفعلا" السيرفر أرسل الملف الى الطابعة، يمكنك ان تحملي السورس كود الموجوده في الكتاب من النت

وتحتاجي أيضا" الى تحميل ال AveLink for j2se from Atinav

وبالتوفيق.......

تم تعديل هذه المشاركة بواسطة Turquoise في 2 يونيو 2005 في 00:46

اللهم أنت ربي لا إله إلا أنت خلقتني وأنا عبدك وأنا على عهدك ووعدك ما استطعت أعوذ بك من شر ما صنعت أبوء لك بنعمتك علي وأبوء بذنبي فاغفر لي فإنه لا يغفر الذنوب إلا أنت

#17

يا رب يبارك فيك على هالخبر الجميل :)

مع أنني انتهيت من المساق إلا أنني اتابع العمل في البروجكت لإعجابي الشديد به.

الكود عندي و لكن لا أدري لم لا يعمل ؟

هل بالإمكان الاجابة على الأسئلة التالية:

1. هل يجب أن أستخدم BT USB التي تأتي مرفقة مع AveLink for j2se from Atinav أم لا ؟

2. إذا كان لا ؟ هل يمكن أن أعرف ما نوع BT USB التي عمل من خلالها الكود ، الموجودة عندي هى BELKIN ؟

3. إذا كان وقتك يسمح، هل بامكانك اخباري كيف قمت بتنصيب AveLink for j2se from Atinav لأنني قمت بتنصيبها سابقاً و اعتقد أنني أخطأت في مكان ما ؟

أكرر جزاك الله خير و بانتظار الاجابات.

كما أريد أن أكون .. بأمر الله أكون

#18

السلام عليكم

بارك الله فيك أختي،،،،،

رغم ضيق الوقت لكن سأحاول أن أوضح لكي الطريقه:

اولا" يجب أن تقومي بعمل تحديث لتعريف وصلة البلوتوث بأستخدام التعريف المرفق معAtinav

ثانيا": لنفترض أنك قمتي بتحميل البرنامج الى المجلد C:\Atinav

سوف تجدي ملف مضغوظ في المسار التالي:

C:\Atinav\J2SE USB\aveLinkBT\LIB\aveLinkBT

قومي بفكه ستجدي بداخله مجلد أسمه COM ، قومي بنسخ المجلدAtinav من المجلدCOM

الى المجلد

J2SE\bin\com

ثالثا": قومي بنسخ هذه الملفات:

1. bcc

2. Certificate

3. USB.dll

الى J2SE\bin

أتمنى ان أكون وفقت في توضيح الامر

وبالتوفيق أن شاء الله

السلام عليكم

اللهم أنت ربي لا إله إلا أنت خلقتني وأنا عبدك وأنا على عهدك ووعدك ما استطعت أعوذ بك من شر ما صنعت أبوء لك بنعمتك علي وأبوء بذنبي فاغفر لي فإنه لا يغفر الذنوب إلا أنت

#19
Turquoise كتب:
اولا" يجب أن تقومي بعمل تحديث لتعريف وصلة البلوتوث بأستخدام التعريف المرفق معAtinav

ثانيا": لنفترض أنك قمتي بتحميل البرنامج الى المجلد C:\Atinav

سوف تجدي ملف مضغوظ في المسار التالي:

C:\Atinav\J2SE USB\aveLinkBT\LIB\aveLinkBT

قومي بفكه ستجدي بداخله مجلد أسمه COM ، قومي بنسخ المجلدAtinav من المجلدCOM 

الى  المجلد 

J2SE\bin\com

ثالثا": قومي بنسخ هذه الملفات:

1. bcc

2. Certificate

3. USB.dll

الى  J2SE\bin     

أتمنى ان أكون وفقت في توضيح الامر

وبالتوفيق أن شاء الله

السلام عليكم

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

أكرمك الله أخي الفاضل Turquoise ..

لقد قمت بتنفيذ الخطوات التي تفضلت بها في ( ثانياً) و (ثالثاً) أما ( أولاً) فلم أعرف ما الذي يجب أن أقوم به لتحديث تعريف وصلة البلوتوث بأستخدام التعريف المرفق معAtinav ؟؟

السؤال الآخر : هل يجب استخدام Bluetooth printer أم أن البرنتر العادية تفي بالغرض ؟

كما أريد أن أكون .. بأمر الله أكون

#20

لتعريف وصلة البلوتوث بتعريف Atinav قومي بعمل تحديث لدرايفر الوصلة من مدير الأجهزة في لوحة التحكم وحددي مسار التعريف الجديد الى ملف albtusb المرفق في مجلد

USB DRIVER من Atinav

بالنسبة للطابعة لا علاقة لها بالبلوتوث لانها تستقبل امر الطباعة من جهاز الكمبيوتر الموصولة اليه، فأي طابعة تفي بالغرض...

#21

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

أكرمك الله أخي الفاضل Student..

حقيقة لم أفهم كيف أحدّث تعريف وصلة البلوتوث بتعريف Atinav ؟؟

ممكن النسخة التي أستخدمها من Atinav تختلف عن التي معكم ؟؟

يا ليت تضع لي الرابط إن أمكن .

الشئ الآخر للأسف لم أفهم هذه الجملة "تحديث لدرايفر الوصلة من مدير الأجهزة في لوحة التحكم"

لوحة التحكم .. الكنترول بنل و الباقي ؟؟

شاكرة لك ردك

كما أريد أن أكون .. بأمر الله أكون

#22

السلام عليكم

لماذا لم أجد ردا على تساؤلاتي للآن ؟؟

أنا حقا أريد أن يعمل معي هذا الكود قبل بداية العام الدراسي

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

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

عني أنا قمت بالآتي :

1. قمت بتنزيل aveLink Bluetooth J2SE SDK with JSR82 Support

نوعية الكارد J2SE USB WIN32 .

2. قمت بالخطوات التالية :

لنفترض أنك قمتي بتحميل البرنامج الى المجلد C:\Atinav

سوف تجدي ملف مضغوظ في المسار التالي:

C:\Atinav\J2SE USB\aveLinkBT\LIB\aveLinkBT

قومي بفكه ستجدي بداخله مجلد أسمه COM ، قومي بنسخ المجلدAtinav من المجلدCOM

الى المجلد

J2SE\bin\com

ثالثا": قومي بنسخ هذه الملفات:

1. bcc

2. Certificate

3. USB.dll

الى J2SE\bin

3. لم أعرف كيف أحدث وصلة وصلة البلوتوث بأستخدام التعريف المرفق مع Atinav

4. الآن بالنسبة لملفات java هناك ثلاث منها

1) JPSBluetoothPrint

2)JPSBluetoothPrintClient

3)JPSPrint

أتوقع - لأن الكود لم يعمل معي للآن - أن Build سيكون باستخدام JSE .

و أتوقع أن الملفين JPSBluetoothPrint و JPSPrint يكونان على السيرفر و الملف JPSBluetoothPrintClient يكون على client .

هل هذا صحيح ؟

بانتظاركم

كما أريد أن أكون .. بأمر الله أكون

#23

السلام عليكم

حتى أغير الdriver إلى Atinav driver فإنني من Device manager اخترت Bluetooth Driver و من ثم Update driver ثم وضعت مسار Bluetooth Atinav driver . لا أدري إن كان هذا المقصود أم لا

بعد ذلك ، عملت run للملف JPSPrint فقام بعملية الطباعة بشكل صحيح

الآن أريد أن أعرف كيف أقوم بعمل ذلك بين جهازين .. يعني شو أسوي بالضبط

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

منطقيا الملف JPSBluetoothPrintClient لكن الملف JPSPrint هو الذي يقوم بعملية الطباعة !!!

أفيدوني أفادكم الله

كما أريد أن أكون .. بأمر الله أكون

هذا الموضوع مغلق.

مواضيع مشابهة