首页 > 解决方案 > 如何使用颤振获取移动消息

问题描述

我必须从手机获取消息,所以我正在使用这个插件。它正在工作,但我没有收到任何消息,只是Instance of 'SmsMessage'在控制台中打印结果,但我做了文档示例中指定的所有操作。我犯了什么错误吗?

源代码

import 'package:flutter/material.dart';
import 'dart:async';
import 'package:sms/sms.dart';

class MessagesScreen extends StatefulWidget {
  MessagesScreen({Key key}) : super(key: key);

  @override
  _MessagesScreenState createState() => _MessagesScreenState();
}

class _MessagesScreenState extends State<MessagesScreen> {
  List _allMessages;
  @override
  void initState() {
    super.initState();

    getAllMessages();
  }

  Future getAllMessages() async {
    SmsQuery query = new SmsQuery();
    List<SmsMessage> messages = await query.getAllSms;
    debugPrint("Total Messages : " + messages.length.toString());
    print(messages);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Messages"),
      ),
      body: ListView.builder(
        itemCount: 1,
        itemBuilder: (BuildContext context, int index) {
          return Text("Test");
        },
      ),
    );
  }
}

控制台截图

标签: flutterdartflutter-layoutflutter-dependenciesdart-pub

解决方案


这与 SMS 消息无关,您只是不能以这种方式打印自定义对象列表。

循环浏览列表并打印您要打印的每条消息的属性。就像您必须处理任何其他复杂对象一样。


推荐阅读