Облачная сборка для iOS с использованием Nativescript Sidekick приводит к ошибке CODE_SIGN_ENTITLEMENTS - PullRequest
0 голосов
/ 17 ноября 2018

После добавления файла app.entitlements в проект с целью включения push-уведомлений (aps-environment) сборка облака Sidekick выдает ошибку, указывающую, что сервер облачной сборки не может найти файл app.entitlements.

The following build commands failed:
\tCheck dependencies
(1 failure)
Code Signing Error: The file \"/tmp/builds/_/146cf62166c1319ab4a033cc9caf241a3f6550f1/4.2.4/4.2.0/AngusConsumerMobileAppv3/platforms/ios/AngusConsumerMobileAppv3\\app.entitlements\" could not be opened. Verify the value of the CODE_SIGN_ENTITLEMENTS build setting for target \"AngusConsumerMobileAppv3\" and build configuration \"Release\" is correct and that the file exists on disk.

Расположение файла app.entitlements автоматически включается при сборке в файл build.xcconfig.Удаление этой строки из файла build.xcconfig приводит к повторному добавлению того же расположения.

build.xcconfig

CODE_SIGN_ENTITLEMENTS = AngusConsumerMobileAppv3\app.entitlements

app.entitlements

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>aps-environment</key>
    <string>production</string>
</dict>
</plist>

Среда:

Version: 1.13.0-v.2018.10.5.2 (latest)
NativeScript CLI version: 4.2.4
CLI extension nativescript-cloud version: 1.14.2
CLI extension nativescript-starter-kits version: 0.3.5

1 Ответ

0 голосов
/ 17 ноября 2018

Похоже, что это простая проблема с путями, которая, я думаю, основана на соглашении о путях Windows с использованием обратной косой черты по сравнению с соглашением Linux с использованием передней косой черты, которая необходима на облачном сервере (не совсем понятно, почему, но работа ниже, кажется, это исправляет), что приводит к сбою сборки, когда он не может найти файл app.entitlements из-за неправильного пути.

Похоже, вы ДОЛЖНЫ также объявить свое имя файла. Разрешение системе использовать файл app.entitlements по умолчанию, казалось, всегда приводило к тому, что моя ручная запись в build.xcconfig была закомментирована и заменена путем обратной косой черты.

ТАК - я просто сделал запись для файла myapp.entitlements с именем пользователя

build.xcconfig

CODE_SIGN_ENTITLEMENTS = myapp_local_folder/myapp.entitlements

myapp.entitlements

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>aps-environment</key>
    <string>production</string>
</dict>
</plist>

Это позволило использовать PUSH-уведомления для производства, а также для сборки и публикации в магазине приложений iOS, как ожидалось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...