2025.04 3주차
4월 13일
-
앱 스토어 등록
-
초기에 so-group으로 identifier를 이름지었는데, 추후 sogroup으로 바꾸면서 이름이 중복이라고 메세지 뜸. 그냥 생성된 sogroup identifier로 앱 정보 다 옮기고 등록
-
archive하고 앱 올리니까 warning 뜨긴 하는데 문제는 없는듯..?? 관련 링크
-
개인정보 관리, 지원 url, 저작권 등 앱스토어 등록하기 위한 요소들 작성
-
Expo에서 EAS를 빌드하지 않고는 개발 환경 분리를 할 수 없음.. 몇시간의 시도 끝에 구조적으로 불가능함을 꺠닫고 포기
-
EAS local build 하려했더니 계속 오류..
- sudo를 붙이면 apple login permission 없다 뜸
- 안붙이면 cocoapod 없다 뜸
- -> ?
-
npx expo prebuild
로는 google service info 파일을 여러개 가져서 여러 scheme target을 가질 수 없다ㅠㅠ
4월 18일
-
member id를 통해 멤버 조회 구현.. isLeader, isGuest 같은거 상태 다룬다고 약간 신경썼다
-
notification 보낼때 groups, members를 collection으로 뺐는데 그거 대응 안해줘서 발송이 안되는 문제 해결
-
알림 App Badge로 관리하는 기능 추가
-
useFocusEffect로
refetch()
수행시 무한 호출 발생해,useFocusOnEffect
훅 작성 -
대표 그룹 설정 기능 추가
-
최대 그룹 생성 제한 추가
-
알림에서 groupName을 가져오도록 수정 + 클릭시 'groupName 그룹으로 전환' 문구와 함께 currentGroup 전환하도록 수정
-
groupData
를map
으로 관리하는 로직 작성
const notifications: ClientNotification[] = [];
const groupDataMap = new Map<
ClientGroup['id'],
ClientGroup['groupName']
>();
for (const notificationDoc of querySnapshot.docs) {
const data = notificationDoc.data() as Notification;
if (!data.metadata.groupId) {
notifications.push(
this.convertToClientNotification(notificationDoc.id, data),
);
continue;
}
if (!groupDataMap.has(data.metadata.groupId)) {
const groupRef = doc(database, 'groups', data.metadata.groupId);
const groupDoc = await getDoc(groupRef);
if (groupDoc.exists) {
const groupData = groupDoc.data() as Group;
groupDataMap.set(data.metadata.groupId, groupData.groupName);
}
}
const clientNotificationData = {
...data,
metadata: {
...data.metadata,
groupName: groupDataMap.get(data.metadata.groupId),
},
};
notifications.push(
this.convertToClientNotification(
notificationDoc.id,
clientNotificationData,
),
);
}