Swiftで画面を無理やり回転させる

iOS16以上と16以下で回転させる処理が異なっているようです

let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene
if #available(iOS 16.0, *) {
    windowScene?.requestGeometryUpdate(.iOS(interfaceOrientations: .portrait))
} else {
    UIDevice.current.setValue(UIInterfaceOrientation.portrait.rawValue, forKey: "orientation")
}

参考文献

is Force View Controller Orientation working in iOS 16 beta