タグ: Vision OS

  • Vision OS 音量をコントロールする

    Vision OS 音量をコントロールする

    ❓ これは何

    VisionOS での音(AudioPlaybackController)を Slider を使って音量をコントロールする方法についてです。

    🪴 環境

    • sonoma 14.5(23F79)
    • Apple M1
    • 16GB

    🛠️ やり方

    今回は自然の音を再生するアプリを例に作っていきます。

    NatureEntity.swift

    import SwiftUI
    import RealityKit
    
    class NatureEntity: Entity {
        private var fireAudioController: AudioPlaybackController?
        
        @MainActor required init() {
            super.init()
        }
        
        init(fireAudio: AudioPlaybackController?, rainAudio: AudioPlaybackController?, insectAudio: AudioPlaybackController?) {
            super.init()
            self.fireAudioController = fireAudio
        }
        
        func updateGlobalVolume(_ volume: Double) {
            fireAudioController?.gain = volume
        }
    }
    

    続いて、Sliderでの操作部分の作成です。

    NatureControls.swift

    import SwiftUI
    
    struct NatureControls: View {
        @Binding var globalVolume: Float
        
        var body: some View {
            VStack {
                Text("Global Volume")
                Slider(value: $globalVolume, in: 0...1)
                    .padding()
            }
        }
    }

    最後に、これらをまとめて表示する部分です。

    SoundView.swift

    import SwiftUI
    import RealityKit
    
    struct SoundView: View {
        @State private var globalVolume: Double = -10
        @State private var natureEntity: NatureEntity?
    
        var body: some View {
            ZStack {
                RealityView { content in
                    let natureEntity = NatureEntity(fireAudio: nil) // 実際のオーディオコントローラーを渡す
                    content.add(natureEntity)
                    self.natureEntity = natureEntity
                }
                
                NatureControls(globalVolume: $globalVolume)
                    .onChange(of: globalVolume) { volume in
                        natureEntity?.updateGlobalVolume(volume)
                    }
                    .padding()
                    .background(Color.black.opacity(0.7))
                    .cornerRadius(10)
                    .padding()
            }
        }
    }

    これで、音量調整のできる機能が備わったと思います。

    ポイントは fireAudioController?.gain = volume という部分で、
    音量調整は gain で行うということです。Doubleで渡してあげたところうまくいきました。

  • 【iOS, mac, vision os】Apple Store に申請する

    【iOS, mac, vision os】Apple Store に申請する

    ❓ これは何

    iOS, mac os, VisionOS などをストア申請するまでの手順の解説記事です。

    この記事は2024年7月現在の内容です。

    📗 手順

    🛠️ Xcode での操作

    xcode を開いて、Product から Archive を選択します。

    ポップアップが出てくるので、App Store Connect を選択します。

    あとは基本的にOKを押して進めていけば大丈夫です。

    💻 App Store Connect での操作

    https://appstoreconnect.apple.com/apps にアクセスすると、先ほどディストリビュートしたAppがあるはずです。

    スクリーンショットを追加しましょう。
    VisionOSの場合は3840*2160px である必要があります。
    事前に整えておきましょう。

    解像度の変更方法はこちらをご覧ください。

    • プロモーション用テキスト
    • 概要
    • キーワード
    • サポートURL

    を入力します。

    ビルドを追加しましょう。先ほどディストリビュートしたので選択できるはずです。
    コンプライアンスの部分も設定してください。クリックして次へを選択していけば基本的に大丈夫です。(フランスへの配信は別途捜査が必要)

    ログインが必要なAppの場合は App Reviewに関する情報からサインイン情報を追加します。
    不要な場合はチェックを外してください。

    できたらページ右上のボタンから保存を押しましょう。

    一般

    一般タグに切り替えて、名前とサブタイトルを追加します。

    一般情報の欄の「コンテンツ配信権」「年齢制限」「カテゴリ」をそれぞれ選択してください。

    できたらページ右上のボタンから保存を押しましょう。

    アプリのプライバシー

    「アプリのプライバシー」タブに移動します。
    「プライバシーポリシーURL」「プロダクトページのプレビュー」をそれぞれ設定してください。
    プライバシーポリシーのページがない場合はhttps://studio.design/などでサクッと制作すると良いでしょう。

    できたらページ右上の「公開」ボタンを押しましょう。

    価格および配信状況

    価格を選択してください。
    有料アプリの場合は別途設定が必要になるはずです。(規約に同意の必要がある)

    「アプリの配信状況」から配信する国を設定してください。

    アプリの提出

    全てできたら、「配信用に追加」ボタンを押して、「App Review」に提出しましょう。

    終わりに

    以上です。お疲れ様でした。

    記事をご覧いただきありがとうございます!!!

Home
About
Blog
Works
Contact