반응형
카카오 내비게이션 호출하여
내비게이션이 설치되어 있으면 실행,
설치되어 있지않으면 설치 페이지 이동
Info.plist
LSApplicationQueriesSchemes 추가 및 Item에 kakaonavi-sdk 추가
pod 추가
pod 'KakaoSDKCommon' # 필수 요소를 담은 공통 모듈
pod 'KakaoSDKNavi' # 카카오내비
pod 'KakaoSDKAuth' # 사용자 인증
카카오 SDK 초기화
import SwiftUI
import KakaoSDKCommon
import KakaoSDKAuth
@main
struct kakao_swiftuiApp: App {
init() {
KakaoSDK.initSDK(appKey: "NATIVE_APP_KEY")
}
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
버튼 생성 및 클릭 이벤트 설정
import KakaoSDKNavi
import KakaoSDKCommon
struct ContentView: View {
var body: some View {
VStack {
Button(action: {
buttonClicked()
}) {
Text("카카오")
.padding()
.foregroundColor(.white)
.background(Color.blue)
.cornerRadius(10)
}
}
}
func buttonClicked() {
let destination = NaviLocation(name: "카카오판교오피스", x: "321286", y: "533707")
let viaList = [NaviLocation(name: "판교역 1번출구", x: "321525", y: "532951")]
guard let navigateUrl = NaviApi.shared.navigateUrl(destination: destination, viaList: viaList) else {
return
}
if UIApplication.shared.canOpenURL(navigateUrl) {
UIApplication.shared.open(navigateUrl, options: [:], completionHandler: nil)
} else {
UIApplication.shared.open(NaviApi.webNaviInstallUrl, options: [:], completionHandler: nil)
}
}
}
https://developers.kakao.com/docs/latest/ko/kakaonavi/ios
반응형
'개발 > SWIFT 아이폰' 카테고리의 다른 글
SwiftUI NavigationLink를 사용하여 뷰 전환 (0) | 2023.07.19 |
---|---|
SwiftUI 네이버 지도 호출 및 경로 안내 (0) | 2023.07.18 |
SwiftUI Info.plist 사용하기 (0) | 2023.07.18 |
SwiftUI Sheet, fullScreenCover로 다른 화면 띄우기, 데이터 전달 (0) | 2023.07.17 |
SwiftUI 이미지 클릭시 다른 이미지로 변경 (0) | 2023.07.17 |