Ios 연락처 가져오기가 잘 작동하지 않습니다

이 글의 성격은 무엇인가요?

질문 / 문제 해결

내용을 설명해주세요

연락처 가져오기 개발중에 도저히 해결이 안되어서 문의드립니다.

안드로이드는 잘 가져와지는데 IOS에서만 일관되게 아래와 같이 에러를 발생해요.

“message”:“작업을 완료할 수 없습니다.(TossFoundationBase.ContactManagerError 오류 0.)”
“code”:“UNKNOWN”

SDK는 1.5.0 부터 오늘 올라온 1.9.1까지 다 해봤습니다.
QR로 테스트 했고 토스버전은 5.244.0 입니다.

아래는 참고소스이고..안드로이드는 아무 문제 없는데 IOS만 그러네요
size도 줄여보고 query도 넣고 빼고 다해도 위 에러에서 벗어나지 않습니다.
권한쪽은 문제 없이 잘 요청되고 통과됩니다.

토스가 설치된 IOS 디바이스거 지금 이거 하나뿐이라 해결하는데 어려움이 크네요
도움 부탁드립니다.


  // 연락처 가져오기
  FETCH_CONTACTS: async (webViewRef, msg) => {
    console.log('[앱] (요청) 연락처 가져오기:', JSON.stringify(msg, null, 2));
    try {
      const result = await fetchContacts({
        size: msg.size || 10,
        offset: msg.offset || 0,
        query: msg.query || {},
      });
      console.log('[앱] (실행결과) 연락처 가져오기 성공:', JSON.stringify(result, null, 2));
    } catch (err) {
      const errorResult = {
        step: 'FETCH_CONTACTS',
        message: (typeof err?.message === 'string') ? err.message : (err?.message?.message || '연락처 실패'),
        code: err?.code ?? err?.message?.code,
      };
      console.error('[앱] (실행결과) 연락처 가져오기 실패:', JSON.stringify(errorResult, null, 2));
    }
  },

안녕하세요 @Albert:slight_smile: , 오랜만에 인사드리네요.
토스앱 5.245.0 버전으로 테스트 해봐주실 수 있을까요 ?
이전버전에서는 토스앱 자체의 연락처 권한이 거부되어있을경우 그냥 거부로 끝나버려서 해당 부분 조치했다고 합니다.

추가로 토스앱 자체에 연락처 권한이 허용되어 있는지 확인 부탁드려요!

@Dylan 님 안녕하세요!
개발하느라…글을 잘 못올렸습니다. ㅎㅎ

방금 토스 5.245.0 에서 테스트해봤는데..여전히 문제가 발생합니다.
시스템 레벨에서 권한하고 토스 레벨권한(소프트)하고 4가지 케이스를 해보니

===
1 시스템 레벨 차단, 소프트 차단 => 재요청 불가

2 시스템 레벨 허용, 소프트 차단 => denied 떨어짐, 정상

3 시스템 레벨 차단, 소프트 허용 => allow 떨어짐, TossFoundationBase.ContactManagerError 발생

4 시스템 레벨 허용, 소프트 허용 => allow 떨어짐, TossFoundationBase.ContactManagerError 발생

===

이렇게 나오는데…

일단 시스템 레벨 허용하면 토스 자체의 연락처로 송금하기에 연락처는 잘 불러와집니다.
음…어떻게 더 해봐야할가요? 안드로이드는 계속 잘 됩니다.

다시 한번 확인해보겠습니다 :cry:
제 테스트 앱에서는 TossFoundationBase.ContactManagerError 요 에러가 발생되지 않아서,
특정 상황에서 발생되는건지 확인이 필요할 것 같아요.

네 감사합니다. 저희가 지금 개발이 완료되어 통합QA중에 이게 해결 안되어서..일단은 ios에서만 연락처 기능 숨기고 검수요청한 상태입니다.

이게 저희서비스에서 중요기능중 하나거든요. 바쁘시겠지만 빠른확인 부탁드리겠습니다.(__)

@Albert 님, 해당 이슈 확인하였고
차주 버전에 심사 후 릴리스 될 예정입니다 :cry:

@Dylan

네 빠른 확인 감사드립니다.
IOS 새버전 5.245.1? 나오면 확인해보겠습니다!

@Dylan 님 안녕하세요
업데이트된 토스 5.246.0 버전에서 정상 작동 확인하였습니다.
권한 거부시 osPermissionDenied code 추가된것도 확인했고요.

프론트에서는 버전/분기 체크해서 적용해보니 잘 됩니다.

다만 한가지 아이폰에서 연락처 권한을 일부만 제공할 수 있는데, 이경우에도 권한없음으로 판단하더라고요.
이건 백로그에 두셨다가 향후 개선되면 좋을거 같습니다. 이런 케이스는 많지 않아서 지금도 괜찮습니다.

감사합니다~!

1개의 좋아요