2017. 11. 14. 11:12
Azure Notification Hub 구성
Azure Notification Hub를 구성 작업 입니다.
Notification Hub 구성 작업을 위해 Google 에서 서비스하는 GCM 정보가 필요 하고 Apple 에서는 APN 인증서를 생성하여 Azure 에 등록 합니다
1. Google GCM 정보 생성
로그인 후 "+ 프로젝트 추가" 를 선택 합니다.
"프로젝트 이름" 을 입력하고 "프로젝트 만들기" 버튼을 클릭합니다.
프로젝트 생성 후 "Android 앱에 Firebase 추가" 를 선택합니다.
Azure에서 생성 한 Mobile App 다운 로드 소스에서 Android 앱 이름을 입력 합니다. Xamarin.Forms 으로로 다운 받은 소스를 Visual Studio 에서 열면 확인 할 수 있습니다.
해당 내용을 잘 읽고 숙지 합니다. "google-services.json" 파일을 다운로드 합니다.
아래 내용은 Xamarin.Forms 에서는 별도로 설정하지 않습니다. "완료" 버튼을 클릭합니다.
"Android 앱에 Firebase 추가" 완료 후 "Overview" 옆에 있는 설정 아이콘을 클릭하고 "프로젝트 설정"을 선택합니다.
아래 내용 중에서 "서버 키" 및 "발신자 ID"을 기록해 둡니다. 서버 키는 Azure Notification Hub에서 Google GCM을 연결할 때 등록 합니다. 그리고 발신자 ID는 Mobile App 개발 코드에 입력 합니다.
2. Apple APN인증서 생성
Apple 는 인증서 방식으로 Azure Notification Hub와 연동을 합니다. 그래서 APNS 인증서를 만드는 것이 중요 합니다. 다소 복잡해서 여러번 실패를 했습니다.
아래 사이트를 참조하여 생성하십시오.
- Sending push notifications to iOS with Azure Notification Hubs
- Xamarin.iOS – 인증서, 프로비전 등 개발을 위한 디바이스 설정
Mac 에서 "Keychain Access(키 체인 접근)" 을 실행 합니다. 그리고 메뉴에서 "키체인 접근 > 인증서 지원 > 인증 기관에서 인증서 요청 …" 를 클릭합니다.
인증서 지원 창에서 각 항목을 입력하고 "디스크에 저장됨" 을 선택하고 "계속" 버튼을 클릭합니다.
인증서 이름을 입력하고 "저장" 버튼을 클릭합니다. 해당이름으로 생성됩니다.
이제 Apple Developer center로 접속 하여 푸시 알림 App을 등록 하겠습니다.
https://developer.apple.com/ 로 이동하여 계정으로 로그인 합니다. 로그인 후 "Certificates, Identifiers & Profiles" 를 클릭합니다.
"identifiers > App IDs" 선택합니다. "+" 버튼을 클릭해서 새로 등록 합니다.
"App ID Description" Name에 적당한 이름을 입력 합니다. "App ID Suffix" 에서 "Explicit App ID" 를 선택하고 "Bundle ID" 에 Mobile App 프로젝트에서 "번들 식별자" 와 같은 이름으로 입력 합니다.
"App Services" 에서 "Push Notifications"을 선택 합니다. 그리고 "Continue" 버튼을 클릭합니다.
다음 화면에서 "Register" 버튼을 클릭합니다.
"Done" 버튼을 클릭합니다.
완료 후에 아래와 같은 화면이 나타나면 "Push Notifications" 설정을 위해 "Edit" 버튼을 클릭합니다.
아래 화면에서 "Development SSL Certificate" 에서 "Create Certificate…" 버튼을 클릭합니다.
다음 화면에서 "Continue" 버튼을 클릭합니다.
"Choose File…" 을 클릭해서 앞에서 만든 인증서를 찾아 등록 합니다.
등록 후 "Continue" 버튼을 클릭합니다.
Certificate 가 생성되면 "Download" 버튼을 클릭하여 다운로드 합니다.
다운로드 한 인증서 파일을 더블 클릭해서 "Keychain Access(키 체인 접근)" 에 등록 합니다.
등록 후 아래와 같이 확인 할 수 있습니다.
등록된 인증서를 아래와 같이 내보내기 합니다. 인증서 암호를 등록 후 내 보내기 합니다. 여기서 내보내기 한 인증서를 Azure Notification Hub 에 등록해서 연동 합니다.
이제 App에서 사용할 프로비저닝 프로파일을 만들겠습니다. 다시 Apple Development 센터로 이동 합니다.
"Provisioning Profiles" 에서 "Development" 를 선택하고 "+" 버튼을 클릭해서 새로운 프로파일을 생성합니다.
"iOS App Development" 를 선택 하고 "Continue" 버튼을 클릭합니다.
사용 할 App ID를 선택 후 "Continue" 버튼을 클릭합니다.
사용 할 개발 인증서를 선택 후 "Continue" 버튼을 클릭합니다.
사용 할 device 를 선택 후 "Continue" 버튼을 클릭합니다.
Profile Name을 입력하고 "Continue" 버튼을 클릭합니다.
생성된 Profile을 다운로드 하고 더블크릭해서 설치 합니다.
3. Azure Notification Hub 연동
3.1 Azure Notification Hub 구성
"+ New" 을 선택하고 "웹+모바일 > Notification Hub"를 선택합니다.
"알림 허브", "새 네임스페이스 만들기" 에 임의 이름을 적당히 입력 합니다. "위치" 는 일본 으로 합니다. 아직 한국에는 서비스 되지 않습니다. "가격 책정 계층" 은 기본으로 두고 "만들기" 버튼을 클릭합니다.
아래와 같이 Notification Hub 가 만들어 지면 푸시 연결을 위해 앞에서 만든 App Service를 선택합니다.
메뉴에서 "푸시"를 클릭합니다.
상단의 "연결" 을 클릭합니다.
연결에 사용 할 Notification hub 를 선택 합니다.
태그 항목을 적당히 입력 합니다. 그래야 "저장" 버튼이 활성화 됩니다. "저장" 버튼을 클릭합니다.
아래와 같이 푸시 연결이 완료 되었습니다.
3.2 Google GCM 연동
Azure에서 생성 한 Notification Hub 를 선택 하고 "알림 서비스"를 클릭합니다. 그리고 "Google(GCM)"을 클릭합니다.
"API 키" 에 위에서 확인 한 "서버 키"를 입력 후 "저장" 버튼을 클릭합니다.
3.3 Apple APN 연동
Azure Portal 로 이동하여 샹성 한 "알림 허브" 로 이동합니다.
"알림 서비스" 을 선택하고 "Apple(APNS)" 를 클릭합니다.
"인증서"를 선택합니다.
"파일 선택" 에서 폴더 아이콘을 클릭합니다.
앞에서 생성한 APNS 인증서를 선택 등록 합니다.
인증서 암호를 입력하고 "응용 프로그램 모드" 에서는 개발 중이기 때문에 "샌드박스" 를 선택하고 "저장" 버튼을 클릭합니다.
정상적으로 등록이 완료 되었습니다.
Azure Notification Hub 사용 설정이 완료 되었습니다.