گاهی اوقات در برنامه ای که طراحی میکنیم نیاز داریم تا از گوشی کاربر یک پیام SMS ارسال کنیم.
یا به غیر از ارسال SMS میخواهیم متنی و از طریق ارسال ایمیل یا دیگر برنامه های پیامرسان به اشتراک بگذاریم.
در این مطلب دو پکیج فلاتر مختلف و باهم دیگه بررسی میکنیم.
سناریو 1
کاربر روی دکمه share کلیک میکند سپس شماره موبایل گیرنده پیغام SMS را مشخص می کند و پیام ارسال می شود.
سناریو 2
کاربر روی دکمه share کلیک میکند سپس برنامه ای که میخواهد از آن برای ارسال پیغام استفاده کند را مشخص میکند مثلا واتساپ , ایمیل یا….
انتخاب شماره موبایل از بین لیست مخاطبان و ارسال SMS.
دو روش برای ارسال SMS در فلاتر وجود دارد.
(https://pub.dev/packages/flutter_sms)
پکیجی بسیار ساده که به شما این امکان و میده تا شماره موبایل مقصد و متن پیام را مشخص کنید و سپس وارد صفحه ارسال SMS موبایل شوید.
کد زیر نمونه استفاده ساده از این کتابخونه می باشد.
_sendSMS() async {
List<String> recipients = ["19084635262"];
String _result = await FlutterSms.sendSMS(message: "https://testdynamiclink.page.link/Zi7X", recipients: recipients).catchError((onError) {
print(onError);
});
print(_result);
}
نتیجه دستور بالا تصویر زیر هست.
(https://pub.dev/packages/share)
این پلاگین برای کاربر یک دیالوگ نمایش می دهد که برنامه ارسال پیغام را باید مشخص کند.
بنابر اپلیکیشن های نصب شده روی گوشی کاربر آپشن های نمایش داده شده متفاوت است.
کاربر در این روش شماره موبایل دریافت کننده SMS را میتواند از بین لیست مخاطبین انتخاب کند.
در مثال زیر متنی که میخواهیم به اشتراک بگذاریم را قرار داده ایم.
_shareLink() {
debugPrint("in share link");
Share.share("https://flutter-learn.ir");
}
نتیجه کدهای بالا تصویر زیر است.
بنابر نیاز میتونید از یکی این دو کتابخونه استفاده کنید در حال حاضر این دو پکیج بهترین افزونه های نوشته شده برای Flutter می باشد.