iOS 클라이언트 푸시 알림 구현 가이드 | Swift
11 분
swift에서 클라이언트 측으로 푸시 알림 보내기 소개 이 섹션에서는 back4app을 사용하여 ios 클라이언트를 통해 푸시 알림을 보내는 방법을 설명합니다 이것이 어떻게 보일지입니다 언제든지 이 튜토리얼로 구축된 전체 프로젝트에 접근할 수 있습니다 github 저장소 https //github com/templates back4app/ios install sdk 전제 조건 이 빠른 시작을 완료하려면 다음이 필요합니다 xcode https //developer apple com/xcode/ back4app에서 생성된 앱 다음의 새 parse 앱 튜토리얼 https //www back4app com/docs/get started/new parse app 을 따라 back4app에서 parse 앱을 만드는 방법을 배우세요 back4app에 연결된 ios 앱 참고 다음의 parse sdk (swift) 설치 튜토리얼 https //www back4app com/docs/ios/parse swift sdk 을 따라 back4app에 연결된 xcode 프로젝트를 만드세요 back4app 푸시 알림을 통해 설정된 ios 앱 ios 10 이상을 실행하는 ios 기기, 아이폰 또는 아이패드 유료 apple 개발자 계정 앞으로 우리는 당신이 모든 단계를 완료했다고 가정할 것입니다 back4app 푸시 알림 대시보드 튜토리얼 https //www back4app com/docs/ios/push notifications/best ios push notification service , 이 튜토리얼로 구축된 ios 프로젝트를 사용하더라도 말입니다 github 리포지토리 https //github com/mpc20001/ios objc push cloud code 기본 푸시 알림이 작동하고 관리 콘솔을 통해 푸시를 보낼 수 있어야 합니다 1 클라이언트 푸시 활성화 back4app 웹사이트 https //www back4app com/ 로그인하고, 앱을 찾아서 서버 설정을 클릭하세요 “코어 설정” 블록을 찾아서 \<font color="#2166ae">설정\</font> “코어 설정” 블록은 다음과 같습니다 3\ 페이지 끝으로 스크롤하여 \<font color="#2166ae">세부정보 편집\</font> 버튼을 클릭하세요, 아래와 같이 4\ 편집 페이지 끝에 \<font color="#2166ae">클라이언트에서 푸시 알림 허용\</font> 이라는 체크박스가 보일 것입니다 그 박스를 선택하고 \<font color="#2166ae">저장\</font> 버튼을 클릭하세요, 아래와 같이 2 장치를 뉴스 채널에 구독하기 당신이 back4app 대시보드를 통한 푸시 알림 튜토리얼 https //www back4app com/docs/ios/push notifications/best ios push notification service , 을 완료했다고 가정하면, 해당 튜토리얼에서 완료된 프로젝트를 수정하거나 github 저장소 https //github com/back4app/ios objc push 에서 다운로드하려고 할 것입니다 먼저, 설치 객체에 채널을 추가할 것입니다 이는 \<font color="#2166ae">createinstallationonparse\</font> 메서드를 변경하여 수행할 것입니다 프로젝트의 \<font color="#2166ae">appdelegate swift\</font> 파일을 열고 다음 코드 줄을 추가하세요 ‘ installation setobject(\[”news1”] forkey ”channels”]; ’ 이는 설치 객체의 채널 배열을 \<font color="#2166ae">news\</font> 라는 하나의 채널을 포함하도록 설정할 것입니다 appdelegate m 1 func createinstallationonparse(devicetokendata\ data){ 2 if let installation = pfinstallation current(){ 3 installation setdevicetokenfrom(devicetokendata) 4 installation setobject(\["news"], forkey "channels") 5 installation saveinbackground { 6 (success bool, error error?) in 7 if (success) { 8 print("you have successfully saved your push installation to back4app!") 9 } else { 10 if let myerror = error{ 11 print("error saving parse installation \\(myerror localizeddescription)") 12 }else{ 13 print("uknown error") 14 } 15 } 16 } 17 } 18 } 이렇게 하면 \<font color="#2166ae">news\</font> 라는 채널에 구독한 모든 사람에게 메시지를 보낼 수 있습니다 당신의 \<font color="#2166ae">didregisterforremotenotificationswithdevicetoken\</font> 버전이 아래 코드와 동일한지 확인하세요 2\ 다음으로, 앱이 시작될 때마다 푸시를 전송하는 메서드를 앱 델리게이트에 추가하겠습니다 \<font color="#2166ae">뉴스\</font> 채널에 프로젝트의 \<font color="#2166ae">appdelegate swift\</font> 파일을 열고 아래 메서드를 추가한 후, 앱이 시작될 때마다 이 메서드가 호출되도록 \<font color="#2166ae">didfinishlaunchingwithoptions\</font> 에서 호출하세요 appdelegate m 1 func application( application uiapplication, didfinishlaunchingwithoptions launchoptions \[uiapplicationlaunchoptionskey any]?) > bool { 2 let configuration = parseclientconfiguration { 3 $0 applicationid = "paste your application id here" 4 $0 clientkey = "paste your client id here" 5 $0 server = "https //parseapi back4app com" 6 } 7 parse initialize(with configuration) 8 9 unusernotificationcenter current() requestauthorization(options \[ alert, sound, badge, carplay ]) { 10 (granted, error) in 11 print("permission granted \\(granted)") 12 guard granted else { return } 13 self getnotificationsettings() 14 } 15 sendpushonlaunch() 16 return true 17 } 18 func sendpushonlaunch(){ 19 let push = pfpush() 20 push setchannel("news") 21 push setmessage("push from device") 22 push sendinbackground() 23 } 3 클라이언트를 통해 자신에게 타겟 푸시 알림을 보낼 수 있는지 테스트하기 잠금 화면이 켜진 상태에서 물리적 장치를 닫고 시뮬레이터에서 앱을 엽니다 앱이 시뮬레이터에서 열리면 푸시 알림이 기기의 잠금 화면에 나타나는 것을 볼 수 있어야 합니다 최종 생각 클라이언트에서 푸시를 보내는 방법에 대한 확고한 이해가 있어야 합니다 연령, 위치 또는 객체 id와 같은 속성을 기반으로 사용자를 타겟팅하기 위해 pfquery와 결합할 수 있습니다 클라이언트 푸시가 활성화되어 있으면 악용될 수 있습니다 그리고 모든 클라이언트 푸시를 제한하지 않고는 끌 수 없습니다 cloud code에서 푸시를 선택하는 것이 권장되지만 , 여전히 아는 것이 좋습니다 완료되었습니다! 이 단계에서 back4app을 통해 클라이언트 푸시를 사용하여 푸시 알림을 보낼 수 있습니다!