728x90 반응형 androidstudio16 [Android] Gradle 버전 업그레드 이슈 : Namespace not specified. 개발 환경---------------------------------OS : Mac개발 툴 : Android Studio개발 언어 : KotlintargetSdk : 34minSdk : 24--------------------------------- Gradle 버전을 7.2.1 버전을 사용하고 있었는데 라이브러리 업데이트를 위해 8 버전으로 업데이트 하려한다.프로젝트 레벨의 build.gradle에서 Gradle 버전을 업데이트 후 sync를 돌리니 아래와 같은 오류가 발생했다 Namespace not specified. Specify a namespace in the module's build file. See https://d.android.com/r/tools/upgrade-assistant/s.. 2024. 11. 4. [Flutter] FCM 토큰 발급 및 Xcode 셋팅(Background Modes, Push Notification) 개발 환경 --------------------------------- OS : Mac 개발 툴 : android studio 개발 언어 : dart 개발 프레임워크 : flutter --------------------------------- --------------------------------- OS : Mac 개발 툴 : xcode 개발 언어 : Swift xcode version : 14.2 min iOS version : 13.0 --------------------------------- 이 글은 xcode 프로젝트에서 fcm 관련 셋팅을 다 해두었다는 전제하에 작성한다. fcm 토큰 발급은 아래 코드로 발급되어진다. var fcmToken = await FirebaseMessaging... 2023. 7. 6. [Android] 소스 코드 난독화, 앱 축소, 앱 최적화 앱 축소, 난독화 및 최적화 앱을 최대한 작게 만들려면 출시 빌드에 shrink(축소)를 활성화하여 사용하지 않는 코드와 리소스를 제거해야한다. android gradle 3.4.0 이상부터는 Pro Guard가 아닌 R8을 사용한다. 필요성 android 파일을 apk나 abb파일로 추출해내면 그냥 소스코드를 압축한 것이므로 리버스 엔지니어링이 가능하다. R8 Desugaring : Java8 이상의 API에서 사용할 수 있고 R8 컴파일러는 코드에 사용된 최신 기능을 이전 Java API로 백포팅합니다. 이는 최신 기능을 이전 Java API에서도 사용할 수 있음을 말합니다. 코드 축소 : R8이 라이브러리 종속성에서 사용하지 않는 코드를 포함하여 앱에서 사용하지 않는 코드를 제거하는 단계입니다. 리.. 2023. 7. 6. [Flutter] FIRMessaging Remote Notifications proxy enabled 개발 환경 --------------------------------- OS : Mac 개발 툴 : android studio 개발 언어 : dart 개발 프레임워크 : flutter --------------------------------- FIRMessaging Remote Notifications proxy enabled, will swizzle remote notification receiver handlers. If you'd prefer to manually integrate Firebase Messaging, add "FirebaseAppDelegateProxyEnabled" to your Info.plist 에러 내용은 위와같다. FCM을 추가했는데 로그에 위와같은 내용이 찍혔다. loc.. 2023. 6. 13. [Flutter] Don't use BuildContexts across async gaps 개발 환경 --------------------------------- OS : Mac 개발 툴 : android studio 개발 언어 : dart 개발 프레임워크 : flutter --------------------------------- 에러 내용 : Don't use BuildContexts across async gaps - async를 사용하는 영역 내에서는 BuildContext를 사용하지 말라고 한다. 왜냐면 context 값이 비어있을 수도 있으니까 ! 그래서 우리는 context가 mount 되었는지 사전에 확인하는 작업이 필요하다. context를 객체에 전달하기 전에 아래 코드를 작성한다. if (context.mounted) { if (context.mounted) { if (r.. 2023. 6. 6. [Flutter] ListView 스크롤 안되게 하기 개발 환경 --------------------------------- OS : Mac 개발 툴 : android studio 개발 언어 : dart 개발 프레임워크 : flutter --------------------------------- 스크롤 뷰는 스크롤 가능한 리스트를 사용하기 위해 사용하는 위젯이지만 나는 지금 스크롤 되지 않는 리스트가 필요하다. Column이나 Row로 만들면 코드가 너무 길어질거같다. 그냥 ListView를 사용해서 데이터를 뿌리고 스크롤 안되게 하려한다. physics: NeverScrollableScrollPhysics(), 위 소스를 추가해주면 되는데 어디다가 추가하냐면 return ListView.builder( itemCount: value.length, phy.. 2023. 5. 2. [Kotlin] ListView 만들기 개발 환경 --------------------------------- OS : Mac 개발 툴 : Android Studio 개발 언어 : Kotlin targetSdk : 31 minSdk : 23 --------------------------------- 리스트 뷰가 필요할 때마다 인터넷에 검색을 했는데 이젠 검색하지 않으려고 직접 listView에 대해 정리해서 강제기억하려합니다.,. 먼저 listView는 항목 목록을 표시할 수 있는 컴포넌트입니다! listView의 장단점과 recyclerView를 권장하는 이유 이런건 스킵하겠습니다! 바로 listView를 띄워보겠습니다 listView를 띄울려면 필요한 것들이 있는데 데이터 클래스 레이아웃에 ListView 추가 item 어댑터 이렇게 네.. 2023. 2. 20. [Kotlin] Android 11 권한 이슈 처리 개발 환경 --------------------------------- OS : Mac 개발 툴 : Android Studio 개발 언어 : Kotlin targetSdk : 31 minSdk : 23 --------------------------------- 안녕하세요 이번 포스팅 주제는 Android에서 permission 요청할 때 Android 버전별로 다르게 적용해야하는 버전 및 처리 방법에 대한 내용입니다. Android permission 변경 사항중에서 이번 포스팅은 "READ_PHONE_STATE" 권한에 대해 다루겠습니다. READ_PHONE_STATE permission android 10 이하를 타겟팅 할 때 전화번호를 가져오는 API에 액세스 해야하는 경우 사용합니다. andro.. 2023. 2. 20. [Flutter] inAppWebView 사용하기 이번 포스팅에서는 Flutter에서 inAppWebView 패키지를 사용하여 webView를 실행해보겠습니다. pubspec.yaml -> dependencies 에 inAppWebView를 추가해줍니다. 저는 버전을 따로 명시하지 않았습니다. # inappwebView flutter_inappwebview: 그리고 .dart로 와서 import 해줍니다. import 'package:flutter_inappwebview/flutter_inappwebview.dart'; 여기까지 진행하였으면 기본 셋팅은 끝났습니다. StatefulWidget을 상속받는 class는 이렇게 셋팅하고 class WebViewPage extends StatefulWidget { const WebViewPage({Key? ke.. 2023. 2. 20. Cause: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded Cause: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded --> 비밀번호 해독을 못했다는건데 저의 경우엔 aab파일을 생성할 때 keysotre 비번 적어둔 것을 복붙해서 발생한 에러였습니다. 한번 수동으로 쳐주면 될거에오 2022. 12. 13. android : Timer 사용하기 #타이머를 사용해보자 해시태그 걸기~~~~ Timer 타이머를 검색하고 한국어로 번역했더니;;! 시간제 노동자,.. 저를 말하고 있군요 ㅋㅋ 개발을 하다가 타이머를 메인으로 쓸 일이 생겨서 한번 정리하려 합니다 ! 막상 쓰려고 하니까 안드로이드에서 제공하는 타이머의 특성을 제가 정확히 모르고 있었습니다 쉐에에ㅔㅇㅅ~~~~~ --------------------------------------------------------------------------------------- **** 혹시 타이머 재실행을 n번 해야하시는 분은 timer 객체를 전역변수로 두시지 않는걸 추천합니다! 전역변수로 두고 처리할 수 있는 방법이 있을거 같긴한데 저는 타이머의 특성중 재활용이 안된다는 점 때문에 타이머와 관련된 .. 2022. 4. 14. AndroidStudio : Unsupported Modules Detected 에러 해결 오랜만에 연 프로젝트를 빌드하려고 하니 아래와 같은 에러가 났다 제 기 랄 ! 시간 없는데 ! Unsupported Modules Detected: Compilation is not supported for following modules: . Unfortunately you can't have non-Gradle Java modules and Android-Gradle modules in one project. 처음보는 에러다 구글 서칭을 하니 Invalidate Chaches / Restart.. 를 하면 해결 된다고 하는데 난 안됐다 방법은 안드로이드 스튜디오를 잠깐 끄고 (프로젝트 종료) 프로젝트가 들어있는 디렉터리로 가서 .Idea 파일을 삭제해준다 그럼 해결 ! 2022. 4. 7. 이전 1 2 다음 728x90 반응형