flutter的生态圈相信会越来越好,往往我们不必去自己造轮子,我们只需组装汽车。
今天介绍一下flutter的url_launcher模块的使用。
这个模块在github上直接搜索是搜不到的,而是在https://github.com/flutter/plugins/tree/master/packages/url_launcher路径下。
使用方法:
(1)在pubspec.yaml中引入依赖
(2)基本功能
从这个表中可以看到url_launcher可以跳转网页、发送邮件、拨打电话、发送短信。只需要按照上标组织好数据就可以。
(3)demo,这里就贴一个github上的跳转链接的demo,使用也是很简单
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';
void main() {
runApp(Scaffold(
body: Center(
child: RaisedButton(
onPressed: _launchURL,
child: Text('Show Flutter homepage'),
),
),
));
}
_launchURL() async {
const url = 'https://flutter.dev';
if (await canLaunch(url)) {
await launch(url);
} else {
throw 'Could not launch $url';
}
}
接下来再贴上一些简单的例子,下面是一个发送模板邮件的接口,工作中貌似经常用到。
// url_launcher接口示例
void _launcherURL() async {
var year = new DateTime.now().year;
var month = new DateTime.now().month;
var day = new DateTime.now().day;
var hour = new DateTime.now().hour;
String msg = "";
if (hour < 12) {
msg = "早上好";
} else if (hour == 12) {
msg = "中午好";
} else if (hour > 12 && hour < 18) {
msg = "下午好";
} else {
msg = "晚上好";
}
// 发送模板邮件
String emailUrl =
"mailto:xxx@xxx.com?subject=name_${year}/${month}/${day}_申请加班&body=xx,${msg}\n\n以下为我加班完成的工作:\n\n加班时间:${year}/${month}/${day} 18:30~xx:xx 共xx小时\n\n加班事由:xx\n\n";
// String CallUrl = 'tel:' + phoneNumber; // 拨打电话
// String msgUrl = 'sms:' + phoneNumber; // 发送短信
if (await canLaunch(emailUrl)) {
await launch(emailUrl);
} else {
throw "url不能进行访问,异常";
}
}
就写到这吧,继续coding
(4)结束。