我需要帮助。 Xamarin Android有一个应用程序。在其中,启动了一个与AltBeacon库一起使用的服务。 在此服务中,创建一个线程,其中不断扫描信标。服务以StartForeground(...)开始。 该服务应该持续,因此决定在一个单独的进程中运行它,因为一段时间后android系统停止分配 内存和服务终止。 如果您在一个进程中运行应用程序和服务,一切正常。服务工作,信标被扫描。 但是只要我在一个单独的进程中运行它(使用Process =:myProcess属性),扫描不起作用。 DidRangeBeaconsInRegion方法不适用于IRangeNotifier实现对象。 它根本不起作用,没有例外。 简要代码库:
q)"`",'tab[`a]
"`a"
"`b"
"`c"
答案 0 :(得分:0)
可以将Android Beacon Library设置为在单独的进程中运行。您可以在此处阅读基本配置说明:
https://github.com/AltBeacon/android-beacon-library/pull/479
使用库版本2.11成功测试了此多进程设置。然而,版本2.12包括支持Android 8的重要返工,我还没有测试版本2.12+的多进程支持,因此请谨慎使用这些版本。您最好的选择是使用版本2.11。
上面链接的说明是针对使用标准Java或带有Android Studio或Gradle的Kotlin开发工具集构建的Android应用程序编写的。显然,需要对Xamarin进行修改。由于我不是Xamarin专家,所以我很难提供更多帮助。