Mam aplikację, w której próbuję zintegrować HealthKit i pobrać dane związane z etapami agregowane w ciągu dnia przy użyciu HKStatisticsCollectionQuery. Wymagane jest osobne pobieranie danych kroków tylko dla iPhone'a i urządzeń Apple Watch (bez usuwania duplikatów), które przyczyniły się do aplikacji zdrowia.Objective-C HealthKit określić, czy źródło pochodzi z Apple iPhone lub Apple Watch
Klasa HKSource eksponuje tylko następujące właściwości:
- nazwa - nie może być stosowany jako użytkownik może zmienić na coś z tylko 'xxxx iPhone'
- bundleIdentifier - dostarcza nam UUID urządzenia (unikalne na urządzenie, tak różne dla każdego iPhone/Watch), i wygląda na com.apple.health.UUID, oto co mówi dokumentacja Apple: "Dla aplikacji ta właściwość zawiera aplikację Identyfikator pakietu. W przypadku obsługiwanych urządzeń Bluetooth LE ta właściwość zawiera identyfikator UUID urządzenia. "
jestem w stanie wyciągnąć wszystkie źródła (za pomocą HKSourceQuery), które mają prefiks bundleIdentifier z«com.apple.health», ale jestem w stanie wywnioskować, co jest Apple iPhone kontra który jest iWatch firmy Apple .
czy ktoś przed obliczu podobnej sytuacji, i czy istnieje inny sposób, aby zidentyfikować, które źródło jest iPhone lub Apple Obserwować?
Każda pomoc będzie wielki! .thanks!
W tej samej sytuacji. Coś w rodzaju statycznej metody zwracania iPhone'a "parentDevice" byłoby tutaj pomocne w Apple. – Wilmar
Cześć Wilmar, zobacz moją odpowiedź poniżej. Znalazłem na razie obejście tego problemu. Proszę zaakceptować, jeśli odpowiedź jest wystarczająca. Dzięki. –