簡體   English   中英

將HealthKit傳播到后端

[英]Propagating HealthKit Delete to back end

希望這個問題聽起來不會太愚蠢,但是我還沒有找到解決方案。 我目前正在使用Xamarin編寫與HealthKit集成的應用程序。 HK中存儲的數據會定期同步到服務器。 這可以通過提取食物相關性的HKAnchoredObjectQuery完成。

由於數據是定期提取的,因此存在同步之間的情況,用戶可能會刪除HealthKit中的值。 該刪除需要在下一次同步時傳播回服務器。

我最初的想法是使用觀察者查詢來做到這一點。

我的問題是:使用HealthKit的觀察者查詢,是否可以確定觸發查詢的操作是否為刪除操作?

public void CheckForDelete (Subject subject)
    {
        var sampleType = HKObjectType.GetCorrelationType (HKCorrelationTypeKey.IdentifierFood);
        var predicate = HKQuery.GetPredicateForSamples (NSDate.DistantPast, NSDate.Now, HKQueryOptions.None);
        var observerQuery = new HKObserverQuery (sampleType, predicate, (query, completion, error ) => {
            //...Determine if action was a Delete
            //Code to delete on backend

            completion();
        });

        HealthKitStore.ExecuteQuery (observerQuery);
    }

在iOS 9中, HKAnchoredObjectQuery已修改為報告已刪除的對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM