[英]Xamarin.Forms DependencyService Get() Method Returns Null in PCL
[英]Call PCL method in background Xamarin.Forms
我目前正在使用xamarin.forms应用(目前仅适用于android)。 如果连接了蓝牙设备(该应用未运行),则该应用应执行一些任务。 任务是从传感器收集一些数据并将其写入sqlite数据库。
我设法使用广播接收器捕获了蓝牙事件...
我的问题是我应该如何收集和写入这些数据(GPS)?
我可以通过PCL中的一些事件来打电话给他们吗? 还是我需要一些服务? 还是应该在.android项目中创建该功能?
我是xamarin和android的新手,所以我感谢任何帮助:)
谢谢
我的问题是我应该如何收集和写入这些数据(GPS)? 我可以通过PCL中的一些事件来打电话给他们吗? 还是我需要一些服务? 还是应该在.android项目中创建该功能?
有几种获取传感器数据的方法,您可以在PCL
这样做。
当您在BroadcastReceiver
捕获bluetooth
事件时,可以在OnReceive
方法中获取传感器数据。
您可以使用DependencyService获取设备传感器数据,然后将其写入sqlite
数据库。 正如文件所说:
Xamarin.Forms允许开发人员定义特定于平台的项目中的行为。 然后,DependencyService找到正确的平台实现,从而允许共享代码访问本机功能。
关于DependencyService
用法,您可以阅读文档或参考我的回答 。
您可以使用DeviceMotionPlugin获取这些传感器数据。 使用此插件时,可以从任何项目或PCL
调用CrossDeviceMotion.Current
以获得对API的访问。
您可以在PCL
实现此功能。 使用method 2
或method 3
,可以在PCL
获取传感器数据,然后将它们存储到sqlite中。 仍然使用本机Android API获取本机Android中的传感器数据,但是您可以在PCL
使用这些数据 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.