https://github.com/firebase/quickstart-android/tree/master/messaging에서 제공되는 Firebase Cloud Messaging 빠른 시작 샘플 프로젝트를 구현 중입니다.이를 내 앱에 통합합니다.Firebase Cloud Messaging 샘플 프로젝트의 "if (Build.VERSION.SDK_INT> = Build.VERSION_CODES.O) {"조건의 목적은 무엇입니까?
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
// Create channel to show notifications.
String channelId = getString(R.string.default_notification_channel_id);
String channelName = getString(R.string.default_notification_channel_name);
NotificationManager notificationManager =
getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(new NotificationChannel(channelId,
channelName, NotificationManager.IMPORTANCE_LOW));
}
조건 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){}
를 사용하는 목적은 무엇인가 : https://github.com/firebase/quickstart-android/blob/master/messaging/app/src/main/java/com/google/firebase/quickstart/fcm/MainActivity.java에서 나는 다음과 같은 코드 블록을 볼 수 있습니까? 내가 이해 한대로 Build.VERSION.SDK_INT
은 앱이 설치된 기기의 API 레벨을 반환하고 Build.VERSION_CODES.O
은 app/build.gradle 파일에서 컴파일 할 API 레벨로 정의합니다 (예 : compileSdkVersion 26
). 컴파일 할 SDK 버전을 정의하는 데 사용하는 compileSdkVersion
보다 낮은 API 레벨을 가진 장치가있는 경우 알림을 표시 할 채널을 만드는 코드를 실행하지 않도록 코드에서 요청합니까? 나는 그 상태의 목적을 이해하지 못하고있다. 그런데 내 build.gradle
파일에 compileSdkVersion 26
을 사용하고 있기 때문에 API 레벨이 23이고 기대되는 전화로 테스트 중이므로 전체 코드 블록이 실행되고 있지 않습니다. 이 코드의 목적을 분명히하는 데 도움을 주시면 감사하겠습니다. 물론 제가 작성한 코드는 아닙니다. 나는 https://github.com/firebase/quickstart-android/blob/master/messaging/app/src/main/java/com/google/firebase/quickstart/fcm/MainActivity.java에서 가져 갔지만, 나는 그것을 이해하려고 노력하고있다. 고맙습니다.