Xcode-Mac App-Bootstrap проверить ошибку при запуске



Я создаю приложение C++ для Mac с помощью Xcode. Я делал это раньше без каких-либо проблем, но я начал новый проект несколько недель назад, и у этого есть проблемы.



Сообщение о запуске



Когда я запускаю приложение, это сообщение появляется в консоли после вызова SDL_GL_CreateContext



bootstrap_check_in():  (os/kern) unknown error code (44c)


Я никогда не видел этого раньше и не знаю, что это значит. Приложение все еще запускается, хотя.

Открытие всплывающих окон



osascript больше не работает. Когда эта команда будет вызывается,



osascript  -e 'try' -e 'POSIX path of ( choose file name with prompt "Save screenshot" default name "Screenshot.png" )' -e 'on error number -128' -e 'end try'


В консоли появится следующее сообщение:



2017-11-25 10:50:19.837159+1030 osascript[7910:487965] +[NSXPCSharedListener endpointForReply:withListenerName:]: an error occurred while attempting to obtain endpoint for listener 'com.apple.view-bridge': Connection interrupted
2017-11-25 10:50:19.838056+1030 osascript[7910:487963] *** Assertion failure in +[NSXPCSharedListener connectionForListenerNamed:fromServiceNamed:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/ViewBridge/ViewBridge-341.1/NSXPCSharedListener.m:421
2017-11-25 10:50:19.838724+1030 osascript[7910:487963] *** Assertion failure in -[NSVBSavePanel viewWillInvalidate:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1561.10.101/Nav.subproj/OpenAndSavePanelRemote/NSVBOpenAndSavePanels.m:387
2017-11-25 10:50:19.879032+1030 osascript[7910:487963] -[NSVBSavePanel init] caught non-fatal NSInternalInconsistencyException 'bridge absent' with backtrace


Я исключил трассировку стека. Комментарий, если вы хотите, чтобы я включил трассировку стека.



Случайное сообщение



Иногда в консоли появляется еще одно сообщение.



2017-11-26 11:09:14.994459+1030 Buttons[28532:1663094] [User Defaults] Couldn't read values in CFPrefsPlistSource<0x6000000e6b80> (Domain: com.apple.PowerManagement, User: kCFPreferencesAnyUser, ByHost: Yes, Container: (null), Contents Need Refresh: Yes): accessing preferences outside an application's container requires user-preference-read or file-read-data sandbox access, detaching from cfprefsd


Пути



Вызовы SDL_GetPrefPath дают различные пути в этом приложении.



Это приложение



SDL_GetPrefPath("company", "my app") -> "/Users/indikernick/Library/Containers/company.my-app/Data/Library/Application Support/company/my app/"


Еще одно приложение, которое не сломано



SDL_GetPrefPath("company", "my app") -> "/Users/indikernick/Library/Application Support/company/my app/"


Вот и все



Я почти уверен. все эти проблемы взаимосвязаны. Проект находится на Github , так что если вы видели эту проблему, прежде чем вы можете проверить настройки проекта. Если это имеет значение, я использую Xcode 9.0 и MacOS 10.13.1



Заранее благодарю вас за любую помощь.
536   1  

1 ответ:

Похоже, что ваше приложение (каким-то образом) изолировано. Это видно из пути, возвращаемого SDL_GetPrefPath, который начинается с ~/Library/Containers, и из "случайного" сообщения, которое ясно гласит:

Доступ к настройкам вне контейнера приложения требует пользователь-предпочтения-чтение или файл-чтение-доступ к песочнице данных

Всплывающее сообщение об ошибке также очень подозрительно: похоже, что ваше приложение не имеет права доступа к какому-либо системному ресурсу.

Вы должны проверьте в xcode, включена ли песочница для вашего приложения (например, проверьте, вызван ли файл списка свойств.права показаны в навигаторе проекта).

Подробнее о песочнице: https://developer.apple.com/library/content/documentation/Security/Conceptual/AppSandboxDesignGuide/AppSandboxInDepth/AppSandboxInDepth.html

Comments

    Ничего не найдено.