PDA

View Full Version : ارسال ایمیل



shahin bahari
دوشنبه 04 دی 1391, 20:44 عصر
سلام
یکم راهنمایی راجع به ارسال ایمیل میخواستم.نمیخوام برای ارسال برنامه های ایمیل رو باز کنه.
میخوام باگ هایی که تو برنامه هست رو برام ایمیل کنه. از کدوم سرویس های ایمیل استفاده کنم؟ محدودیت هاشون چطوری هست؟ اگر مثالی هم باشه که دیگه عالی هست.
یه نکته دیگه ! لاگ هایی که برنامه تولید میکنه رو چطوری از توی خود برنامه میتونم بخونم؟

srfarzad
سه شنبه 05 دی 1391, 23:25 عصر
خب ...
از این دستور برای ارسال ایمیل استفاده کنید.

TextView txt_body,txt_email,txt_subject;
Button btn_exit,btn_send;
///oncreate

txt_body = (EditText) findViewById(R.id.txt_body);
txt_email = (EditText) findViewById(R.id.txt_email);
txt_subject = (EditText) findViewById(R.id.txt_subject);

String to = txt_email.getText().toString();
String subject = txt_subject.getText().toString();
String message = txt_body.getText().toString();



String to = txt_email.getText().toString();
String subject = txt_subject.getText().toString();
String message = txt_body.getText().toString();

Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[] { to });
email.putExtra(Intent.EXTRA_SUBJECT, subject);
email.putExtra(Intent.EXTRA_TEXT, message);

// need this to prompts email client only
email.setType("message/rfc822");

startActivity(Intent.createChooser(email,
"Choose an Email client :"));


برای پیدا کردن باگتون باید کدهاتون رو با try { } catch { } هندل کنید و از را استفاده کنید


Log.e(TAG,e.getmessage);

شما میتونید مقدار e رو برای خودتون در پشت صحنه برنامه میل کنید.


خب برای سوال آخرتون
شما باید کدتون رو دیباگ کنید..بهترین راه اینه کدتون رو دیوایس اندرویدی تست کنید و لاگ رو نگاه کنید.
کلا در ایکلیپس وقتی کدی رو دیباگ میکنید وارد تب Debug میشید که امکانات زیادی رو در اختیار برنامه نویسی میزاره تا بتونه کامل برنامش رو دیباگ کنه.

کلا اگه میخواید اندروید کار کنید باید حتما با دیوایس های زیادی سر و کله بزنید مثله وب نیست بگی خب روی مرورگر اجرا شد دیگه حله یا فوقش پلاگین ها رو آپدیت میکنم اندروید چون رایگانه همه ازش استفاده میکنن و روی دستگاه ها میریزن.
مثلا یه شرکت چینی ، یه دستگاه الکی میزنه و اندروید رو خراب روش میریزه خب حالا بیا دیباگ کن و ....
جدا از اینا خیلی وقتا پیش میاد خطایی روی دستگاهی میده و روی دستگاهی نه..شاید در بخش های مثلا صدا و تصویر شاید روی دیوایسی کدک ffmpeg وجود نداشته باشه و اصلا کار نکنه ولی روی بقیه اوکی باشه و به راحتی پلی بشه ....

موفق باشید...

shahin bahari
چهارشنبه 06 دی 1391, 15:00 عصر
ممنون دوست عزیز برای پاسختون.
برای ارسال ایمیل همون طور که گفتم نمیخوام از یه برنامه دیگه برای ارسال استفاده کنم.میخوام توی سرویس برنامه خودم مواقعی که لازم بود ایمیل رو بفرسته.
برای گرفتن باگ هم منظورم استفاده از بلاک try/catch و گرفتن Exception ها نبود. بدیهی هست که قبل از اینکه برنامه رو بخوام بدم به کسی تمام باگ های ممکن رو بگیرم (نه اینکه بدم به بیرون بعد با ایمیل.....) همون طور که خودتون گفتید به خاطر تنوع دستگاه های اندرویدی امکان به وجود اومدن شرایط خاص زیاده! من میخوام اگه شرایطی بود که پیش بینی اون رو نکرده بودم رو بگیرم. خود ویندوز و کلی از برنامه هایی که استفاده میکنیم هم Bug reporter دارند و وجود این به این معنی نیست که هیچ دیباگی صورت نگرفته.
در مورد خوندن لاگ ها هم پرسیدم به این خاطر بود که تو برنامه ای دیدم یه چیزی شبیه log cat داشت و تمام لاگ ها رو نشون میداد. تا حالا کدی ندیده بودم که این کار رو کنه برای همین پرسیدم که چطور این کار رو انجام میده.