꾸준히 안타치기

[iOS] 글자줍기 채팅기능추가 업데이트(2022.09.05) / 리젝사유 본문

공지사항

[iOS] 글자줍기 채팅기능추가 업데이트(2022.09.05) / 리젝사유

글자줍기 2022. 9. 6. 17:08
반응형

글자줍기 1.0.7 업데이트

다중채팅 기능 (socket.io)

- Node js, express, socket.io, nodemon

- 실시간 채팅(이미지,텍스트 전송)

- 채팅유저 신고기능

- 단어필터링

- 접속자 리스트표기

더보기

https://bluedogs.tistory.com/405?category=991247  Social Network + 채팅

 

[iOS] 글자줍기 앱스토어 런칭!(2022.06.19)

글자줍기는 한국에서 흔히 볼 수 있는 길거리의 간판과 글자들을 아카이빙하고 공유하는 앱입니다. 평소에 관심있는 레터링들을 인스타에 업로드하다가 @typo.jupjup, 글줍의 유저들이 모두 함께

bluedogs.tistory.com

▶ 글자줍기 사용기술 

  • Language: Swift, php, Node.js
  • UI: UIKit, Autolayout
  • Libary: Alamofire, BSImagePicker, Kingfisher,IQKeyboardManagerSwift, NaverMapAPI, socket.io
  • Server : AWS / Amazon EC2 - OS: Ubuntu 18.04.5
  • Database : Mysql
  • Protocol : HTTP

▶ 글자줍기 주요기능

스플래시 화면

소개페이지

- 글자줍기에 대한 대략적인 소개와 운영중인 인스타그램페이지로 이동할수 있는 버튼제공

 

로그인, 로그아웃, 회원가입, 아이디 중복확인, 탈퇴

- 회원가입과 로그인 로그아웃

- 아이디 중복확인

- 로그인시 언제든 본인이 올린 글들 조회 가능

- 로그인 상태에선 메인으로 자동이동

- 탈퇴한 아이디로는 가입과 로그인이 불가

 

게시글 작성, 다중이미지 업로드, 수정, 삭제 , 현재위치표기 , 검색,  신고

- 게시글 작성시 현재 위치를 가져옴

- 다중이미지 업로드 가능, 현재 단일 이미지 업로드로 변경

- 이미지 확대해보기 

- 게시글 수정, 삭제는 작성자만 가능

- 게시글 작성, 수정, 삭제시 새로고침 기능

- 게시글 신고시 게시글을 작성한 사람의 글을 모두 차단

- 키워드로 게시글 검색

- 당겨서 새로고침

- 페이징 

 

댓글 작성, 삭제 , 신고

- 댓글 삭제는 로그인한 사람만 가능

- 댓글 신고시 신고한 댓글만 차단처리

 

게시글 북마크 기능

- 다른사람이 올린 게시글의 하트를 눌러 나만의 북마크에 저장해 모아보기 가능

 

내가 쓴글 모아보기

 

다중채팅 기능 (socket.io)

- Node js, express, socket.io, nodemon

- 실시간 채팅(이미지,텍스트 전송)

- 채팅유저 신고기능

- 단어필터링

- 접속자 리스트표기

첫 런칭 이후 개미만큼 UI를 업데이트하다가 조금은 굵직한 기능인 채팅기능을 추가했습니다!  채팅기능인 만큼 한번에 승인받기가 어려웠는데요, 앱스토어제출 4번만에 성공했습니다.^^

(리젝사유는 및 해결방법은 글마지막에 정리해두었습니다.)

 

Node js, express, socket.io, nodemon조합으로 서버와 클라이언트를 구성했고,  저장이 되지 않는 채팅이지만 이미지를 불러오기 위해서 mysql을 사용해 텍스트와 이미지 정보를 저장했습니다.

여러명의 유저 접속, 이미지와 텍스트 전송이 가능

로그인시에만 채팅하기 버튼이 활성화 됩니다.  채팅하기를 눌러 채팅방에 입장하면  유저가 입장했다는 팝업이 생성됬다가 사라집니다.  상단 사람아이콘을 눌러 접속중인 유저를 확인할수 있습니다.

 

사용자의 이름을 누르면 유저를 신고할수도 있습니다.  (신고기능이 없으면 리젝사유)

필터링 기능을 넣어 비속어나 불쾌감을 줄수있는 단어를 작성할수 없도록 했습니다. 욕설을 작성하면 글이 전송되지 않습니다.  실시간 채팅이기에 방을 나가면 채팅 내용이 모두사라집니다.  글자줍기 유저들끼리의 이벤트나 모임시에 유용하게 사용되면 좋을 것 같습니다. 


✅ 앱스토어 리젝사유 및 해결

처음 채팅을 붙였을때는 임의의 닉네임을 입력하고 채팅방에 익명으로 입장하는 방식이었는데요. 

그러나 이런 채팅 방식은 안전하지 않기 때문에 적절한 예방 조치가 필요했습니다.

>  로그인을 했을때에만 사용가능하도록 변경

그러나 로그인한 유저만 사용할수 있도록 수정해서 제출했는데 역시나 이것만의 문제가 아니었고 추가로 하단의 문제를 해결해야했습니다.


  • 지침 1.2 - 안전 - 사용자 생성 콘텐츠

앱에서 사용자가 익명으로 콘텐츠를 게시할 수 있지만 적절한 예방 조치가 마련되어 있지 않습니다.
다음 단계
이 문제를 해결하려면 다음 예방 조치를 모두 구현하도록 앱을 수정하세요.

  • 연령 등급은 17세 이상을 반영해야 합니다. >(17세이상으로 반영함)
  • 사용자가 약관(EULA)에 동의할 것을 요구하고 이 약관은 불쾌감을 주는 콘텐츠 또는 사용자를 학대하는 행위를 용인하지 않음을 명시해야 합니다. >(채팅입장화면과 채팅내의 info에 불쾌감을 줄수있는 대화는 회원제재를 당할수 있다고 기재 , 주의문구 넣기)
  • 불쾌감을 주는 콘텐츠 필터링 방법  >(비속어 필터링 기능을 넣어서 비속어 사용시 입력되지 않도록함 , 필터링 기능 넣기)
  • 사용자가 불쾌감을 주는 콘텐츠에 플래그를 지정하는 메커니즘 
  • 사용자가 악의적인 사용자를 차단하는 메커니즘  >(유저를 눌러 신고할수 있는 기능 추가 , 신고기능 넣기)
  • 사용자가 피드에서 게시물을 즉시 삭제할 수 있는 메커니즘 
  • 개발자는 불쾌감을 주는 콘텐츠 신고에 대해 24시간 이내에 해당 콘텐츠를 삭제하고 불쾌감을 주는 콘텐츠를 제공한 사용자를 퇴출시키는 조치를 취해야 합니다. >(신고창에 개발자의 이메일주소 기재)
  • 개발자는 사용자가 부적절한 활동을 보고할 수 있도록 앱 자체에 연락처 정보를 제공해야 합니다.

신고기능등은 현재 운영중인 서비스등을 참고해서 만들었습니다.(ex: 당근마켓)

채팅을 구현시 리젝경험을 공유해준 고마운 블로그를 뒤져서 참고해 적용하니 승인 받을수 있었습니다.

그리고 심사사에 볼수 있게 기능이 구현되는 영상을 첨부했구요. 이렇게 채팅 업데이트에 성공했네요!

차차UI도 수정하고 기능도 더 다듬어 보아야겠습니다. 다음 업데이트때 만나요~ 

 

  • Guideline 1.2 - Safety - User Generated Content
    Hello,
    The issues we previously identified still need your attention.
    If you have any questions, we are here to help. Reply to this message in App Store Connect and let us know.
    Guideline 1.2 - Safety - User Generated Content
    Your app enables users to post content anonymously but does not have the proper precautions in place.
    Next Steps
    To resolve this issue, please revise your app to implement all of the following precautions:
    • Age rating must reflect 17+
    • Require that users agree to terms (EULA) and these terms must make it clear that there is no tolerance for objectionable content or abusive users
    • A method for filtering objectionable content
    • A mechanism for users to flag objectionable content
    • A mechanism for users to block abusive users
    • A mechanism for users to immediately remove posts from the feed
    • Developer must act on objectionable content reports within 24 hours by removing the content and ejecting the user who provided the offending content
    • Developer must provide contact information in the app itself, giving users the ability to report inappropriate activity
    Please see attached screenshot for details.

 

리젝사유 참고링크

https://yannichoongs.tistory.com/195 

 

RN - 채팅적용 및 AppStore 심사 통과 하기

안녕하세요, 최근에 android/ios 동시 앱을 출시하면서 android 는 간단하게 앱 심사 통과시켜주는 반면에 ios는 꽤 까다롭다는것을 몸소 체험했습니다. 경험 상 android는 최소한의 휴먼 검수와 대부분

yannichoongs.tistory.com

https://trend21c.tistory.com/1906

 

스타트업이 알아두면 좋은 앱스토어 심사시 reject 사유 12가지

앱스토어에 분야를 가리지 않고 여러 종류의 어플리케이션을 출시해보았는데 역시나 앱스토어 리뷰시에 리젝도 많이 당해보았다. 앱스토어 심사가 보통 1주일 안팎으로 걸리기 때문에 리젝을

trend21c.tistory.com

 

반응형