visual-studio - 关闭应用程序时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 Studio 中包含的内置 Android 模拟器。
我使用的是去年 3 月发布的旧版本 (28.0.25),而 9 月发布的新可用版本 (29.2.1) 通过这个简单的更新解决了这个问题,尽管这个问题在任何发行说明中都没有突出显示自 3 月以来的稳定版本。
推荐阅读
- python - 如何从以下代码修复 OOM 错误?
- java - 如何在 Java 中使用 XML 文件中的 removeChild()
- flutter - 如何使用 Flutter 创建一个包含 TabBar 和(自定义)BarWidget 的小部件?
- python - 在 Python 中使用 Fernet 进行对称加密 - 主密码用例
- javascript - 如果输入值为空格,则禁用按钮?反应
- regex - 创建在桌面和 Android 上工作的 React 应用程序,但在 IOS 上是空白的
- python - 创建网络爬虫时如何修复错误“'NoneType'类型的对象没有len()”?
- android - react-native-notification 前台消息
- excel - 如何在 Excel 中更改单个文档的语言?
- gradle - 如何将文档添加到 gradle 插件扩展变量?