wakapro
@wakapro

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

SwiftUIでAudioKit AKMetronomeがうまく動作しない

解決したいこと

xcodeでiphoneアプリの開発をしている初心者です。
とあるアプリの機能にシンプルなメトロノームをつけようと思っています。

cocoapodを用いてAudioKit ver4.10.1を導入し、AKMetronome機能を試してみたところ、ビルドには成功するのですが、クラッシュしてしまいプレビューが表示されません。
エラーが出ている訳ではないので理由がわからず、ご助言頂けるとありがたいです。

xcode ver11.7

発生している問題・エラー

ビルドには成功するのですが、クラッシュしてしまいプレビューが表示されません。

該当するソースコード

import SwiftUI
import AudioKit

struct ContentView: View {
    var body: some View {

        let metronome = AKMetronome()

        metronome.callback = {print("call back")}
        metronome.tempo = 100.0
        metronome.subdivision = 6
        metronome.frequency1 = 2000
        metronome.frequency2 = 1000
        AudioKit.output = metronome
        do {try AudioKit.start()} catch {print ("error")}
        metronome.start()

        return VStack {

            Button(action: {
                metronome.reset()
                metronome.restart()
                 }) {
                      Text("Start")
                       }

            Button(action: {
                metronome.stop()
                metronome.reset()
                   }) {
                       Text("Stop")
                       }
        }
     }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

自分で試したこと

AudioKitのverを正式な最新版(4.9.5)にしてみたり、UIKitなどでやってみましたが、いずれもうまく行きませんでした。

0

1Answer

Comments

  1. @wakapro

    Questioner

    何の値をreturnで返せばいいのかわからず、迷っております汗
    とりあえずボタン以外のメトロノーム機能を別にfuncとしてContentViewの外に出したらうまくは行きましたが、今度はボタンを2回押すとクラッシュしてしまうようになってしまいました汗
  2. それは大層困りましたね(。•́-ก̀。)
  3. @wakapro

    Questioner

    returnをVStackの前に付けてとりあえずビルドはできましたが、クラッシュしてしまいます。

Your answer might help someone💌