Had*_*adi 7 android android-notifications flutter flutter-dependencies
我想在电话上发生某些特定事件时(在我的情况下接收具有预定格式或来自特定电话号码的 SMS)时弹出通知(并在单击打开应用程序时)。目前我使用flutter SMS 包并在 main() 中构建 SmsReceiver 类的实例,如下所示,并尝试将 sms 正文打印到控制台:
void main() {
SmsReceiver receiver = new SmsReceiver();
receiver.onSmsReceived.listen((SmsMessage msg) => print(msg.body));
runApp(MyApp());
}
Run Code Online (Sandbox Code Playgroud)
我在真实设备(三星 Galaxy 8+)上测试代码。当应用程序正在运行或在后台运行时,我可以毫无问题地收到短信正文。但是,当我关闭应用程序并收到一条短信时,出现以下错误?打印在控制台中:
W/FlutterJNI(23977):尝试向 Flutter 发送平台消息,但 FlutterJNI 与原生 C++ 分离。无法发送。频道:plugins.babariviere.com/recvSMS。响应 ID:0
你能帮我解决这个问题吗?即使应用程序关闭,是否可以监听此类事件并触发通知?
ps 我研究了颤振本地通知。但是,看起来这个包只安排通知出现。就我而言,我希望通知是事件驱动的。
我面临着100%同样的问题。我仍在寻找性能稳定的解决方案,但还没有运气,但我写这个答案是为了分享我的经验和发现,希望我们可以一起找到解决方案。
SmsReceiver receiver = new SmsReceiver();
receiver.onSmsReceived.listen((SmsMessage msg){
// Do something to pop a notification and launch main application
});
因此我们必须找到一种通过flutter应用程序运行android后台服务的方法,这可以通过使用flutter包在后台运行服务来完成。
我对任何类型的应用程序开发都是新手,我可能是错的,但这就是我所发现的。如果您找到出路,请分享。祝你好运。
| 归档时间: |
|
| 查看次数: |
1504 次 |
| 最近记录: |