2013-07-03 2 views
1

Компьютер Mac OS X 10.9 имеет настройки доступности перемещены на другую панель, теперь его были перенесены в безопасности и конфиденциальности, и это за приложение на основе любезно посмотреть на следующем скриншоте, enter image description hereMac 10,9 Доступность

Если мы хотим, чтобы наше приложение чтобы включить функцию доступности, мы можем ее перетащить, но как разработчик, как добавить наше приложение в этот список? любой, столкнувшийся с подобной проблемой, может помочь.

+0

Весь смысл этой настройки безопасности является то, что вы, как разработчик, * не * предоставлять свои права приложения для управления пользовательского интерфейса; он требует одобрения пользователя. –

+0

Но как разработчик мы должны быть в состоянии включить для наших собственных приложений, так как яблоко теперь стало доступным на основе каждого приложения, имеет смысл, что, поскольку разработчик должен иметь возможность включить это для моих собственных приложений, но на данный момент только способ через AXProcessTrusted, но API требует, чтобы в первый раз, когда наше приложение было запущено, его необходимо перезапустить, и это приводит к ошибке пользователя –

ответ

5

В OS X 10.9 Mavericks, AXAPIEnabled()has been deprecated.

AXIsProcessTrustedWithOptions можно использовать вместо:

NSDictionary *options = @{(id)kAXTrustedCheckOptionPrompt : @YES}; 
BOOL accessibilityEnabled = AXIsProcessTrustedWithOptions((CFDictionaryRef)options); 

Если вы передаете в YES для kAXTrustedCheckOptionPrompt, система будет показывать пользователю полезный диалог со ссылкой на правильной безопасности & панели конфиденциальности в настройках системы:

«YourApp.app хотел бы управлять этим компьютером с помощью специальных возможностей».

enter image description here