macos - AEDeterminePermissionToAutomateTarget的授权等待无限时间

我使用这种方法来检查Apple Event(Automation)权限:

bool checkSIPforAppIdentifier(const QString &appId)
{
    OSStatus status = noErr;
    if (@available(macOS 10.14, *)) {

        NSAppleEventDescriptor *targetAppEventDescriptor;

        targetAppEventDescriptor = [NSAppleEventDescriptor descriptorWithBundleIdentifier:appId.toNSString()];

        status = AEDeterminePermissionToAutomateTarget(targetAppEventDescriptor.aeDesc, typeWildCard, typeWildCard, true);
    }

    return status == noErr;
}

问题是执行冻结在API: AEDeterminePermissionToAutomateTarget,并且不提示用户进行授权。

用法示例:

checkSIPforAppIdentifier("com.microsoft.Word");

我在info.plist中插入了必要的密钥:

<key>NSAppleEventsUsageDescription</key>
<string>XXX uses this feature to do do Typography actions.</string>

我的应用未沙盒化。

转载请注明来自askonline.tech,本文标题:macos - AEDeterminePermissionToAutomateTarget的授权等待无限时间


 Top