소개팅앱 만들기 두번째 프로젝트 아키텍쳐 패턴
소개팅앱 프로젝트2023. 10. 22. 18:11소개팅앱 만들기 두번째 프로젝트 아키텍쳐 패턴

프로젝트 시작 전 가장 고민을 많이 하고, 결정하는 사항 중 하나죠! 프로젝트를 어떻게 설계 하냐에 따라서 추후 유지보수성에도 중요한 영향을 끼친다고 생각해요. 물론 그냥 MVC로 가볍게 시작해도 되지만, 어차피 공부할 겸 만드는 프로젝트니까. 최대한 나중에 유지보수 하기 쉬운 것으로 고려해서 결정해 보려고 해요. 먼저 Server! Server는 사실 딘님이 만든 Base project가 헥사고날 아키텍처 패턴이에요. App만 개발하던 저 같은 클라이언트에게는 생소한 아키텍쳐 이지만, 전 CTO님의 헥사고날 아케텍쳐에 대한 생생 강의를 듣고 나니 아주 훌륭한 아키텍처라는 걸 알 수 있었어요!! 헥사고날 아키텍처의 구조는 아래 그림과 같아요. 그림을 보면 어려워 보이지만 그냥 쉽게 비즈니스 로직과 외부 ..

소개팅앱 프로젝트2023. 10. 22. 17:29소개팅앱 만들기 첫번째 준비물 챙기기

소개팅앱을 만들기 위한 첫 번째 준비물 그건 바로 사용자들과 대화를 중계해 줄 Server와 사용자들이 채팅을 작성할 수 있는 Client 에요. 저는 App을 통해서 사용자들 간 채팅을 주고받길 원하기 때문에 Android와 iOS 앱을 만들 거고, 각각 앱을 따로 만들기에 저는 1인 개발을 할 것이기 때문에 크로스 플랫폼인 Flutter를 통해 개발할 거예요. 채팅앱은 사실 Native App 기능이 크게 필요 없기 때문에 Flutter 만으로도 충분히 구현이 가능해요. 자 그럼 이제 Server는 뭐로 할 것이냐!!! 서버는 용도를 크게 두 가지로 나눠서 만들 거예요. 1. API 서버 (인증 및 Rest API 용도) 2. Socket 서버 (실시간 채팅을 위한 용도) 첫 번째 API 서버는 무엇..

소개팅앱 프로젝트2023. 10. 22. 17:12소개팅앱 만들기 시작합니다.

채팅을 만들어 보고는 싶었는데 뭐랄까 항상 App 개발만 하다보니 서버쪽은 대충 수박 겉 핥기만 하다보니 자신이 없어서 안하고 있다가 갑자기 소개팅앱을 하나 만들고 싶어져서 혼자 북치고 장구치고 하며 소개팅앱 만들기를 진행해 보려고 해요. 나중에 뒤를 돌아봤을때 아! 내가 이런 것도 했었지라는 추억을 남기고 싶어 일기장 처럼 메모를 작성해요.

Android apple login 인증서 설정
공부방/Android2023. 10. 20. 18:21Android apple login 인증서 설정

Android 에서 apple 로그인을 할때 인증서 설정 부분에 대해서 간단하게 메모를 남기려 합니다. App ID 추가 1. identifier 탭에서 + 를 누르고 App IDs 선택후 Continue 2. App 누르고 Continue 3. 만들려는 App 과 똑같은 bundle id로 기입 4. Capabilities -> Sign In with Apple 체크 5. continue 후 register 를 눌러 마무리 Service id 1. identifier 탭에서 + 를 누르고 Service IDs 선택후 Continue 2. 대충 식별 가능하도록 네이밍 해서 continue 및 register 까지 완료 하여 생성 3. 다시 identifiers 탭에서 빨간색 네모 부분은 Services ..

공부방/Server2023. 10. 20. 01:22Stomp user 소켓 연결 및 해제 감지

@Configuration @EnableWebSocketMessageBroker @PropertySource("classpath:application.properties") class WebSocketConfig: WebSocketMessageBrokerConfigurer { override fun configureWebSocketTransport(registration: WebSocketTransportRegistration) { registration.addDecoratorFactory { handler -> object : WebSocketHandlerDecorator(handler) { @Throws(Exception::class) override fun afterConnectionEstablis..

DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PATHS, use TOOLCHAIN_DIR instead
공부방/Flutter2023. 10. 18. 22:19DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PATHS, use TOOLCHAIN_DIR instead

mac 과 iOS 업데이트 이후 flutter iOS프로젝트를 실행하면, DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PATHS, use TOOLCHAIN_DIR instead ... 이런 에러가 노출된다. 그럼 flutter -> ios -> podfile 을 열어서 아래와 같이 내용을 수정해주자 # post install post_install do |installer| # fix xcode 15 DT_TOOLCHAIN_DIR - remove after fix oficially - https://github.com/CocoaPods/CocoaPods/issues/12065 installer.aggregate_targets.each do |t..

공부방/Flutter2023. 10. 17. 13:23Android FlutterActivity, FlutterFragmentActivity, FlutterFragment 를 사용후기 정리

Android native 앱에서 Flutter module을 사용하여 앱을 만들 일이 생겼어요. Flutter Module을 flutter engine을 이용하여 화면에 띄우는 구조인데 제가 원하는건 Flutter module로 만든 화면이 Activity가 아닌 fragment에 노출 되길 원해서 Flutterfragment를 사용했어요. 하지만.... Flutterfragment가 있어서 다행이다고 이거로 Flutter 화면을 따로 띄워보자!! 이러면서 좋아했지만 Flutterfragment는 Flutter module 자체에 권한을 요청하는 라이브러리를 통하면, 권한을 제대로 요청 하지 못해요...... 물론 지금 기준으로 제가 알아본 바 이지만 FlutterActivity에서는 제대로 나타나는 ..

Flutter module run in android native FlutterActivity
공부방/Flutter2023. 10. 16. 17:39Flutter module run in android native FlutterActivity

Flutter module을 Android Native FlutterActivity 화면에서 바로 띄우려면 아래 코드처럼 작성 하고 띄우면 된다. package com.strongbulb.myapplication import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.strongbulb.myapplication.databinding.ActivityMainBinding import io.flutter.embedding.android.FlutterActivity import io.flutter.embedding.android.FlutterActivityLaunchConfigs import io.flutter.em..

Flutter awesome_notifications 앱 종료후 메시지 안보이는 현상 수정 방법
공부방/Flutter2023. 10. 15. 00:50Flutter awesome_notifications 앱 종료후 메시지 안보이는 현상 수정 방법

Flutter 앱에서 fcm을 통해 message를 수신하고, 수신한 메시지를 awesome_notifications을 통해 보여주는 방식으로 코드를 짯는데 이상하게 Release build에서 앱을 종료후 fcm message를 수신하면 채팅 메시지가 보이지 않는 현상을 발견하였다. 위의 사진처럼 메시지는 보이지 않고 아이콘만 덩그러니 보인다. 그래서 혹시 서버측에서 notification title이나 message에 데이터가 들어가나 체크도 해보고, chanel 설정이 잘못되었나 체크도 다 해봤는데, 알고보니 플러터가 업그레이드 되면서 릴리즈 빌드시 tree shaking 이 되면서 코드가 제거된다는 소리를 들었다. 이게 맞는 표현인지도 모르겠지만 아무튼 결론은 _onBackgroundMessage..

공부방/Flutter2023. 10. 13. 15:22failed to verify module interface of 'Runner' due to the errors above; the textual interface may be broken by project issues or a compiler bug

https://www.reddit.com/r/flutterhelp/comments/164gm64/last_xcode_version_using_bridging_headers_with/?rdt=47699

image