首页 > 解决方案 > 关闭应用程序时Android模拟器无法拦截短信

问题描述

我正在开发一个带有“Xamarin.Android”的 Android 应用程序来拦截传入的 SMS 消息。当我使用 Visual Studio 内置模拟器(Android 9 映像)部署应用程序时,关闭应用程序时不会拦截 SMS。但是当我在 Galaxy Note 8 (Android 9) 上部署相同的应用程序时,它运行良好。

我挖掘了有关最近 Android 版本的更新和更改的更多详细信息,以及它如何处理后台服务以及隐式广播接收器的限制。我发现 SMS_RECEIVE 已经不受任何限制,所以广播应该传送到我的应用程序,即使它已关闭。

我使用 Java 重写了 SMS 广播接收器部分,以便在 Android Studio 中对其进行测试;它适用于 Android Studio 模拟器和设备。

这是 Visual Studio 模拟器中的常见问题吗?有我需要更改的配置吗?

标签: visual-studioxamarinxamarin.android

解决方案


事实证明,解决方案只是更新 Visual Studio 中包含的内置 Android 模拟器。

我使用的是去年 3 月发布的旧版本 (28.0.25),而 9 月发布的新可用版本 (29.2.1) 通过这个简单的更新解决了这个问题,尽管这个问题在任何发行说明中都没有突出显示自 3 月以来的稳定版本。


推荐阅读