0
我需要项目体系结构的一些帮助。我不能得到,ViewModel如何可以与Android服务进行通信。 我创建了可以调用某些平台功能的Inteface。MVVMCross ViewModel与Android服务沟通
public interface IGeoLocationWatcher
{
GeoLocation Location { get; set; }
void StartLocationService();
void StopLocationService();
}
而且Android平台上我知道这个接口
[Service]
public class DroidGeolocationWatcher : Service,
Android.Gms.Common.Apis.GoogleApiClient.IConnectionCallbacks,
Android.Gms.Common.Apis.GoogleApiClient.IOnConnectionFailedListener,
Android.Gms.Location.ILocationListener,
IGeoLocationWatcher
{
public GeoLocation Location { get; set; }
public void StartLocationService();
public void StopLocationService();
}
当我到达新的位置,我祈求,在视图模型订阅我的自定义消息(事件)。如果应用程序在后台发送通知或在前台时 - 我更新我的用户界面。
WeakSubscribe<GeoLocationChangedMessage> ((s)=> {
Location = s;
RaisePropertyChanged(() => Location);
});
但它似乎不工作。我需要提醒我做错了什么或者其他方法。感谢您的关注。
这不是我想要的,但感谢响应。 –