정기 업데이트 소식을 전해드려요. [업데이트 확인하기]
Flextudio
릴리즈노트
Flextudio 가이드
Flextudio 가이드
  • 플렉스튜디오 처음 시작하기
    • GETTING STARTED
      • 0. 플렉스튜디오 준비하기
      • 1. 워크스페이스 시작하기
      • 2. 시나리오 개발하기
      • 3. 앱 배포하기
      • 4. 앱 사용하기
    • 플렉스튜디오 로드맵
    • 튜토리얼(Tutorial)
      • 메모장 앱 만들기(필수)
        • 1. [Design] 디자인하기
        • 2. [Event] 화면 이동 구현하기
        • 3. [Data] 컴포넌트에 데이터 연결 하기
      • 템플릿을 활용해 앱 만들기(초급)
        • 0. 시나리오 생성하고 사용하기
        • 1. [Design] 디자인 템플릿 사용하기
        • 2. [Event] 클릭 시 스텝(Step) 이동하기
        • 3. [Data] 컴포넌트에 데이터 연결하기
        • 4. [Data] 이벤트 스크립트로 게시물 삭제 구현하기
      • 약속잡기 앱 만들기(중급)
        • 0. 시나리오 생성하기
        • 1. [Data] Firestore 준비
        • 2. [Event] 약속 만들기
        • 3. [Data] 약속 데이터 생성
        • 4. [Event]약속 조회하기
        • 5. 사용자 SNS로그인
        • 6. 앱 배포/링크
        • 7. [Event] 약속 회신하기
        • 8. 배포하고 확인하기
        • 9. 추가 상세 가이드
  • 개념 학습하기
    • 시나리오의 구성요소
    • 컬렉션(Collection)과 섹터(Sector)
    • 사용자 입력에 의한 데이터 변화
    • 이벤트와 서비스 구동 방법
    • 대체 텍스트 사용하기
    • [심화] Filter - 섹터(Sector) Status, Condition
    • [심화] Step의 구성과 생애주기
    • [심화] 컬렉션의 카테고리
    • [심화] 데이터의 상태관리(Sector Status)
    • [심화] 카테고리 연결관계
  • 워크스페이스 콘솔 가이드
    • 워크스페이스 콘솔 인터페이스
      • 앱
        • 시나리오 관리
        • 레이아웃관리
        • 데이터연결
        • 고객관리
        • 링크앱팩설정
        • 링크관리
        • 서비스오류로그
        • SDK설정
        • 앱정보설정
      • 앱팩
      • 개발
        • 시나리오
        • 권한키관리
        • 패키지설치
      • 데이터
        • API 연동
        • 호스팅 폴더
        • FlexSQL
      • 고객 관리
        • 설정 페이지
      • 에뮬레이터
      • 워크스페이스 설정
        • 기본정보
        • 개발자 관리
        • Flex API Key관리
  • 시나리오 개발하기
    • 시나리오 스튜디오 인터페이스
      • 상단영역
      • 시나리오 관리
      • 시나리오 설정
      • 시나리오 배포
      • 테마색 설정
      • 하단패널-Collection
      • 하단패널-DataBase
      • 하단패널-Authkey
      • DB 연결하기
    • 디자인 모드 (Design Mode)
      • 디자인 템플릿
      • 고정 레이아웃
      • 너비 높이
      • 디스플레이
      • 마진
      • 패딩
      • 배경
      • 보더
      • 색상
      • 스크롤 타입
      • 스타일 유형
      • 아이콘
      • 절대값 위치 설정
      • 컨트롤 명
      • 캡션
      • 텍스트
      • 투명도 설정
      • 힌트
      • 인풋 컨트롤 변경
    • 개발 모드 (Dev Mode)
      • 컴포넌트(Component)
        • 컴포넌트 상태
        • 로드스크립트
        • 데이터(Data)
        • 이벤트(Event)
        • 컴포넌트 동적 활용(컴포넌트 아이디)
      • 이벤트
        • 이벤트 서비스 스크립트 API 액션 추가
        • API 호출
        • 함수 자동 생성
        • 스크립트 에디터
      • 서비스
        • FlexSQL
        • FlexAutoQuery
        • Firestore
        • GoogleSheet
        • Flextudio API - User
      • 데이터소스
      • Etc
        • Collections
        • Language
        • Scenario
    • 컴포넌트
      • 스텝
      • 그룹
      • 레이아웃
      • 컨트롤
        • Approval
        • Button
        • CalendarNavigator
        • Calendar Schedule
        • Checkbox
        • ComboBox
        • DatePicker
        • Embed
        • FileUpload
        • Image
        • InputDate
        • InputMask
        • InputNumber
        • InputSearch
        • InputText
        • Line
        • MultiInputBox
        • Radio
        • Sheet (Beta)
        • Signature
        • Tab
        • Text
        • TimeTable
        • Tree
      • 스텝 버튼
  • 디버거
    • 디버거 인터페이스
    • 실행 내역 확인하기
    • 콘솔
    • 데이터 상태 확인하기
    • 서비스 테스트
      • Test-API
      • Test-SQL
  • 참고
    • FAQ
      • 시나리오에서 앱을 배포했는데, 라이브에 적용이 안되요.
    • 단어집
      • 권한키 (AuthKey)
      • 이너블럭
      • 컬렉션 키
      • FlexDB
      • 공개앱(오픈앱)
      • ParamBlock/ResultBlock
      • _SUID(suid)
    • 단축키
    • 개발 예제
      • 스크롤 페이징 샘플
    • 심화 실습
      • Google Map 그려주기
        • 1. Google Map 생성영역 생성
        • 2. 이벤트 구성하기
        • 3. 이벤트 연결하기
      • Naver Map 그려주기
        • 1. Naver Map 생성영역 생성
        • 2. 이벤트 구성하기
        • 3. 이벤트 연결하기
      • QR코드 생성하기
        • 1. 화면구성하기
        • 2. 이벤트 구성하기
        • 3. 이벤트 연결하기
      • 목적지 경로 거리 및 시간 Google Map
        • 1. Google Map Distance Matrix API 추가하기
        • 2. 화면 구성하기
        • 3. 이벤트 구성 및 연결하기
        • 4. API 호출 결과 후처리하기
    • 데이터 연동 방법
      • 자사 API 백엔드 시스템
      • 외부 DB 연동
      • Firestore 연동
      • GoogleSheet 연동
      • K-System 연동
      • Airtable 연동
    • 앱 출시하기 (SDK)
      • Android SDK
      • iOS SDK
Powered by GitBook

ⓒ flextudio

On this page

Was this helpful?

  1. 플렉스튜디오 처음 시작하기
  2. 튜토리얼(Tutorial)
  3. 약속잡기 앱 만들기(중급)

5. 사용자 SNS로그인

Previous4. [Event]약속 조회하기Next6. 앱 배포/링크

Last updated 9 months ago

Was this helpful?

약속잡기를 여러 사람들이 자신의 용도로 사용할 수 있도록 사용자 로그인을 추가해 봅니다. 여러 사용자가 사용을 하기 위해서는 사용자별 구분을 위한 (SNS)로그인과 또 각 사용자 별로 자신의 약속만 보이게 하는 구분이 필요합니다.

아래 목차를 따라서 진행 해 보세요.

  1. 앱이 처음 시작할 때 로그인이 되어 있지 않을 경우 로그인을 시키는 이벤트를 추가합니다. 이를 위해 기존에 앱이 시작할 때 실행하는 약속리스트 이벤트의 맨 앞에 로그인 스크립트를 추가합니다.

    1. Event 탭을 선택합니다.

    2. 약속리스트 이벤트를 선택합니다.

    3. 스크립트를 추가하고

    4. 스크립트를 Drag 해서 맨 위로 옮깁니다.

    5. 스크립트에 다음 코드를 붙여넙니다.

if(!f.User.isLogin()){   //사용자가 로그인이 되어 있지 않다면
    f.User.snsLogin();   //SNSLogin 실행
    f.Event().break();   //이벤트 종료(뒤에 약속리스트를 가져오는 서비스를 하지 않고 종료)
}

  1. 로그아웃 버튼에 로그아웃 이벤트를 추가합니다.

  2. 로그아웃 이벤트에 자동함수로 로그아웃을 추가합니다.

  3. 로그인 한 사용자의 이름이 나오도록 아래 영역을 변경합니다. “안녕하세요, 이은진님….” 선택

  4. 함수를 이용해서 사용자 명을 가져옵니다.

    1. 텍스트에서 "이은진"영역을 삭제한 후

    2. 우측 사용자명 을 클릭하여 아래 스크립트 처럼 나오도록 합니다.

  5. 기존의 약속리스트가 사용자별로 조회하도록 하기 위해서 사용자 데이터를 보내는 데이터에 추가합니다.

    1. 보내는데이터 > 사용자데이터 에 fBaseUserID 추가

    2. 고급설정 클릭

  6. 서비스에도 검색 옵션을 추가합니다.

    1. 검색 체크

    2. 조건 내용 채워넣기

      • 필드명 : fBaseUserID

      • 연산자 : ==

      • 필드 값 콜렉션키 : fBaseUserID

  7. 이제 디버깅을 통해서 로그인 기능이 추가 되었는지 확인해봅니다. 우측 상단의 초록색 버튼으로 디버깅 실행

  8. 로그인여부를 해지 하여서 실제 사용자가 비로그인 상태로 접근했을 때의 상태를 재현해 봅니다. - 상단의 톱니버튼을 눌러서 로그인 여부를 해지

  9. 디버거에서 SNS 로그인 시에 두가지 상황을 선택하여서 실행 할 수 있습니다. 이미 선택된 사용자를 로그인 된 상태로 바꾸거나, SNS로 새롭게 사용자를 등록하는 방법을 선택할 수 있습니다. - 새 사용자 추가 선택

  10. SNS로그인 합니다.

  11. 로그인이 완료되면 새로 가입한 사용자로 변경 합니다.

    1. 좌측 상단의 디버거 상단 변경 버튼을 클릭

    2. SNS로그인으로 새로 등록된 사용자를 선택

  12. 사용자를 변경함에 따라 해당 사용자로 등록한 약속만 조회되는지 확인합니다.

SNS 로그인에 대 더 자세한 설명은 명세서에서 확인하실 수 있습니다.

f.User