콘텐츠로 건너뛰기

React Native용 메시지 인박스 설정

Pushwoosh React Native 플러그인은 푸시 알림에 사용되는 동일한 pushwoosh-react-native-plugin 패키지의 일부로 메시지 인박스(“종 모양 아이콘” 앱 인박스)를 제공합니다. 추가 설치 단계는 필요하지 않습니다.

전제 조건

Anchor link to

인박스 표시

Anchor link to
import Pushwoosh from 'pushwoosh-react-native-plugin';
Pushwoosh.presentInboxUI();

presentInboxUI()는 React 뷰 트리 외부에서 SDK의 기본 모양을 가진 네이티브 화면(iOS에서는 뷰 컨트롤러, Android에서는 액티비티)을 표시합니다.

스타일 사용자 지정

Anchor link to

스타일 객체를 presentInboxUI()에 전달합니다. 색상 값은 React Native의 processColor()를 거쳐야 합니다. 모든 키는 선택 사항입니다:

키사용자 지정 항목
dateFormat날짜 형식
defaultImageIcon이미지가 없는 메시지 옆의 기본 아이콘
unreadImage읽지 않은 메시지 표시 (iOS 전용)
listErrorImage목록 로딩 실패 시 표시
listEmptyImage목록에 메시지가 없을 때 표시
listErrorMessage오류 텍스트 (현지화되지 않음)
listEmptyMessage빈 목록 텍스트 (현지화되지 않음)
defaultTextColor기본 텍스트 색상 (iOS 전용)
accentColor강조 색상
backgroundColor배경 색상
highlightColor선택 색상
titleColor메시지 제목 색상
readTitleColor읽은 메시지의 제목 색상 (Android 전용)
descriptionColor메시지 설명 색상
readDescriptionColor읽은 메시지의 설명 색상 (Android 전용)
dateColor메시지 날짜 색상
readDateColor읽은 메시지의 날짜 색상 (Android 전용)
dividerColor구분선 색상
barBackgroundColor제목 표시줄의 배경 색상
barAccentColor제목 표시줄의 뒤로가기 버튼 색상
barTextColor제목 표시줄의 텍스트 색상
import Pushwoosh from 'pushwoosh-react-native-plugin';
import { processColor } from 'react-native';
Pushwoosh.presentInboxUI({
dateFormat: "dd.MM.yyyy",
accentColor: processColor('#3498db'),
backgroundColor: processColor('#ffffff'),
titleColor: processColor('#333333'),
descriptionColor: processColor('#666666'),
listEmptyMessage: "No messages yet"
});

프로그래밍 방식으로 메시지 관리

Anchor link to

내장된 화면을 열지 않고 메시지 목록, 읽은 횟수를 로드하고 개별 메시지에 대한 작업을 수행합니다. 이는 사용자 지정 인박스 UI나 읽지 않음 배지에 유용합니다:

Pushwoosh.loadMessages(
(messages) => {
messages.forEach((msg) => {
console.log(msg.title + ": " + msg.message);
});
},
(error) => console.error("Failed to load: " + error)
);
Pushwoosh.unreadMessagesCount((count) => {
console.log("Unread messages: " + count);
});
Pushwoosh.messagesCount((count) => { /* 총 메시지 수 */ });
Pushwoosh.messagesWithNoActionPerformedCount((count) => { /* 아직 조치되지 않음 */ });
Pushwoosh.readMessage(messageId);
Pushwoosh.deleteMessage(messageId);
Pushwoosh.performAction(messageId); // 메시지의 기본 작업(예: URL 열기)을 실행합니다