Повторне спливаюче вікно: Xcode хоче отримати доступ до ключа “com.apple.dt.XcodeDeviceMonitor” у вашому ланцюжку ключів


83

Починаючи з MacOS Sierra, я почав періодично отримувати це спливаюче вікно з XCode, навіть після натискання кнопки «Завжди дозволяти».

Вискочити

Я спробував видалити елемент "com.apple.dt.XcodeDeviceMonitor" у брелоку. Це відновлює ключ, але не вирішує проблему.

Це відкрита тема для обговорення на форумах Apple , але, схоже, ніхто не має рішення.


Може, преф заплутався? Запустіть lsof, і під час спливаючого діалогового вікна перевірте, чи є у Xcode відкриті файли з підозрілим виглядом. Потім закрийте Xcode, видаліть файл і ключ і повторіть спробу.
Колін Барретт

1
Хтось знає, навіщо Apple взагалі потребує доступу до цього ключа?
Флоріан

Відповіді:


104

Опублікування цього рішення для Xcode 8, оскільки ні в кого іншого немає:

  1. Відкрийте доступ до брелока.
  2. Шукайте XcodeDeviceMonitor.
  3. Перетягніть елемент до системного брелока зліва.
  4. Введіть пароль адміністратора.

Це нарешті це виправляє.


1
Набагато безпечніше, ніж вибрати Дозволити всім програмам доступ до цього елемента . Дякую.
Боб,

2
Це повинна бути правильна відповідь. Це приглушило помилку навіть після перезапуску. Дякую!!
Mike Critchley

@jjxtra XcodeDeviceMonitor не з'являвся для мене перші кілька разів. Просто продовжуйте відкидати спливаюче вікно (я намагався заборонити / дозволити / завжди дозволити), і воно врешті з’явиться.
olivaresF

Мою проблему було вирішено після виконання цих кроків. Дякую :)
Mohnish Hirudkar

77

відкрийте [ доступ до брелока ]> введіть " xcode " в області пошуку> двічі клацніть [ com.apple.dt.XcodeDeviceMonitor ]> клацніть [ контроль доступу ]> виберіть перший параметр [ дозволити всім програмам доступ до цього елемента ]

Не забудьте натиснути Зберегти зміни!

сподіваюся, це допоможе.

Торкніться дозволити всім програмам доступ до цього елемента, а потім натисніть Зберегти зміни


2
Це не спрацювало для мене. Спливаюче вікно повернулось під час наступного перезапуску, і Контроль доступу повернувся до пункту "Підтвердити перед наданням доступу". Xcode та XcodeDeviceMonitor все одно перебувають у списку "Завжди дозволяти доступ цим програмам", тому він не повинен був потрібний для дозволу всіх програм.
Jim Leask,

Те саме тут ... спливаюче вікно постійно повертається. Хто має постійне рішення?
ZS

1
Ви пам’ятали натиснути кнопку «Зберегти зміни» та ввести свій пароль?
Гоббс Тіге

1
Коли я шукаю xcodeв Keychain, він ще нічого не знаходить, я все ще отримую це спливаюче вікно. 🤷🏻‍♂️
Кліфтон

1
Оновлення. Я думаю, що єдиним рішенням, яке назавжди позбудеться спливаючого вікна, є наведене нижче рішення malhal ... Я не бачив спливаючого вікна, оскільки навіть після перезапуску та навмисного збою мого додатка з масивом поза межами винятку. Тим не менше, навчився чогось із цієї відповіді для подальшого використання. Дякую.
Mike Critchley

11

У мене працювало наступне (запуск macOS 10.12.1 та XCode 7.3).

Зауважте, що проблема з іншими рішеннями полягає в тому, що вони працюють із (тимчасовим) записом брелока для входу, який видаляється після виходу XCode, тож, схоже, рішенням є створення запису в системному брелоку.

Я спробував скористатися Доступом до брелока, щоб перемістити запис із логіну в Системний брелок, але він не вдався з різними незрозумілими помилками (наприклад, "Сталася помилка. Неможливо додати елемент до поточного брелока")

Натомість я використав команду безпеки, щоб створити новий запис у системному брелоку, який (майже) ідентичний тимчасовому.

Єдина відмінність - це пароль, який я не міг би турбувати (і я не впевнений, що це важливо).

Відкрийте термінал, вставте та виконайте таку команду (після відповідного редагування, якщо XCode знаходиться не в звичайному місці):

sudo security add-generic-password \
-s 'com.apple.dt.XcodeDeviceMonitor' \
-a session-token \
-p anyoldstring \
-T /Applications/Xcode.app \
-T /Applications/Xcode.app/Contents/Developer/Library/Xcode/Tools/XcodeDeviceMonitor \
/Library/Keychains/System.keychain

Застереження - моєю єдиною метою тут було запобігти настирливому оповіщенню.
Я не уявляю, чи це щось зламає.
Ви возитесь із системним брелоком: що може піти не так?


1
Це спрацювало, тоді як жодне інше рішення не допомогло. Мені довелося трохи змінити шляхи до файлів, оскільки мій Xcode знаходиться в папці під назвою Xcode, але в іншому випадку це вдалося! Дякую.
Ендрю Сміт

1

Я повідомив про це Apple як помилку, і після кількох пропозицій, таких самих, як і деякі згадані тут, які не спрацювали, вони повернулись із наступним, що спрацювало:

"Вибачте за біду. Ми ще трохи розберемося в цьому. Тим часом, якщо вам не потрібен датчик iCloud, ви можете тимчасово вимкнути його, виконавши наступне:

  1. Перейдіть до Terminal.app.
  2. Введіть це, щоб за замовчуванням користувач
    писав com.apple.dt.Xcode iCloudGaugeDisabled -bool ТАК
  3. Перезапустити Xcode "

0

Ця проблема знову з’явилася для мене минулої осені. Я думаю, що проблема може виникати через діру в безпеці, яку мав Apple, де обліковий запис кореневого користувача не захищений паролем. Я скинув свій пароль для кореневого облікового запису користувача (до того самого пароля, що був раніше). Тоді я не помічав стосунків, але, прочитавши цей пункт підтримки, я підозрював, що це може бути проблемою.

https://support.apple.com/en-us/HT201609

Я скидаю свій пароль для брелока для входу (знову до того самого пароля), виконуючи ці дії, і проблема з тих пір зникла.

Сподіваюся, це допомагає.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.