💡 Xcode 13 버전부터 Info.plist 파일이 사라졌습니다. 파일로 관리하는것이 아닌 Info - Target 탭 내에서 이를 변경할 수 있습니다.
💡Info.plist 란?
- Info.plist 파일은 iOS 앱의 설정 정보를 포함하는 파일입니다. 이 파일은 앱의 기본 정보, 권한 및 기능, 앱 아이콘 및 스플래시 화면, 사용자 정의 URL 스키마 등을 지정하는 데 사용됩니다. Info.plist 파일은 Xcode에서 편집할 수 있으며, 앱 번들의 루트 디렉터리에 저장됩니다.
A message that tells the user why the app is requesting access to the device’s camera.
마이크
Privacy - Microphone Usage Description
String
A message that tells the user why the app is requesting access to the device’s microphone.
[더 알아보기] 💡 Custom iOS Target Properties - iOS 앱의 Info.plist 파일에 추가적인 속성을 정의할 수 있도록 합니다. Key : 속성의 이름을 작성합니다. (예: NSCameraUsageDescription) Type : 속성의 타입을 선택합니다. (예: String) Value : 속성에 대한 값 또는 설명을 작성합니다. - 이 속성을 사용하면 앱에서 권한을 요청하거나, 앱에서 사용하는 기능에 대한 설명을 제공할 수 있습니다.
structSessionView: View {
@StateObject var permissionManager = PermissionManager()
@Binding var userId : String
@Binding var roomNo : String
func viewDidLoad(){
}
var body: some View {
VStack {
ifpermissionManager.permissionGranted {
//show a conditional view only if you have permission
}
Text("SessionView Page입니다.")
Text("사용자 아이디 : \\(userId) \\n 방 번호 : \\(roomNo) ")
.frame(width: 300, height: 200)
}
.onReceive(permissionManager.$permissionGranted, perform: { (granted) inifgranted {
//show image picker controller
}
})
.onAppear {
permissionManager.requestCameraPermission()
permissionManager.requestAudioPermission()
}
}
}
[더 알아보기]
💡 onAppear() 란? onAppear 메소드는 View가 화면에 나타날 때 호출됩니다. 이 메소드를 사용하여 View가 화면에 표시되기 전에 초기화 작업을 수행하거나 데이터를 로드할 수 있습니다.
💡 onReceive() 란? onReceive 메소드는 SwiftUI에서 ObservableObject를 사용하여 데이터를 관찰하는 데 사용됩니다. ObservableObject를 사용하면 데이터 변경을 알림받아 UI를 업데이트할 수 있습니다. onReceive 메소드는 이러한 데이터 변경 알림을 수신하기 위해 사용됩니다.