Problem with DeviceActivitySchedule and DeviceActivityMonitor

Hey, I’m having some issues with DeviceActivitySchedule and DeviceActivityMonitor. I want to create a schedule that blocks apps (by family control) when it starts. However, even when the schedule is supposed to start on this iPhone, nothing happens, and no logs are being recorded

main target:

//  TestView_.swift
//  Sloth
//
//  Created by  on 11/01/2025.
//

import SwiftUI
import DeviceActivity
import FamilyControls
import ManagedSettings

struct TestView_: View {
    var body: some View {
        VStack(spacing: 20) {
            Text("Test DeviceActivityMonitor")
                .font(.title)
            
            Button("Start test mon") {
                let now = Date()
                let start = Calendar.current.date(byAdding: .minute, value: 2, to: now)!
                let end   = Calendar.current.date(byAdding: .minute, value: 20, to: now)!
                print("thd")
                
                DeviceScheduleTester().scheduleTestActivity(startDate: start, endDate: end)
            }
        }
        .padding()
    }
}
extension DeviceActivityName {
    static let daily = DeviceActivityName("daily")
}


DeviceActivityMonitor:
class DeviceScheduleTester {
    private let center = DeviceActivityCenter()
    
    func scheduleTestActivity(startDate: Date, endDate: Date) {
        
        
        let calendar = Calendar.current
        
        let startComponents = calendar.dateComponents([.hour, .minute], from: startDate)
        let endComponents   = calendar.dateComponents([.hour, .minute], from: endDate)
        
        // Tworzymy schedule
        let schedule = DeviceActivitySchedule(
            intervalStart: startComponents,
            intervalEnd: endComponents,
            repeats: true
        )
        
        do {
            try center.startMonitoring(.daily, during:schedule)
            print("startMonit /(\(schedule))")
        } catch {
            print("ghfgh")
        }
                    
    }
}

struct TestView__Previews: PreviewProvider {
    static var previews: some View {
        TestView_()
    }
}

DeviceActivityMonitor target:

//  BlockingAppsMonitorExtension
//
//  Created by  on 10/01/2025.

import DeviceActivity
import FamilyControls
import ManagedSettings
import os
let logger = Logger()

public class BlockingAppsMonitor: DeviceActivityMonitor {
    private let store = ManagedSettingsStore()


    public override func intervalDidStart(for activity: DeviceActivityName) {
        super.intervalDidStart(for: activity)
        print("Rozpoczęcie interwału blokowania \(activity.rawValue)")
        logger.info("intervalDidStart")
        startBlocking()
    }
    
    public override func intervalDidEnd(for activity: DeviceActivityName) {
        super.intervalDidEnd(for: activity)
        print("Zakończenie interwału blokowania \(activity.rawValue)")
        logger.info("intervalDidend")

        stopBlocking()
    }
    
    @discardableResult
    private func startBlocking() -> Int {
        print("number of unique apps")
        return 51
        
        store.shield.applicationCategories = .all()
        
//        return exceptions.count
    }
    
    private func stopBlocking() {
        store.shield.applicationCategories = nil
        store.shield.applications = nil
    }
}

INB4:

  1. In both files are added family controls
  2. Secent file is added in DeviceActivityMonitor target.

Apple answer please?

Problem with DeviceActivitySchedule and DeviceActivityMonitor
 
 
Q