flutter 发送 电子邮件,短信,打电话
效果图
发送邮件:
打电话:
发送短信:
准备工作,
添加插件 get_it url_launcher
url_launcher插件需要加权限,
新建一个class类
import 'package:url_launcher/url_launcher.dart';
import 'package:get_it/get_it.dart';
class TelAndSmsService {
void call(String number) => launch("tel:$number");
void sendSms(String number) => launch("sms:$number");
void sendEmail(String email) => launch("mailto:$email");
}
GetIt getIt = GetIt.instance;
void setupgetIt() {
getIt.registerSingleton(TelAndSmsService());
}
出口地方初始化
void main() async {
//初始化
setupgetIt();
WidgetsFlutterBinding.ensureInitialized();
if (Platform.isAndroid) {
SystemChrome.setSystemUIOverlayStyle(
const SystemUiOverlayStyle(statusBarColor: Colors.transparent));
await Firebase.initializeApp();
}
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp])
.then((_) {
runApp(const MyApp());
});
}
调用代码
final TelAndSmsService _service = getIt<TelAndSmsService>();
final String number = "123456789"; //这里填写联系电话用于短信接收和电话接收
final String email = "[email protected]"; //电子邮件
//backTop 是点击事件,
backTop: () {
_service.call(number); // 打电话
_service.sendEmail(email); //发送邮件
_service.sendSms(number); //发送邮件
}