ورود

View Full Version : سوال: درباره کدهای j2meبخصوص ارسال پیام



abc2014
دوشنبه 24 تیر 1392, 14:58 عصر
با سلام به همه
خیلی به راهنمایی احتیاج دارم .


ممنون میشم کسی جواب بده.




-اگر بخواهم در یک لیست دو گزینه پیامهای دریافتی و پیامهای ارسالی داشته باشم ایا باید اول پوشه بسازم بعد از rms استفاده کنم و پیامهای رسیده یا رسال شده در رکوردها ذخیره شود؟؟یا روش دیگه ای داره؟


-برای اینکه پیامی که ارسال میکنیم فارسی باشد چه باید کرد؟

در مورد falseکردن متد destroyappمیشه توضیحی بدید؟چراباید بنویسیم notifydestroyed();واین به معنای ازاد کردن منابعه؟؟

abc2014
پنج شنبه 10 مرداد 1392, 15:43 عصر
کسی نبود به سوالام جواب بده؟
دوباره سوال مینویسم یعنی کسی جوابو نمیدونه؟

شماره پورت در چه محدوده ای وارد میشه؟یعنی از چند تا چند میتونه باشه؟چرا درمنبعی گفته شده میتوان انرا ننوشت؟
وقتی در ارسال پیام شماره پورت مینویسیم یعنی شماره پورت مبدا این است؟ووقتی در دریافت مینویسیم یعنی پورت مقصد را تعیین کرده ایم؟
شماره پورت دو طرف باید یکسان باشد؟
برای داشتن گزینه های پام های ارسالی و دریافتی چه باید کرد؟

تابع notifyincomingmessagingچی میکند.وبدنه ان چطور باید نوشته شود؟
شنودگر messagelistenerبرای این است که برنامه را متوجه پیام رسیده کند؟
چرا در استاندارد jsr120نوشته برای روش غیرهمزمانی از این استفاده میشه و برای روش همزمانی از نخ؟چنین مطلبی درسته؟البته در عمل ،ترکیب هردواستفاده میشه.

sms.seyedipoor
پنج شنبه 14 شهریور 1392, 15:50 عصر
سلام

منم واسه تکمیل کردن پروژم یه همچین مشکلی دارم
واسه ذخیره پیام باید فایل ایجاد کنیم؟یا اینکه مثه لیست مخاطبینه....
لطفا اگر به جوابی رسیدین روی صفحه بنویسین.

درمورد شماره پورت اگه واسه ارسال باشه به شماره پورت دستگاه مقصد اشاره داره و اگه واسه دریافت باشه دستگاه مبداء منظوره یعنی پیام هایی که به این پورت ارسال میشن قابل دریافت هستن
محدوده شماره پورتو نمی دونم اما شماره پورتو باید صفر بذارین تا دستگاه مقصد پیامو دریافت کنه.
تابع notifyincoming... هنگام پیاده سازی شنودگر پیام ایجاد می شه و هر وقت پیامی به ارتباط ست شده به شنودگر ارسال بشه (پیام دریافتی) ای تابع اجرا می شه.

این rms چیه؟

abc2014
یک شنبه 17 شهریور 1392, 09:32 صبح
سلام
منابع لاتین و سرچ لاتین کمک خوبی میتونه بکنه.
rms پایگاه داده برای j2meاست که داده ها را دررکورد هاذخیره میکند.اگر بخواهیم پیامهای ارسالی و دریافتی را ذخیره کنیم باید از ان استفاده کنیم و برای فهرست کردن انها از لیست استفاده میکنیم که با کلیک بر هرگزینه در فرم یا تکست باکس متن پیام ذخیره شده را نمایش میدهد.
متدهای اسونی داره فقط مدیریتش (برای یک کار خوب شدن)در لیست دقت میخواد .سعی دارم مطالبی بنویسم بیشتر سوالاتی که مطرح میکنم خودم با جستجو معمولا به جوابی میرسم.دوست دارم اگر وقت کردم انها را جایی وارد کنم.شاید سوال دیگران هم باشه.
یه جایی در قسمت helpنت بینز نوشته شماره پورت برای 5000smsاست.وبرای mms یا cbs چیزدیگه.

در مورد تنظیمات پوش رجیستری در میدلت و اینکه چه کدی در برنامه اضافه بشه در دریافت پیام راهنمایی لازم دارم که چون فکر نکنم کسی جواب بده .اگه مطالب کاملتری پیدا کردم سعی میکنم یه جایی در این تالار بنویسم.

sms.seyedipoor
دوشنبه 18 شهریور 1392, 20:26 عصر
واسه ارسال و دریافت امتحان کردم اگه پورت 0 باشه ارسال پیام به درستی انجام میشه
شما از تابع boolean fileconnection.exists استفاده کردین(چک کردن وجود فایل و دایرکتوری)؟
نمی دونم چرا وقتی ازین تابع استفاده می کنم برنامه سریع بسته میشه حتی اگه داخل try catch باشه
درمورد ایجاد فایل و دایرکتوری قطعه کد دارین که کار بکنه؟

sms.seyedipoor
دوشنبه 18 شهریور 1392, 20:29 عصر
دسترسی به پیام های داخل گوشی چطوریه؟
واسه نگهداری پیام ها،رکورداستور خاصی وجود داره؟

abc2014
سه شنبه 19 شهریور 1392, 08:55 صبح
اول بخاطر مطالبی که نوشتید ممنونم با پورت صفر تونستم ارسال کنم.تشکر
من برنامه نویسی فایلها راکار نکردم.در سایت فکر نو ,[سایت برنامه نویس افغانستان] اموزش هایی دیدم.منبع شما چیه
این ادرس اموزش ومثالی زده که کار کرده تابعی هم که نوشتید بکاربرده:
http://www.fekrenaw.com/TopicDetails.aspx?tid=36

ومیدونم که در j2meبه اینبوکس گوشی نمیشه دسترسی پیدا کرد.
میتونی برای برنامه ات رکورد استور برای پیامهای در یافتی و یکی هم برای پیامها ی ارسالی ات بسازی.من یک پی دی اف فارسی نمیدونم از چه سایتی و لی با این عنوان دیدم :برنامه نویسی موبایل به زبانj2me حسن فرزانه و ایمان اشکانوند. فصل اخرش کاربا rmsراتوضیح داده
رکورد استور خاصی برای پیام در آر ام اس نیست باید ایجاد کنید..رکورد استور برای ذخیره تقریبا هرنوع داده ای است که با گرفتن بایتهای داده کار ذخیره را انجام میده حالا شما میخواهید متن پیام ذخیره بشه.

برنامه دریافتم را جدا نوشته ام و پیام را نمیگیره مگر اینکه از برنامه ای با همان شماره پورت بهش پیام بدم.این مشکل چطور حل میشه؟وچیکار کنم که وقتی پیام میرسه برنامه بیاد بالا.براس الرتی گذاشتم که موقع رسیدن پیام اعلام میکنه.انگار باید از پوش رجیستری استفاده کنم اما برای تنظیمات ان و راهنمایی بیشتر هنوز به جوابی نرسیدم.

sms.seyedipoor
سه شنبه 19 شهریور 1392, 12:07 عصر
سلام
منبعی که من ازش استفاده می کنم کتاب "برنامه نویسی موبایل در محیط نت بینز 6.8" تالیف "محمد عادلی نیا و رضا جعفری فخر" هست که ترجمه این پی دی اف هستش "Beginning J2ME 3rd Edition - Apress"
اما فایل pdf یکسری فصل های اضافی هم داره

واسه اینکه با رسیدن پیام برنامه بالا بیاد برنامه باید بصورت سرویس باشه که من اطلاعاتی دراین مورد ندارم فقط شنیدم.حالا نمی دونم منظور از سرویس همون پوش رجیستری که شما می گید هس یا نه.
یه سوال گذاشتین که "چطور میشه پیام فارسی ارسال کرد" واسه اینکه پیام فارسی بتونید ارسال کنید نیازی نیس کاری انجام بدین مبدل های نت بینز فارسی ندارن اما اگه تو گوشی برنامه رو انجام بدین با عوض کردن زبان نوشتن گوشی می تونید فارسی بنویسید

من با رکورد استور کار کردم اما نمی دونم چطوری یه داده از نوع message به اون اضافه کنم چون نمی تونم message (بطور کامل) به بایت تبدیل کنم و از طرفی هنگام بازیابی داده های از نوع بایتو به message تبدیل کنم.
مگر اینکه تمام اطلاعات یک پیامو بصورت رشته پشت سرهم داخل یک رشته بنویسم و بعد این رشته رو به رکورد استور اضافه کنم که کار جالبی نیس

sms.seyedipoor
سه شنبه 19 شهریور 1392, 12:09 عصر
واسه دریافت پیام از thread استفاده کردین؟
شماره پورت اونم فکر می کنم باید 0 بذارید و ارتباط بصورت سروری باشه.

abc2014
چهارشنبه 20 شهریور 1392, 16:55 عصر
1-از thread استفاده کردم واز شنودگر هم. شما با پورت صفر تونستید پیام بگیرید؟اگه گوشیتون به پورت صفر گوش میده حالا هم برنامه گوشی اونومیگیره هم برنامه شما؟ شاید تایپیک باز کنم و لی لطفا در همین تایپیک قطعه کدتان را بذارید مقایسه کنم.اگر چه فکر نکنم از کدهای برناممه کاردیگه ای انجام ندادید روی برنامه ؟فقط نوشتید و اجرا شد.؟
1-این قطه کد برای اضافه کردن رشته ی strبه رکورد استور میتونیدیک متد باهاش بسازید وهربار در برنامه صداش بزنید.البته اگه بشه اینو خوند.ببخشید.



Byte[] databyte_arr = str.getBytes();

int addRecord = myrecordstor.addRecord(databyte_arr, 0, databyte_arr.length);
2.از دستور زیر استفاده کنید تا تعداد رکورددر رکورد استور را بفهمید ..

myrecordstor. getNumRecords()


3-خواندن از رکورد استور



byte[] dataByteArr = new byte[5]; //buffer(an array of byte) to copy data records



int len; // getRecord() method return integer,number of bytes copy in rms


try {
//if :size of record for reading>arraye length that we created ,create a new arraye with size of data

if(recieve_rs.getRecordSize(j) > dataByteArr.length){

dataByteArr = new byte[myrecordstor.getRecordSize(j)];

}

//copy data of record(j)to dataByteArr,start offset 0 of array

len = myrecordstor.getRecord(j, dataByteArr, 0);

mystring=new String(dataByteArr,0,len);

catch(Exception e){}
متغیررشته ای my string رشته خوانده شده ازرکوردرا میگیرد که همان داده اولیه ذخیره شده است.که میتونی نمایش بدی. یا هر تصمیمی در موردش داری.
یک نکته من ذخیره و بازیابی را در گوشی انجام دادم وقتی میخوام رشته ها را ازش بخونم متن فارسی را با علامت سوال نشون میده اما عدد را درست نشون میده..دیگه نمیدونم خواستم اینم گفته باشم..

فکر نکنم اشکال در نوشتن برنامم باشه من از استاندارد jsr120خیلی مطلب گرفتم.
چطوری میتونم کاری کنم بجای شماره تلفن وقتی پیام میرسه با اسم باشه و از اسم مخاطبین بتونم استفاده کنم چه در ارسال و چه دریافت..اگه اینو انجام دادید برام توضیح میدهید چطوری؟من فرصت زیادی هم ندارم.