분류 전체보기 142

[Kotlin] Admob 적응형 배너 등록하는 방법

📱테스트 환경 Samsung Galaxy Android 13 • Android 10 https://developers.google.com/admob/android/quick-start?hl=ko#import_the_mobile_ads_sdk 시작하기 | Android | Google for Developers Android 앱을 제작 중인 Google AdMob 게시자를 위한 모바일 광고 SDK입니다. developers.google.com https://developers.google.com/admob/android/banner/anchored-adaptive?hl=ko#kotlin 앵커 적응형 배너 | Android | Google for Developers 이 페이지는 Cloud Translatio..

Kotlin 2023.11.25

[Kotlin] 앱 정보 가져오기 - App Name & App Icon 가져오기

📱테스트 환경 Samsung Galaxy Android 13 • Android 10 applicationInfo & packageManager 01. getAppInfo.kt 파일 생성 ( utils/getAppInfo.kt ) 02. 먼저 getAppName 함수 생성 fun getAppName(context: Context): String { val applicationInfo = context.applicationInfo val stringId = applicationInfo.labelRes return if (stringId == 0) applicationInfo.nonLocalizedLabel.toString() else context.getString(stringId) } 사실 함수를 따로 분..

Kotlin 2023.11.25

[JavaScript] Canvas 글자에 그림자 효과

📱테스트 환경 "react": "18.2.0" "react-dom": "18.2.0" "typescript": "^5.1.6" 😢 내가 겪은 문제 Canvas 이용해서 열심히 동적 썸네일을 그리고 있는데 .. 텍스트에 그림자 효과를 넣어달라고 하더라. 뭐 당연하게 그냥 기존에 작성해뒀던 코드를 재활용했다. context.shadowColor = "rgba(0, 0, 0, 0.5)"; // 50% 투명도의 검은색 그림자 context.shadowBlur = 10; // 흐림의 정도 context.shadowOffsetX = 5; // 그림자의 x 방향 오프셋 context.shadowOffsetY = 5; context.fillText(text, textX, textY); 오 .. 근데 그림자를 넣었더니 ..

Javascript/Next 2023.10.26

[IT] Tree Shaking ? webPack ?

이번에 20년 가까이 프론트앤드 개발자님과 같이 밥먹으러 걸어가면서 이런저런 이야기를 하는데 나보고 Tree Shaking 을 아냐고 물어봤다. 너무 생소한 단어인데다가 처음 들어봐서 "잘 모르겠다. 처음들어본다." 라고 했는데 이게 생각보다 엄청 오래된 기술이더라 ... 근데 내가 어떤 언어로, 어떤 툴에서 개발을 하던 웹 개발을 하는 이상 알아둬야 한다는 것 같다. 어쨋든 먼저 webPack 을 살펴보면 webPack은 현대 JavaScript 애플리케이션을 위한 모듈 번들러 ( Module Bundler )이다. 주로 웹에서 사용되는 여러 자원들(JavaScript, 스타일, 이미지, 폰트 등)을 최적화하고 모듈 형태로 조합하여 하나 또는 몇 개의 번들 파일로 만드는 역할 로더 ( Loader )..

IT 2023.10.26

[Kotlin] 화면의 디스플레이 크기 확인하기

📱테스트 환경 Samsung Galaxy Android 13 • Android 10 😢 내가 겪은 문제 해당 작업을 하면서 이것저것 해보다가 찾은 방법인데 .. [Kotlin] 동적 생성한 View textSize SP 로 설정하기 📱테스트 환경 Samsung Galaxy Android 13 • Android 10 😢 내가 겪은 문제 val button = Button(this).apply { text = getCategoryName(category) textSize =15f setTextColor(Color.parseColor("#000000")) layoutParams = LinearLayoutCompat.LayoutParam 8735.tistory.com 또 다른 방법들 중 하나라고 생각했고, 쓰일..

Kotlin 2023.10.24

[Kotlin] 동적 생성한 View textSize SP 로 설정하기

📱테스트 환경 Samsung Galaxy Android 13 • Android 10 😢 내가 겪은 문제 val button = Button(this).apply { text = getCategoryName(category) textSize =15f setTextColor(Color.parseColor("#000000")) layoutParams = LinearLayoutCompat.LayoutParams( getWidthBasedOnTextLength(text.toString()), dpToPx(33) ).also { it.leftMargin = 25 if(unreadMessage == 0) { it.rightMargin = 25 } } setPadding(dpToPx(5), 0, dpToPx(5), 0..

Kotlin 2023.10.24

[Kotlin] 앱, 패키지 설치 여부 확인하는 방법

📱테스트 환경 Samsung Galaxy Android 13 • Android 10 😢 내가 겪은 문제 최근에 Android 10 폰에서 계속 테스트를 진행하고 있었다. ( Android 13 잃어버렸다가 다시찾음 ㅎ ) 근데 나는 문제가 없는데 최신폰에서는 자꾸 문제가 생기는 경우가 있었는데 packageName 을 확인하고 앱이 깔려있으면 그 목록을 확인하는 코드에서 문제가 발생했다. Android 10 에서는 문제가 없는데 그 이상버전에서는 페이스북 말고는 확인을 못하더라 ... 그래서 열심히 구글링 해봤는데 11 부터는 보안상의 문제로 AndroidManifest.xml 에 추가적인 코드 작성이 필요했다. 일단 해당 앱이 설치되어있는지 확인하는 코드부터 보여주자면 private val instal..

Kotlin 2023.10.16

[Kotlin] 안드로이드 앱 패키지명 확인하는 방법

📱테스트 환경 Mac Book Pro • Window 10 1. 플레이 스토어를 검색해서 들어간다. Android 앱 Google Play 수백만 개의 최신 Android 앱, 게임, 음악, 영화, TV 프로그램, 도서, 잡지 등을 즐기세요. 기기 간에 공유되어 언제 어디서든 이용할 수 있습니다. play.google.com 2. 원하는 앱을 검색한다. 카톡 몰래보기 - Android 앱 Google Play 수백만 개의 최신 Android 앱, 게임, 음악, 영화, TV 프로그램, 도서, 잡지 등을 즐기세요. 기기 간에 공유되어 언제 어디서든 이용할 수 있습니다. play.google.com 3. 검색결과에서 원하는 앱을 선택해서 들어간다. 톡 연구소 - 카톡 몰래 보기, 삭제된 메시지 보기 - Goo..

Kotlin 2023.10.16

[Kotlin] EditText 사용하는 방법 ( 키보드 짤림, Text 꺼내기, 비우기 )

📱테스트 환경 Samsung Galaxy Android 13 • Android 10 😢 내가 겪은 문제 채팅방 형식의 레이아웃을 만들고 있어서 채팅입력 레이아웃이 필요했다. 그래서 Web 의 Input 필드를 만들고 싶었다. EditText 가 뭔지도 몰랐던 나는 TextView 에 키보드 띄워놓고 입력할때마다 반영하려고 했다. 무식하기 그지없다. 그러다가 EditText 를 알게 되었는데, 일단 이게 뭔지 설명하자면 사용자가 텍스트를 입력하고 수정할 수 있는 텍스트 입력 필드이다. Web 의 Input 필드와 같은 역할을 하는 것 같은데, 이걸 사용하면 쉽게 할 수 있다. 나는 이제 입력 필드를 화면 바닥에 고정시켜놓고 사용하기 위해 이렇게 디자인을 했는데 디자인은 알아서 필요에 맞게 수정하면된다. 근..

Kotlin 2023.09.20