Метод интеграции: CocoaPods Версия Xcode: 12.1 Версия библиотеки: 3.6.3 Платформа: iOS Язык: Objective-C Описание: проблема при интеграции службы уведомлений Mixpanel, модуль Mixpanel не найден в NotificationService.h Ожидаемое поведение: Для правильной работы цели службы уведомлений в соответствии с документацией Mixpanel.
Я выполнил шаги, описанные в Mixpanel/Mixpanel-iphone Readme . Потому что в документации веб-сайта есть опечатка для Rich Push Notifications NotificationService.h, которая повторяется в одном файле .m.
Я хорошо следовал каждому шагу, установил капсулы, но я не мог бежать, несмотря ни на что. Поскольку мы используем Flipper, использование use_frameworks! дает нам некоторые проблемы. Я пробовал использовать_frameworks! :linkage => :static вместо этого и обходной путь, позволяющий использовать use_frameworks! работает. Я попытался изменить Require only App-Extension-Safe Api на No, добавив путь Mixpanel к Podfile, добавив пути к настройкам целевой сборки уведомлений, все это не сработало, и я получаю модуль Mixpanel, не найденный в NotificationService.h
Я также попытался начать все сначала, так как думал, что мой проект был поврежден. Я вижу, что Mixpanel устанавливается вместе с модулями, но не могу импортировать его из NotificationService.h
Вот конец моего подфайла:
target 'NotificationService' do
pod 'Mixpanel'
end
Вот мой файл NotificationService.h:
@import Mixpanel;
@interface NotificationService : MPNotificationServiceExtension
@end
Есть ли какое-нибудь решение, чтобы сделать эту работу? Спасибо.
Я очистил кеш модуля и удалил модули, прежде чем устанавливать их снова несколько раз. Я также попытался обновить XCode и начать заново.
Если вы не можете использовать_frameworks! вы можете попробовать импортировать файл заголовка для класса MNNotificationServiceExtension
. ? #import <MixPanel/MPNotificationServiceExtension.h>
если вы не включили use_frameworks в Podfile как для целей хоста, так и для целей расширения. Затем вы можете импортировать файл заголовка в расширение NotificationService, как показано ниже, чтобы обойти эту ошибку компилятора, не найденную модулем.
к вашему сведению; Я смог импортировать модуль, просто включив параметр use_frameworks в файл pod.
Вы уже пытались удалить производные данные или установить модуль?