Project/Android Project

Project/Android Project

[Android Flutter][Medisight] 개발 일지 #4 (내 질환 설정 기능 구현)

기능 - 각 질환이 적힌 버튼을 통해 질환을 추가하거나 제거할 수 있다. - 저장 버튼을 누르면 선택한 질환을 토대로 Cloud Firestore에 내 질환 정보가 저장된다. - 초기화 버튼을 누르면 선택한 모든 질환이 제거된다. - 해당 페이지에 다시 들어오게 되면 Cloud Firestore에 저장되어 있던 내 질환 정보가 불러와진다. 내 질환 설정 구현 dependencies: # Firebase cloud_firestore: ^4.4.3 firebase_core: ^2.4.1 pubspec.yaml에 사용할 모듈 추가 disease_select.dart final user = FirebaseAuth.instance.currentUser!; CollectionReference userProduct ..

Project/Android Project

[Android Flutter][Medisight] 개발 일지 #3 (바코드 스캔 기능 구현 with 서버 연동)

기능 - 사용자가 카메라를 통해 의약품의 바코드를 스캔하면, 의약품 정보가 보인다. - 만약 스캔한 사진의 형체를 알아볼 수 없는 등의 기타 오류가 있다면 재촬영이 필요하다고 안내한다. - 사진 인식 유무는 서버에 배포된 ML 모델을 통해 확인할 수 있다. 바코드 스캔 구현 dependencies: #Camera camera: ^0.9.4+1 # Barcode scanner google_mlkit_barcode_scanning: 0.5.0 flutter_beep: ^1.0.0 flutter_vibrate: ^1.3.0 # REST API http: ^0.13.5 pubspec.yaml에 사용할 모듈 추가 shootQr.dart @override void initState() { super.initStat..

Project/Android Project

[Android Flutter][Medisight] 개발 일지 #1 (Jira 사용법 및 Github와 연동)

Medisight Jira 사용법 타임라인 epic 생성 → 티켓 번호가 부여됨 하위 이슈 만들기(작업, 스토리, 버그) → 티켓 번호가 부여됨 → 담당자 설정 백로그 스프린트 생성 후 백로그에서 이슈 할당 이슈 할당 완료 → 스프린트 시작 보드 - 앞으로 해야 할 스프린트는 '할 일'에 둠 - 코드를 작성 중이거나 commit, push를 수행하고 merge 하기 전인 업무는 '진행 중'에 둠 - merge가 완료된 스프린트는 '완료'에 둠 Github에서 Jira 규약에 맞게 Merge 하는 법 1. vscode에서 코드 작성을 할 때, 이슈 티켓 번호와 이름이 같은 브랜치에서 작업 2. 코드 작성이 완료 후 commit 할 때, commit을 원하는 파일들만 선택 3. commit message를 ..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #8 (프로필 변경 기능 구현)

UI '이미지 선택' 버튼을 통해 앨범에서 이미지를 선택하여 프로필을 변경할 수 있고 '기본 이미지로 변경' 버튼을 통해 기본 프로필로 변경할 수 있다. 닉네임을 변경하려면 editText에 닉네임을 작성한다. 모든 변경은 하단의 '변경하기' 버튼을 눌러야만 반영된다. 프로필 변경 구현 (Firebase Storage 사용 방법 참고) ProfileActivity.kt getFireBaseProfileImage(currentUser!!.uid) profile_newImage_btn.setOnClickListener { gotoAlbum() } private fun getFireBaseProfileImage(uid: String) { // 파이어베이스 Storage에서 이미지를 다운받아 프로필에 불러오는 ..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #7 (마이페이지 기능 구현)

UI 마이페이지 UI 사용자 프로필과 닉네임이 가장 상단에 뜨며, 하단에는 최근 본 약국과 스크랩한 칼럼을 볼 수 있다. 가장 하단 부분에는 사진과 같은 추가적인 기능들이 존재한다. 메인 액티비티 UI 하단의 내비게이션 바를 클릭하면 각각의 페이지가 화면에 띄워진다. 마이페이지 구현 (Firebase Storage 사용 방법 참고) MainActivity.kt private var userEditor: SharedPreferences.Editor? = null override fun onStart() { super.onStart() val userDataShared = getSharedPreferences("userData", MODE_PRIVATE) // SharedPeferences 객체 생성 use..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #6 (비밀번호 찾기 기능 구현)

UI editText로 작성한 이메일에 비밀번호를 변경할 수 있는 코드가 제공된다. 비밀번호 찾기 구현 FindpwActivity.kt private fun resetPw() { auth?.sendPasswordResetEmail(emailAddress.toString()) ?.addOnCompleteListener { task -> if (task.isSuccessful) { Toast.makeText(this,"비밀번호 변경 메일을 전송했습니다.", Toast.LENGTH_LONG).show() moveToLoginPage() }else if(!loginActivity.isEmail(emailAddress.toString())){ Toast.makeText(this,"이메일 형식으로 입력해주세요.",..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #5 (회원가입 기능 구현)

UI 이메일, 비밀번호, 닉네임을 작성을 통해 회원가입을 수행한다. 회원가입 구현 (Firebase Realtime DB 사용 방법 참고) SignUpActivity.kt private var auth : FirebaseAuth = FirebaseAuth.getInstance() private var database : DatabaseReference = FirebaseDatabase.getInstance().reference FirebaseAuth 인스턴스와 DatabaseReference 인스턴스를 전역변수로 선언해 준다. val userTypeShared = getSharedPreferences("userType", Context.MODE_PRIVATE)!! userType = userTypeSha..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #4 (회원 유형 선택 기능, 본인 인증 기능 구현)

회원 유형 선택 UI 애플리케이션 내에서 약사 사용자와 청소년 사용자의 기능이 다르기 때문에 구분하여 회원가입할 수 있도록 한다. 회원 유형 선택 구현 CertifyActivity.kt val userTypeShared : SharedPreferences = getSharedPreferences("userType", Context.MODE_PRIVATE)!! val userType = userTypeShared.getString("userType", null).toString() userType이라는 이름을 가진 SharedPreferences 객체를 획득하고, SharedPreferences 객체의 생성과 데이터 저장을 위해서 Editor 객체 획득 SharedPreferences는 데이터를 간단하게 ..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #3 (로그인 기능 구현)

UI 두 개의 editText를 통해 이메일 형식인 아이디와 비밀번호를 입력하도록 하고, 이후 로그인 버튼을 통해 로그인할 수 있도록 한다. 로그인 구현 LoginActivity.kt (Firebase Auth 사용 방법 참고) var auth : FirebaseAuth? = null FirebaseAuth 인스턴스를 전역 변수로 선언해 준다. override fun onStart() { super.onStart() auth?.currentUser?.reload() // 현재 사용자가 로그인 되어있는지 확인 login_btn.isEnabled = false // 로그인 버튼 비활성화 } onStart() 메서드에서 사용자가 로그인되어있는지 확인 login_email_et.addTextChangedList..

Project/Android Project

[Android Kotlin][MapForGirls] 개발 일지 #1 (로그인 기능을 위한 firebase 연동)

firebase와 프로젝트 연결 프로젝트를 생성한 뒤 Android 버튼을 통해 안드로이드 프로젝트와 연결시켜 준다. Android 패키지 이름(일반적으로 패키지 이름은 앱 수준 build.gradle 파일의 applicationId임)과 SHA-1 키를 입력해 준다. Android 4.2 버전 기준 우측 상단 Gradle의 코끼리 버튼을 누르고 아래 코드를 입력하면 SHA-1 키가 출력된다. gradle signingReport 이후 json 파일을 다운로드해서 app에 넣어준다. 마지막으로 SDK를 문서의 내용대로 추가해 주고 매니페스트에 인터넷 권한을 추가해 준다. Firebase Auth 이메일을 이용한 로그인을 구현하려고 한다. 좌측의 Authentication에서 이메일/비밀번호를 사용 설정으..

jeonge
'Project/Android Project' 카테고리의 글 목록