View Full Version : مشکل با کاراکتر های فارسی و عربی در دریات اس ام اس
mostafa_shaeri_tj
سه شنبه 17 تیر 1393, 20:03 عصر
سلام.
یه رسیور برای پیام های ورودی نوشتم، به محض دریافت اس ام اس این کد کار میکنه و محتویات اس ام اس رو نشون میده. تا اینجای کار مشکلی وجود نداره.
اما وقتی یک اس ام اس فارسی دریافت میشه، برنامه همه کاراکترها رو با علامت سوال نشون میده .
کد دریافت :
SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]);
String message = currentMessage.getDisplayMessageBody();
Log.i("msg", message);
String phoneNumber = currentMessage.getDisplayOriginatingAddress();
تو ی کد بالا متن پیام توی متغییر message میاد .
mostafa_shaeri_tj
جمعه 03 مرداد 1393, 12:14 عصر
یعنی کسی تو این فروم با اس ام اس کار نکرده؟
saeed_g21
جمعه 03 مرداد 1393, 12:42 عصر
روی دستگاه مجازی تست میزنی ؟
نسخه اندروید چنده ؟
mostafa_shaeri_tj
جمعه 03 مرداد 1393, 15:24 عصر
هم نسخه 2 و هم نسخه 4. همچنین هم دستگاه واقعی و هم دستگاه مجازی
saeed_g21
شنبه 04 مرداد 1393, 01:19 صبح
این یک تیکه از کد برنامه منه که درست کار میکنه ببین میتونی سرهم کنی
public void onReceive(Context context, Intent intent) {
final Bundle bundle = intent.getExtras();
String phoneNumber = null;
SmsMessage currentMessage = null;
try {
if (bundle != null) {
final Object[] pdusObj = (Object[]) bundle.get("pdus");
for (int i = 0; i < pdusObj.length; i++) {
dbh=new DatabaseHelper(context);
db = dbh.getReadableDatabase();
currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]);
phoneNumber = currentMessage.getOriginatingAddress();
}
}
String senderNum = phoneNumber;
String message = currentMessage.getMessageBody().toString();
}
mostafa_shaeri_tj
شنبه 04 مرداد 1393, 11:05 صبح
خیلی ممنون از پاسختون.
به نظر میرسه شما کد رو از همون جایی گرفتید که من گرفتم.
تنها چیزی که اینجا باقی میمونه تنظیمات اپلیکیشنه. راستش من تاحالا برنامه فارسی ننوشتم. برنامه هام همش انگلیسی بوده (نام - منو - محتوا).
برای اپلیکیشن های فارسی نیاز هست کار خاصی انجام بدیم؟
mostafa_shaeri_tj
سه شنبه 14 مرداد 1393, 10:27 صبح
من تمام فایل های کد برنامه رو به utf8 تغییر دادم. اما بازهم مشکلم حل نشد. و محتوای اس ام اس های دریافتی ام که فارسی هست به ازای هر کاراکتر یک علامت سوال دریافت میکنم.:ناراحت:
اگر ممکنه یک کد دریافت اس ام اس دیگه ای خودتون استفاده کرده باشید بزارید. واقعا گیر کیردم.:ناراحت:
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.