Как включить Audiokit 4 в новый проект xcode 11 и swift 5.1?

Недавно я попытался включить Audiokit 4 в новый проект с использованием Xcode 11 и swift 5.1, но я получаю сообщение об ошибке No such module Audiokit, ближайшим к Audiokit является CoreAudiokit, следуя инструкциям в (https://github.com/audiokit/AudioKit/blob/master/Frameworks/README.md).

Вот шаги, которые я выполнил:

1) Создайте новый проект с одним представлением в xcode11

2) Настройки проекта, вкладка Общие, Frameworks / Libraries добавлен пункт Audiokit.framework

3) В файле ContentView.swift: import Audiokit или import AudioKit

введите здесь описание изображения

Я дважды проверил примечания к выпуску, и в них четко говорится о поддержке Xcode 11 (https://github.com/audiokit/AudioKit/releases)

Наконец, я попытался скомпилировать его сам, но та же проблема, что и указанная выше, модуль не найден.

git clone https://github.com/audiokit/AudioKit.git

./build_frameworks.sh

введите здесь описание изображения

Я вижу фреймворк AudioKit под фреймворками:

введите здесь описание изображения

Другие флаги компоновщика также устанавливаются в соответствии с инструкциями:

введите здесь описание изображения

Обновлено до Xcode 11.4 (последняя версия), та же проблема.

Также протестировано перемещение каталога audiokit, та же проблема, похоже, ничего не помогает, поэтому не уверен, что делают другие люди, учитывая комментарии в github, которые, похоже, используют его с Xcode 11.4 ...

введите здесь описание изображения


person punkbit    schedule 14.04.2020    source источник


Ответы (2)


Попробуйте изменить настройку «Встраивать и подписывать» для фреймворков на «Не встраивать». Созданные фреймворки статичны, и, хотя они должны быть связаны в вашем проекте, их не следует встраивать, поскольку они не могут быть загружены динамически.

person megastep    schedule 15.04.2020

После нескольких часов попыток я нашел решение! Просто имейте в виду, прежде чем продолжить, что я обновил до последней (на момент написания) версии Xcode 11.4 и Swift 5.2.

Я переместил файл из Frameworks / AudioKit.framework в проект:

введите здесь описание изображения

Затем, выбирая AudioKit.framework в инспекторе отображения / скрытия, я изменяю местоположение на relative to project и нацеливаюсь на текущее имя проекта следующим образом (имя проекта изменилось на test по сравнению с более ранней или исходной версией публикации):

введите здесь описание изображения

Замечания: Я также протестировал, изменив настройки сборки, удалил все подкаталоги, чтобы исключить расширения при рекурсивном поиске; и добавьте относительный путь, по которому можно найти audiokit.framework, в пути поиска фреймворка. Автозаполнение работает, но я все равно получаю сообщение об ошибке Нет такого модуля AudioKit. Итак, пока единственный вариант, который работает, - это предыдущий комментарий.

--------------------- несколько дней спустя ------------------------

Просто взглянул на это и решил обновить отчет здесь.

К сожалению, вышеуказанное исправление устраняет ошибку «не найдено», но приложение вылетает. Использование cocoapods для установки audiokit также не вызывает ошибки «модуль не найден».

-------------------- недели спустя --------------------

Используйте cocoapods, чтобы включить звук в ваш проект, как указано в последний раз, а также следующим образом:

platform :ios, '11.0'

target 'AKRecorder' do
  use_frameworks!

  pod 'AudioKit', '~> 4.9.5'

end
person punkbit    schedule 15.04.2020
comment
Я следовал инструкциям, как и вы, и у меня это не работает в новом проекте XCode 11.5. - person SouthernYankee65; 21.06.2020
comment
Вы пробовали способ какао-стручков? Сегодня я фактически обновился до 11.5, но еще не начал новый проект Audiokit с. Текущий проект работает, хотя - person punkbit; 22.06.2020
comment
Я пробовал использовать для этого CocoaPods, но безуспешно. Я обратился к автору MP3Gain Express, чтобы узнать, есть ли способ реализовать его программное обеспечение в виде библиотеки, но он рекомендовал только вызвать CLI-вызов программы ACCGain. Я просто хочу нормализовать свою музыку в памяти до определенного уровня, не изменяя фактический файл перед воспроизведением. Эта библиотека pyDub удобна и проста в использовании. Хотелось бы, чтобы у Свифта было что-то подобное. - person SouthernYankee65; 23.06.2020
comment
Опубликованные мной инструкции должны работать, но это до XCode 11.5; Я еще не тестировал добавление AudioKit в 11.5. Вместо этого вы можете собрать исходный код, но у меня это не сработало, мне пришлось использовать cocoapods. Другой вариант, который вы можете использовать вместо этого, - FFMPEG и запустить функцию нормализации или изменить коэффициент усиления (github.com/sunlubo/ SwiftFFmpeg); Библиотека является оболочкой для FFMPEG, поэтому проверьте исходную документацию, чтобы узнать, что делать. Я думаю, это лучший вариант для тебя. - person punkbit; 23.06.2020