본문 바로가기

전체보기140

[플러터, 애드몹] 네이티브 광고로 mx 플레이어와 같은 광고 구현하기- 4탄-네이티브와 플러터 연결하고, 플러터로 네이티브 광고 구현하기 이번 시간에는 이제 안드로이드(네이티브) 와 플러터를 연결하고 플러터로 네이티브 광고를 구현하는 것을 정리해 보겠습니다. 여기서 중요한 부분은 "media_ads" 인 factoryId입니다. 이 팩토리 아이디를 이용해서 플러터와 네이티브 UI를 연결할 수 있습니다. package 패키지명 import io.flutter.embedding.android.FlutterActivity import io.flutter.embedding.engine.FlutterEngine import io.flutter.plugins.googlemobileads.GoogleMobileAdsPlugin class MainActivity : FlutterActivity() { override fun configureFlutter.. 플러터관련 정보/플러터-안드로이드 개발 2024. 1. 6.
[플러터, 애드몹] 네이티브 광고로 mx 플레이어와 같은 광고 구현하기- 3탄- MediaNativeAdsFactory로 레이아웃(UI, xml) 연결하기 2탄에서 만든 xml파일로 네이티브 광고의 UI를 구현했고 이것을 안드로이드 코드와 연결(?)하는 기능을 하는 MediaNativeAdsFactory 클래스를 구현해보겠습니다. 저는 이 부분을 앞서 만든 네이티브 광고 UI와 안드로이드 시스템을 연결하고 UI에 보여줄 데이터를 입력하는 과정이라 이해했습니다. 저는 자바로 구현했지만 코틀린으로 구현도 가능합니다. 해당 파일은 MainActivity.kt파일이 있는 곳에 만듭니다. MediaNativeAdsFactory 만들기 NativeAdFactory를 구현하는 MediaNativeAdsFactory 클래스를 만들고 NativeAdView를 리턴하는 createNativeAd() 메소드를 구현합니다. 아래 코드를 하나하나 살펴보면 일단 xml로 만든 UI.. 플러터관련 정보/플러터-안드로이드 개발 2024. 1. 6.
[플러터, 애드몹] 네이티브 광고로 mx 플레이어와 같은 광고 구현하기- 2탄- 네이티브 광고 레이아웃 설정하기 네이티브 광고에는 안드로이드 개발 지식이 어느정도 있어야 합니다. 안그러면 이해하는데 어려움이 있습니다. 저는 플러터로 앱 개발을 시작했지 때문에 안드로이드 개발 지식이 없어 코드를 이해하는데 어려움이 있었습니다. 하지만 최대한 제가 이해한 것을 바탕으로 쉽게 설명해 보도록 하겠습니다. 이번 포스팅에서는 네이티브 광고 UI xml로 구현해보도록 하겠습니다. 그리고 최종 구현된 화면이 아래와 같습니다. 광고 화면이 배너보다 크다보니 동영상 광고도 나오고 몬가 더 광고수익이 나올거 같은 느낌이 듭니다. 목차 1. 프로젝트에 안드로이드 폴더 열기 2. 레이아웃 파일(xml) 만들기 일단 네이티브 광고를 구현할 프로젝트에 안드로이드 폴더를 열고 아래 스크린샷과 같이 레이아웃 파일을 만듭니다. 파일이름은 원하시는.. 플러터관련 정보/플러터-안드로이드 개발 2024. 1. 6.
[플러터, 애드몹] 네이티브 광고로 mx 플레이어와 같은 광고 구현하기- 1탄- 애드몹 기본설정하기 애드몹(admob)에는 규격화된 광고 형태인 배너광고, 전면광고, 앱오닝광고, 리워드 광고가 있습니다. 하지만 앱의 UI와 잘 어울릴 수도 있지만 아직 규격화 되어 있어 어울리지 않을 수도 있고 커스텀이 되지 않습니다. 앱의 UI와 유사하게 하여 앱와 광고가 잘 어울리게 하기 위해서는 네이티브 광고(native ads)를 사용하면 됩니다. 하지만 네이티브 광고는 커스텀하게 광고를 보여 주기 위해서는 플러터(dart)문법 보다는 코틀린 또는 자바, 그리고 UI를 구현하기 위한 지식이 필요합니다. 저는 플러터로 앱개발을 시작했기 때문에 해당 부분에 대한 지식을 깊게는 모르지만 공식 홈페이지 예제를 보면서 공부한 내용을 바탕으로 아래와 같이 mx 플레이어에 나온 큰화면의 광고를 구현해보도록 하겠습니다. 구현 .. 플러터관련 정보/플러터-안드로이드 개발 2024. 1. 5.
[1인 앱 개발] 2년만에 애드몹 드디어 수익금 출금 후기-1인 활성사용자 대비 수익률은?? 안녕하세요 혼자 공부하여 플러터로 앱 개발을 시작한지도 거의 2년에 되었습니다. 총 8개의 앱 중에 1개의 앱에 제 기준에서는 어느 정도 꾸준한 사용자분들이 생겨서 인지 애드몹으로 매달 10~20달러 정도 꾸준히 벌고 있습니다. 처음에는 금방 대박을 칠줄 알았지만 생각보다 쉽지 않은 게임인거 같습니다.  1인 개발이다보니 별도의 백엔드 서버를 두지 않고 스마트폰 내부의 저장소를 이용해서 만들다 보니 여러가지 제약이 있었고 파이어베이스를 이용한 앱도 한개 출시 했지만 신통치 않네요. 구글 애즈를 이용한 광고도 몇십만원 정도 써서 광고도 해보고 했지만 구글 애즈 특성상 학습기간이 최소 5일을 잡아먹기 때문에 어느정도 초기 시드머니가 필요한것이 사실입니다.  이번 포스팅에서는 저의 앱의 1일 활성 사용자 수와.. 후기/내가 직접 경험한 후기 2023. 12. 22.
[애드센스 해지 후 재가입] 애드센스 해지 후 10번 넘게 거절 후 승인 된 후기 애드센스와 애드몹 아이디를 통합하려고 기본 애드센스 아이디 해지 후 새로 애드센스 아이디를 신청하려고 했습니다. 12번 넘는 거절 이미 승인을 받은 티스토리기도 하고 금방 승인이 될거 같았지만 결과는 3개월동안 12번이 넘는 승인 거절 메일뿐이었습니다. 정말 여러가지 방법을 사용 해보았습니다. 다만 꾸준히 글을 쓰지는 않고 5~6개의 글만 추가 했습니다. 사이트 콘솔등록도 해보기도 하고.... 새로운 아이디로 신청 마지막 방법으로 새로운 아이디로 신청하니 되었습니다. 진짜 저주 받은 계정이라도 있는지 몇달간 승인이 안나던 애드센스가 오늘 다시 승인 되었네요 거절메일의 종류 이거 하면서 제가 알아본 봐에 따르면 애드센스에 사이트 메뉴에 가면 승인이 거절된 사유가 나온다라는 말이 있었지만 저는 나오지 않았고.. 블로그 키우기 2023. 12. 13.
[플러터] 다른 앱에서 플러터 앱으로 텍스트 공유 받기-앱 중복 실행 해결법 포함 우리가 사용하는 앱들을 서로 공유기능을 통해 글자나 사진 등을 주고 받을 수 있습니다. 안드로이드에서는 아래와 같은 아이콘을 클릭하면 다른앱으로 텍스트나 사진 등을 보낼 수 있는 공유기능을 사용 할수 있습니다. 현재 저는 마음의 글이라는 문장 수집 앱을 만들어 사용하고 있는데 밀리의 서재에서 책을 보다가 또는 인터넷에서 좋은 글을 발견하면 복사를 해서 일일히 붙여 넣었는데 공유 기능을 사용해서 자동으로 붙여넣기가 되도록 앱을 업데이트 하였습니다. 그래서 이번 포스팅에서는 receive_sharing_intent 패키지를 사용하여 공유 기능을 추가하는 법을 정리해보도록 하겠습니다. 그리고 이번에 공유기능 사용 시 앱이 계속 새로 실행되어 같은 앱이 공유 받을 때 마다 2개, 3개 이렇게 막 실행되는 것도 .. 플러터관련 정보/플러터-안드로이드 개발 2023. 12. 9.
[플러터, 애드몹] 테스트 기기에서 네이티브 광고 검사기(admob native ad validator)가 나올때 테스트 기기에서 갑자기 AdMob native ad vaildator라는 안내문이 나올때가 있습니다. 아무래도 네이티브 광고에 경우 사용자가 커스텀하고 UI를 구성하여 광고를 송출하다보니 배너광고 처럼 AdMob에서 딱 원하는 규격이 아닐수도 있기 때문에 이런 기능이 있는거 같습니다. admob native ad vaildator 안내문 끄기 이 안내문을 끄기 위해서는 AndroidManifest.xml 에 NATIVE_AD_DEBUGGER_ENABLE의 속성 값을 false로 바꾸시면 안내문을 끌 수 있습니다. 추가할 부분 플러터관련 정보/플러터-안드로이드 개발 2023. 11. 26.
[애드센스 해지 후 재가입] 11회 거절 후기 애드센스 계정을 해지 후 재가입 벌써 11회 거절되었습니다. 제가 승인 받았을 때가 승인 받기 쉬었을때였나 같은 생각이 들기도 했습니다. 일단 그동안 제가 한 것을 정리 해보겠습니다. 1. 구글 서치 콘솔 색인 등록 일단 구글 서치 콘솔 색인 등록을 해보라는 정보가 많이 그동안 색인이 생성되지 않은 주소의 색인 등록을 하였습니다만 역시나 거절 메일이 왔습니다. 2. 가지 치기 그동안 티스토리에 쓸모 없는 누적 조회수 0인 글이 많고 다른 글 링크가 걸린 글을 어느정도 정리하였습니다. 과연 이번에는 될지 궁금하네요 아저씨가 나오는 거절이 있고 아닌 메일이 있다?? 오늘 유튜브를 통해 애드센스 거절 관련 영상을 몇개 보았는데 아래와 같이 아저씨가 안나오는 거절 메일이 있고 이렇게 저처럼 아저씨가 없는 거절 .. 블로그 키우기 2023. 11. 21.
[Flutter, admob] 앱 오프닝 광고(App open ads) 플러터 앱에 추가하기(사용법) -ChatGPT와 공식 문서로 코딩 공부 부업으로 안드로이드 앱을 혼자 개발하고 있는 저의 앱의 주 수입원은 애드몹 광고입니다. 그동안은 배너 광고, 네이티브 광고(배너모양) 외엔 없었습니다. 그러던 와중 다른 1인 개발과 부업 개발자 커뮤니티에서 전면광고에 대한 이야기를 접하였고 이번 기회에 앱이 시작될 때 광고가 나오도록 하는 전면광고 게제를 해보기로 하면서 플러터 앱에 앱 오프닝 광고의 사용법에 대해 정리해보았습니다. 이번에 이것을 공부하면서 저는 모르는 부분이 나올때마다 구글링이 아닌 ChatGPT를 활용했는데 처음에는 자바보다 사용자가 적은 플러터에 대한 질문이었지만 ChatGPT 엄청 잘 알려주어 수월하게 공부할 수 있었습니다. 아래 나온 내용들은 공식 문서와 chatGPT와 함께 공부한 자료입니다. 앱 오프닝 광고(App open .. 플러터관련 정보/플러터-안드로이드 개발 2023. 10. 26.
[Flutter, admob] 안드로이드, iOS에 따라 광고 ID 자동 변경하기 플러터(flutter)를 이용해서 앱을 만들고 수익화를 위한 첫단계로 애드몹(admob) 광고를 앱에 붙이실겁니다. 그리고 애드몹 광고를 송출하기 위해서는 애드몹에서 만든 광고 별로 ID를 입력해야 하는데 플러터(flutter)는 안드로이드와 iOS 둘다 만들수 있는 크로스 플랫폼이기 때문에 ios용 아이디와 안드로이드 용 광고 아이디가 각각 필요합니다. 물론 둘 중 하나만 만든다고 하면 한개만 있어도 됩니다. 하지만, 이렇게 iOS, 안드로이드 둘다 만든다고 하면 iOS를 빌드 할때, 안드로이드를 빌드 할때마다 광고 ID를 변경해줘야 하는 번거로움이 있는데 이번에는 그런 번거로움을 해결할 수 있는 방법과 배포버전일때와 디버그 모드일때 광고 ID를 변경하는 방법을 알아보도록 하겠습니다. 목차 1. 광고 .. 플러터관련 정보/플러터-안드로이드 개발 2023. 10. 25.
[플러터, 애널리틱스] flutter로 만든 안드로이드 앱 analytics 연결하기 애널리틱스는 안드로이드나 iOS 앱을 만들고 유저들이 어떤 행동을 하는지 알 수 있게 하여 앱을 더 발전 시킬 수 있게 해주는 서비스 입니다. 이 애널리틱스(analytics)를 이용하면 사용자들이 어떤 부분을 많이 이용하고 어떤 기능을 잘 쓰지 않는지 파악 할 수 있어 앱 개발에 집중할 부분을 파악할 수 있게 해주는 유용한 서비스 입니다. 이번에는 플러터(Flutter)를 이용해서 파이어베이스 애널리틱스를 연결하고 사용하는 법을 간단하게 살펴 보겠습니다. 목차 1. go_router(고라우터)와 애널리틱스(analytics) 연결하기: FirebaseAnalyticsObserver 2. 유저가 버튼을 누르면 어떤 버튼 눌러는지 알아보기: logEvent 사용전 main.dart 기본 설정하기 애널리틱스.. 플러터관련 정보/파이어 베이스(플러터) 2023. 10. 15.
[플러터, 애널리틱스] Missing google_app_id. Firebase Analytics disabled. 에러 해결하기- 2023년 10월 최신 해결방법 플러터(flutter)로 안드로이드 앱을 개발하면서 파이어 베이스 애널리틱스( Firebase Analytics) 연결했는데 아래와 같은 에러가 발생했습니다. Missing google_app_id. Firebase Analytics disabled. See https://goo.gl/NAOOOI Android 프로젝트에 Firebase 추가 | Firebase for Android Google I/O 2023에서 Firebase의 주요 소식을 확인하세요. 자세히 알아보기 의견 보내기 Android 프로젝트에 Firebase 추가 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세 firebase.google.com 그래서 이번에는 위와 같은 에러를 어떻게 해결하는지 알아보겠습니다.. 플러터관련 정보/파이어 베이스(플러터) 2023. 10. 14.
[애드센스 해지 후 재가입] 승인 거절 4회 3회 거절 후기 쓰고서 얼마 지나지 않은 오늘 4번째 거절 메일이 왔습니다. 그래서 다시 원인 분석을 해보았습니다. 쿠팡파트너스 링크가 원인?? 검색을 통해 알아보던 중 쿠팡 파트너스 링크가 거절의 원인이라는 글을 보고 링크를 삭제 후 다시 신청했습니다. 결과 나오면 바로 포스팅 하도록 하겠습니다. 블로그 키우기 2023. 10. 1.
[애드센스 해지 후 재가입] 승인 거절 3회 후기 원인 분석 해보기 기존에 있던 애드센스 계정을 애드몹 계정과 합치기 위해 삭제하고 새로 애드센스를 신청했지만 3회 거절 후 지금 4회 째 다시 신청 중입니다. 이미 애드센스가 승인이 된 티스토리 이기 때문에 손쉽게 새로 승인이 날것으로 예상했지만 현실은 달랐습니다. 첫번째 승인 거절 메일은 7일만에 두번째도 7일 세번째는 5일만이 왔는데요. 사실 왜 거절 되었는지 원인을 알려주지 않기 때문에 제 나름대로 하나씩 원인을 분석 해보고자 합니다. 예상원인 1: 티스토리 자체광고 때문?? 아무래도 티스토리 자체 애드센스 광고가 들어가 있기 때문에 거부되는것을 생각해볼수 있습니다. 다만 다른 티스토리를 들어가 보니 두개의 CA-Pub코드를 삽입하는 것은 정책위반이 아니라는 내용을 보았기 때문에 처음 제가 생각했던 원인에서 살짝 제.. 블로그 키우기 2023. 9. 29.
[플러터, 구글드라이브] 앱 데이터를 Google Drive에 백업하기&복원하기 2탄 Flutter와 Google Drive연동하여 백업과 복원 구현하는 방법 2탄입니다. 1탄에서는 구글 드라이브를 사용하기 위한 레포지토리 작업을 마쳤는데요. 이번에는 그 레포지토리를 이용하여 비지니스 로직을 구현해보겠습니다. 이번에는 리버팟을 이용한 상태관리법을 적용해 보았습니다. 상태 정의하기코드팩토리님의 중급 강의에서 리버팟을 이용하여 상태를 관리하는 방법을 공부하여 이번 프로젝트에도 적용해 보았습니다. 우선 각각의 상태를 정의하기 위한 클래스를 만들어 보겠습니다. 각각의 클래스로 로딩중인지 유저 정보가 있는지 여부를 확인하려고 합니다. 이것을 보고 객체지향의 다형성을 이렇게도 활용 가능 하구나 느꼈습니다. 직관적인 이름으로 되어 있으니 쉽게 아실거라 믿고 넘어가겠습니다. import 'package.. 플러터관련 정보/플러터-안드로이드 개발 2023. 9. 17.
[플러터, 구글드라이브] 앱 데이터를 Google Drive에 백업하기&복원하기 1탄 Google Drive와 플러터를 연동하여 앱 데이터를 백업하고 다운로드 받을 수 있다면 저 처럼 혼자서 개발하고 있는 1인 개발자에게 비용을 최소화하기 위한 안성맞춤인 방법인거 같습니다. 그래서 사실 이부분은 파이어베이스에 데이터를 저장하거나 별도의 백엔드 서버를 이용하여 개발하고 계신분들은 크게 상관 없는 포스팅입니다. 저는 이것을 이용해서 Drift를 이용한 앱의 SQLite3 db파일을 구글드라이브에 백업하고 복원하는 작업에 사용하고 있습니다. 결과는 성공졌이었고, 현재 출시된 앱에 해당 기술을 적용하여 사용하고 있습니다. 파이어베이스 설정 일단 저는 기본적으로 애널리틱스를 사용하고 있어 파이어베이스에 앱을 연결한 상태이며 파이어베이스를 이용한 구글로그인 설정을 완료한 상태입니다. 이렇게 하면 구.. 플러터관련 정보/플러터-안드로이드 개발 2023. 9. 16.
티스토리 정책 변화(자체 광고 삽입)로 수익감소!! 티스토리 위기인가?? 자체광고삽입으로 인한 변화 올해 6월 티스토리에서는 자체광고를 신설하였습니다. 그로 인해 그동안 쭉 상승세 였던 저의 티스토리 수익이 반토막이 나기 시작했습니다. 그다지 큰 금액이 아니지만 그래도 조금은 아쉽더라구요 2023년 9월 9일 현재 저는 이 티스토리에 애드센스 광고를 개제하고 있지 않고 있습니다. 그런데 아래 캡쳐 화면과 같이 저도 모르는 광고가 삽입되어 있더군요. 티스토리 위기인가?? 사실 아무런 비용도 없이 애드센스 연결, 애널리틱스 사용이 편리한 티스토리를 무료로 사용 할수 있다는 점은 확실한 장점이기 때문에 아마도 애드센스로 수익을 창출하기 위한 좋은 선택지 였습니다. 현재 위기인가?? 여기서 부터는 순전히 저의 개인적인 생각입니다. 이런 티스토리의 자체 광고 신설이라는 정책 변화는 그.. 블로그 키우기 2023. 9. 9.
강서 운전면허 시험장 인터넷으로 갱신하고 찾아가는 방법(1종 보통, 준비물) 이번에 운전면허를 갱신했는데 이전과는 달리 이번에는 인터넷으로 신청하고 원하는 날짜에 찾으러 가는 방법으로 하니 시간도 단축되고 좋았는데 인터넷으로 신청하는 방법에 대한 부분은 나왔는데 어떻게 찾으러 가야하는지 번호표를 뽑아야 하는지에 대한 내용이 없어 강서 운전면허 시험장을 기준으로 알려드리도록 하겠습니다. 인터넷으로 신청하는 방법에 대한 것은 검색만 하면 더 쉽게 찾을 수 있으니 저는 강서 운전면허 시험장으로 면허증을 수령한 후기만 소개하도록 하겠습니다. 일단 본관 1층으로 가서 왼쪽으로 본관 1층으로 가셔서 바로 왼쪽으로 쭉 가면 면허증 받는 곳이 있습니다. 이렇게 면허증 찾는 곳이라고 크게 써있으니 쉽게 찾을 실 수 있습니다. 여기는 별도로 다른 창구 처럼 번호가 뜨는 알림판도 없어 번호표가 필요.. 후기/내가 직접 경험한 후기 2023. 9. 9.
[프로그래밍 독학] 독학으로 안드로이드 앱 7개 출시한 사람의 실패를 줄이는 독학방법 안녕하세요 저는 컴퓨터 관련 비전공자로 취미로 공부해서 현재 혼자 7개의 아주 간단한 안드로이드 앱을 출시하여 소소하게 수익을 얻고 있는 사람입니다. 어떻게 제가 독학으로 이정도 까지 성장할 수 있었는지 어떻게하면 좀 더 실패를 줄일 수 있는지 제 나름대로 그동안의 경험을 나누고자 이렇게 오랜마네 글을 쓰게 되었습니다. 우선 저는 취업 목적으로 프로그래밍을 공부한것은 아니고 순수하게 취미로 하고있는 사람이니 저처럼 취미로 프로그래밍을 하시려는 분들이 이 글의 타겟입니다. 파이썬 부터 시작? 처음 파이썬을 접했을 때는 그동안 제가 알던 프로그래밍 언어와 전혀 다른 타입의 언어 였습니다. 어쨋든 공대를 나왔기 때문에 C언어 수업을 필수로 들었지만 완전 외계어를 보는 듯 했습니다. 졸업한지 꽤 지난 지금 과거.. 후기/내가 직접 경험한 후기 2023. 8. 2.