2013-12-12 31 views
11

Pracuję nad urządzeniem Bluetooth LE i mam problem z powodu buforowania usług przez system MacOS. Jeśli spróbuję usunąć usługę lub zmienić jej identyfikator UUID na urządzeniu, które rozwijam, zmiana nie pojawi się na komputerze Mac i zamiast tego będę nadal widzieć starą listę usług i identyfikatorów UUID z urządzenia. Próbowałem przejść na inny komputer Mac, który nie był sparowany z moim urządzeniem i zobaczyłem nową listę usług z prawidłowymi identyfikatorami UUID, więc wydaje się, że jest to problem z pamięcią podręczną w moim Macu programistycznym.Jak wyczyścić pamięć podręczną CoreBluetooth w systemie MacOS?

Znalazłem plik com.apple.Bluetooth.plist w/Library/Preferences i usunąłem go, ale system odłożył te same dane, zakładam, że system ma pamięć podręczną załadowaną do pamięci i właśnie ją zapisuje w razie potrzeby wycofać.

Czy ktoś wie, jak usunąć pamięć podręczną urządzenia/usługi MacOS CoreBluetooth?

Odpowiedz

31

W końcu znalazłem źródło problemu - jest cache w folderze preferencji użytkownika w folderze o nazwie ByHost. Oto kroki, aby wyczyścić pamięć podręczną Bluetooth:

  • wyłączyć Bluetooth
  • Usuń com.apple.Bluetooth.plist z /Library/Preferences
  • usunąć pliki o nazwie com.apple.Bluetooth.somehexuuidstuff .plist z ~/Library/Preferences/ByHost (należy pamiętać, że jest to łatwy preferencji folderu, a nie jeden system)
  • Włącz Bluetooth

Po wykonaniu tych czynności usługi mojego urządzenia peryferyjnego są prawidłowo identyfikowane. Z tego, co znalazłem w Internecie, mogą być również inne pliki com.apple.Bluetooth w/Library/Preferences związane z HID lub zestawami słuchawkowymi lub czymś podobnym - nie wiem, czy ważne jest, aby je usunąć, ponieważ nie miałem mieć je w moim systemie.

+0

Wiele razy spotkałem się z tym problemem na moich urządzeniach. W przypadku iOS (nie OSX) stwierdziłem, że w systemie iOS wystarcza około 80-90% czasu na wyłączenie i wyłączenie funkcji BT w celu wyeliminowania problemów z buforowaniem. Pozostałe 10-20%, robię restart urządzenia i działa. – SJoshi

+0

Każda aktualizacja El Capitan 10.11.x wymagała ode mnie usunięcia plików plist "ByHost", aby Bluetooth działał ponownie, ale muszę najpierw ponownie uruchomić komputer. – doublesharp

+0

Próbowałem tego z Sierra i kiedy ponownie włączam bluetooth, 19950 elementów w CoreBluetoothCache wciąż znajduje się w nowo utworzonym com.apple.Bluetooth.plist – Neth

Powiązane problemy