Flutterのプラグインurl_launcher を使用してSMSを起動したり電話をかけたりする方法は結構お見かけするのですがLINEがなかったので備忘録として残しておきます。
環境
1.プラグインのインストール
プラグインのインストールです。pubspec.yamlを編集します。執筆時点で最新のバージョンを指定しています。
name:
description:
~省略~
dependencies:
flutter:
sdk: flutter
url_launcher: ^5.4.1
dev_dependencies:
flutter_test:
sdk: flutter
2.コード
class Sample extends StatefulWidget {
@override
_SampleState createState() => _SampleState();
}
class _SampleState extends State<Sample> {
@override
void initState() {
super.initState();
}
final linePath = "https://line.me/R/msg/text/?";
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('サンプル画面'),
backgroundColor: Colors.white,
),
body: Center(
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[
RaisedButton(
child: Text("Line"),
color: Colors.green,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10.0),
),
onPressed: () {
sendLine(linePath);
},
),
],
),
),
);
}
void _sendLine(String path) async {
var _status = 'Ready';
if (await canLaunch(path)) {
await launch(path);
} else {
setState(() {
print('Chat','Unable to launch url $path');
});
}
}
}