Как добавить расширение просмотра сегодня для приложения Cordova для iOS9? [Swift]

Я следовал этому руководству для создания расширения представления сегодня. Это работает для родного приложения на базе Xcode 7.3 для iOS 9, но когда я пытаюсь выполнить те же шаги для приложения Cordova. Я получаю ошибку сборки.

/Users/MAC/Desktop/RWS/RAD/[CORDOVA_APP_NAME]/platforms/ios/[CORDOVA_APP_NAME]/Bridging-Header.h:28:9: note: in file included from /Users/MAC/Desktop/RWS/RAD/[CORDOVA_APP_NAME]/platforms/ios/[CORDOVA_APP_NAME]/Bridging-Header.h:28:
#import <Cordova/CDV.h>
        ^
/Users/MAC/Library/Developer/Xcode/DerivedData/[CORDOVA_APP_NAME]-ggabeceockqrdjbqfzogiakufhxo/Build/Products/Debug-iphonesimulator/include/Cordova/CDV.h:20:9: note: in file included from /Users/MAC/Library/Developer/Xcode/DerivedData/[CORDOVA_APP_NAME]-ggabeceockqrdjbqfzogiakufhxo/Build/Products/Debug-iphonesimulator/include/Cordova/CDV.h:20:
#import "CDVAvailability.h"
        ^
/Users/MAC/Library/Developer/Xcode/DerivedData/[CORDOVA_APP_NAME]-ggabeceockqrdjbqfzogiakufhxo/Build/Products/Debug-iphonesimulator/include/Cordova/CDVAvailability.h:20:9: error: 'CDVAvailabilityDeprecated.h' file not found
#import "CDVAvailabilityDeprecated.h"
        ^
<unknown>:0: error: failed to import bridging header '/Users/MAC/Desktop/RWS/RAD/[CORDOVA_APP_NAME]/platforms/ios/[CORDOVA_APP_NAME]/Bridging-Header.h'

3 ответа

Решение

Недавно я решил эту проблему, создав плагин cordova-plugin, который добавляет (уже реализованный) виджет сегодня в проект cordova-ios: см. Мой ответ здесь

Мне удалось решить вышеуказанные проблемы, добавив Foundation.framework и lib.Cordova.a к "Связать двоичные файлы с библиотеками" на этапах сборки. Убедитесь, что вы выбрали расширение виджета сегодня в качестве цели при этом. Смотрите следующий снимок экрана:

Я предполагаю, что вы используете плагин Cordova file. Я думаю, что в настоящее время невозможно написать расширение сегодня на языке Swift, потому что этот плагин написан на языке C и не совместим с Swift. Когда я пытаюсь добавить сегодня в C-target, я не получаю эту ошибку.

Другие вопросы по тегам