Flutter로 작업하다 보면 pubspec.yaml에서 버전만 올리면 알아서 iOS 빌드 버전도 바뀌어야하잖아요?근데 저는 한동안 계속 Xcode 들어가서 수동으로 버전 바꿔줘야했어요..😔뭔가 이상하다 싶어서 파고들어봤더니 원인을 찾았습니다! ㅎ.ㅎ뭐가 문제였나매번 pubspec.yaml에서 version: 1.0.3+25102301 이렇게 바꿔도 iOS 앱 빌드할 때는 버전이 그대로더라고요.결국 Xcode 열어서 FLUTTER_BUILD_NAME이랑 FLUTTER_BUILD_NUMBER를 일일이 수정해야 했습니다.처음엔 Flutter 버그인 줄 알았는데, 알고 보니 제 프로젝트 설정 문제였어요.원인은 하드코딩;ios/Runner.xcodeproj/project.pbxproj 파일을 열어보니까 버전 ..
안녕하세요 토브입니다 ✨ 이번엔 R8 관련 경고를 해결하고이전 버전 대비 설치 크기와 다운로드 시간이 줄어든 걸 보며신나게 다음 배포를 준비했습니다만.. 이번엔 디버그 기호 관련 경고가 거슬리기 시작했습니다 🐛 헤헤.. 문제경고 메세지이 App Bundle 아티팩트 유형은 네이티브 코드를 포함하며 아직 디버그 기호가 업로드되지 않았습니다. 비정상 종료 및 ANR을 더 쉽게 분석하고 디버그할 수 있도록 기호 파일을 업로드하는 것이 좋습니다. 자세히 알아보기 해결일단 프로젝트 폴더에서 아래 경로로 이동해줍니다그럼 이렇게 lib 폴더 안에 폴더가 여러개 있는데 이걸 하나로 압축해줍니다 그리고 앱 번들 자세히 보기 > 다운로드 탭 > 네이티브 디버그 기호를 업로드 해줍니다 업로드해주면~~~~~~~ 그럼 ..
안녕하세요. 토브입니다! 최근 회사에서 2개의 Flutter 프로젝트에 있던 iOS 앱과, 안드로이드 앱을 각각 배포하는데 성공했습니다.후후.. 9월 23일부터 각각 배포를 해야했어서 총 4번의 배포 과정을 거쳤는데요.임상용으로 디자인 된 앱이었기에, Google 과 Apple 에 각각 최대한 많은 설명이 필요하더군요... 😅 이 앱들을 배포하면서 작성했던 내용을 먼저 다루려고 했지만글이 길어질 것 같아서 쓰기도 전에 지치는 이슈가...🥲 일단 이번 글에서는 1.0.3 버전 안드로이드 배포 거절에 대한 조치 과정을 글에 담아볼까 합니다. 오른쪽 경고 알림의 세부정보 보기를 누르면 아래와 같은 페이지를 볼 수 있는데요.맨 마지막에 올린 업데이트가 프로덕션에 배포하기에 부적절하다... 뭐 그런 내용입..
다시 Swift/iOS 개발에 익숙해질 겸Apple Developer Documentation 에 있는 SwiftUI 튜토리얼을 하나씩 해볼까 한다. 1. Navigating AppsAbout MeChoose Your Own StoryDate Planner2. Presenting ContentOrganizing with GridsEditing GridsImage GalleryLaying Out Views3. Retrieving Content from a ServerMeme Creator4. Responding to User InputBubble LevelSeismometerRecognizing GesturesAnimating Shapes5. Capturing and Displaying PhotosPrev..
안녕하세요. 토브입니당.오랜만에 글을 쪄보겠습니다...!주제는 바로.. Google Play Console "SafetyNet 사용 경고" 해결하기!부디.. 저와 같은 오류를 겪는 분들께 도움이 되면 좋겠네요... 📱 문제 상황최근 Flutter 프로젝트 앱 배포를 했습니다만,Google Play Console에서 아래와 같은 권장 조치를 발견했습니다.. firebase_auth 버전을 바꿔서 해결했다는데...저희 프로젝트에서는 firebase_auth를 사용하진 않고 있었어요. 🤔 근데 버전이 좀 오래되긴 했네요;🔍 원인 파악1단계: 우리 프로젝트에서 SafetyNet을 사용하고 있다고..?먼저 Firebase App Check가 Play Integrity API 를 사용하도록 설정했는지 알..
최근 이틀 동안 iOS, 안드로이드 환경에서 동일하게 푸시 알림 설정을 보내려고 삽질을 했다...그러다 마주친 4주 전에 올라온 이 강의를 보고 해결되었다...ㅠㅠ 같은 어려움을 겪는 사람들을 위해서 간단히 기록을 남겨본다...🫠(참고로 APNs 설정은 절차가 복잡해서 직접 강의를 보는 걸 추천)반말체로 갑니다~~~~!📌 준비아래의 파일 4가지를 수정하거나 추가할 예정임.iOS 폴더 내AppDelegate.swiftlib 폴더 내main.dartservices/firebase_messaging_service.dart (코드 보기)services/local_notifications_service.dart (코드 보기)🔸 AppDelegate.swiftiOS의 푸시 알림 권한 및 delegate 설..
보호되어 있는 글입니다.
회사에서 API 호출해서 로그인 하는 과정 하고 있는데iOS는 호출 잘 되는데 안드로이드만 계속 '로그인 요청 시작' 여기서 더 진행이 안됐다.Future _login() async { final dio = Dio(); final url = dotenv.env['BASE_URL']; debugPrint('url: $url'); debugPrint('id: ${_idController.text}'); debugPrint('password: ${_passwordController.text}'); debugPrint('로그인 요청 시작'); try { final response = await dio.post( '$url/admin/auth/login'..
Flutter에서 앱을 개발하다 보면 Widget의 라이프사이클을 이해하는 것이 매우 중요하다. Flutter의 Widget은 UI를 구성하는 기본 단위로, Stateful Widget과 Stateless Widget으로 나뉘는데각 Widget은 생성, 업데이트, 제거 등의 과정을 거치며, 이 과정을 라이프사이클이라고 부른다.1. Stateless Widget LifecycleStateless Widget은 상태를 가지지 않는 위젯으로,데이터가 변하지 않는 정적인 UI를 렌더링할 때 사용된다.Create: Widget이 처음 생성될 때 호출build(): UI를 빌드하여 화면에 표시dispose: Widget이 화면에서 제거될 때 호출Stateless Widgetimport 'package:flutter..
Flutter 프로젝트를 생성하면 기본적으로 flutter_lints 라는 의존성이 붙는다.그래서 flutter_lints 와 analysis_options 로 규칙을 정하는 방법에 대해서 글을 써본다. Flutter Lints란?Flutter Lints는 Flutter 애플리케이션, 패키지 및 플러그인에 대한 권장 린트 세트를 제공하여 좋은 코딩 관행을 장려하는 패키지다.이 패키지를 사용하면 코드 품질을 높이고, 팀원 간의 일관된 코딩 스타일을 유지할 수 있다.특히, 린트 규칙을 통해 코드에서 발생할 수 있는 잠재적인 문제를 미리 감지할 수 있다는 점이 큰 장점이다.기본 사용 방법flutter_lints 패키지를 사용하여 기본적인 린트 규칙을 설정하는 방법은 간단하다.먼저, pubspec.yaml 파일..
Dart에서 객체를 생성할 때 사용하는 생성자(Constructor)에 대해 알아보자.왜냐? 대충 유지보수 할 수 있을만큼 읽는거에 익숙해졌는데,기초가 부족하다고 느꼈기 때문이다... 😢 마치 맨땅에 헤딩하듯 Swift를 공부했을 때 처럼...!기본에 충실하면 개발 속도가 나니까 😉 생성자는 클래스의 인스턴스를 만들 때 호출되며, 다양한 방식으로 정의할 수 있다.이번 글에서는 Dart에서 제공하는 여러 가지 생성자 유형을 살펴보고 각각의 특징을 이해해보자.기본 생성자기본 생성자는 클래스의 인스턴스를 생성할 때 호출되는 가장 일반적인 형태의 생성자다.위치 매개변수class Point { final double x; final double y; // 위치 매개변수를 받는 기본 생성자 Point(..
나는 입사한지 갓 3개월 정도 된 신입 개발자다.이전 작업자의 코드를 이어 받아서 분석하고, 유지보수를 했다.유지보수야 뭐.. 짚어준 오류 화면에 있는 코드를 타고 가다가 원인 찾아서 고치면 되는거라 할만했다.근데 이제 정리해서 발표를 해야한다...으아아...😭 내가 짠 코드에 대해서 설계나 다이어그램을 그리고 설명하는 건 좋은데몇만줄이나 되는 남의 코드를 읽고 설계를 분석해서 정리하는 건 쉽지 않은 일이라는 걸 체감하고 있다... 물론 이걸 하고나면 나는 코드 읽는 능력이 몇배는 수월해질 것이기에 기대 되는 부분도 있다.근데 당장의 나는 너무.. 너무너무 괴롭다... 으아아아아아 왜 힘든가 곰곰히 생각해보면플러터 시작한지 3개월 된 나 응애인수인계 문서에 각 프로젝트 설계 관련 설명 없었음 (클래스 ..
- Total
- Today
- Yesterday
- lints
- 배포 오류 해결
- 플러터 업데이트
- 플러터ios애니메이션
- analysis_options
- flutter updates
- SwiftUI Tutorial
- Android
- 플러터
- GooglePlayConsole
- 16KB지원
- flutter_lints
- 다트문법
- 플러터네이티브
- flutter 3.7
- 개발신입
- flutter
- ios
- 권장조치
- 오블완
- 플러터업데이트
- Play Integrity API
- SWIFT
- flutter3.7
- 렌더링최적화
- swiftmigration
- Sample Apps Tutorials
- 디버그 기호 업로드
- 오류해결
- 트러블슈팅
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |