鸿蒙版Flutter实现发送短信的功能

2025-03-09 11:51:53
163次阅读
0个评论

鸿蒙版Flutter实现发送短信的功能

使用flutter_sms包

 flutter_sms:
    git:
      url: "https://gitcode.com/openharmony-sig/fluttertpc_flutter_sms.git"

首先,我们需要创建一个发送短信的方法,然后在界面上添加一个短信按钮。


  Future<void> _sendSms(BuildContext context) async {
    const String number = '17752170152';
    const String message = '快递查询助手是一款便捷的快递查询工具,支持多家快递公司的物流信息查询和跟踪。通过简单的操作,您可以随时了解您的包裹状态。';
    
    try {
      await sendSMS(message: message, recipients: [number], sendDirect: false);
    } catch (e) {
      if (context.mounted) {
        ScaffoldMessenger.of(context).showSnackBar(
          SnackBar(content: Text('发送短信出错: $e')),
        );
      }
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      // ... 现有代码 ...
      body: SingleChildScrollView(
        child: Padding(
          padding: const EdgeInsets.all(16.0),
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: [
              // ... 现有代码 ...
              const SizedBox(height: 16),
              _buildCopyrightItem(
                icon: Icons.person,
                title: '作者',
                content: '坚果派',
              ),
              _buildCopyrightItem(
                icon: Icons.public,
                title: '公众号',
                content: 'nutpi',
              ),
              _buildCopyrightItem(
                icon: Icons.phone,
                title: '联系电话',
                content: '17752170152',
                onTap: () => _callNumber(context),
              ),
              _buildCopyrightItem(
                icon: Icons.sms,
                title: '发送短信',
                content: '17752170152',
                isLink: true,
                onTap: () => _sendSms(context),
              ),
              _buildCopyrightItem(
                icon: Icons.language,
                title: '官网',
                content: 'https://www.nutpi.net/',
                isLink: true,
                onTap: () => _launchUrl('https://www.nutpi.net/'),
              ),
              // ... 现有代码 ...
            ],
          ),
        ),
      ),
    );
  }

  // ... 现有代码 ...

这个修改添加了以下内容:

  1. 创建了一个新的 _sendSms 方法,用于发送短信
  2. 在联系电话下方添加了一个"发送短信"选项
  3. 短信内容设置为应用的介绍文本
  4. 使用 sendSMS 方法发送短信, sendDirect: false 参数表示会打开短信应用而不是直接发送 请确保您的 pubspec.yaml 文件中已经添加了 flutter_sms 依赖:
dependencies:
  flutter_sms: ^2.3.3

如果尚未添加,请运行以下命令安装:

flutter pub add flutter_sms

这样,用户点击"发送短信"选项时,系统会打开短信应用,并自动填入电话号码和应用介绍内容。

所以你会了吗?

收藏00

登录 后评论。没有帐号? 注册 一个。