기본 콘텐츠로 건너뛰기

2월, 2023의 게시물 표시

안드로이드 앱 만들기 : 1일 1앱 만들기 2번째, 할인 쿠폰 모아보기

원본출처: 티스토리 바로가기 할인쿠폰 모아 보기 오늘도 1일 1 앱 만들기에 도전해 보았어요.  오늘 만들고 싶었던 건... 언제부터 인가 우리 동네 마트에서 영수증에 할인 쿠폰을 찍어 주더라고요.  다음에 사용하면 3000원 할인해 준다거나... 맥주캔 묶음을 사면 할인을 해주는 쿠폰을 준다거나 하는 일이 있더라고요. 그런 쿠폰들이 일회성 종일로 나오기 때문에 버려지는 것이지요.  그래서 일단 모이 보기로 했어요.     zxing 이전 포스팅에서 사용했던 barcode 스캔을 위한 라이브러리를 활용했습니다.  그때는 바코드 스캔을 위한 기능만을 활용하기 위해 썼다면 이번에는 스캔도 하고 바코드를 만들어 내는 기능으로 활용을 했습니다.  https://github.com/zxing/zxing   GitHub - zxing/zxing: ZXing ("Zebra Crossing") barcode scanning library for Java, Android ZXing ("Zebra Crossing") barcode scanning library for Java, Android - GitHub - zxing/zxing: ZXing ("Zebra Crossing") barcode scanning library for Java, Android github.com   언제쯤 이면 이런 라이브러리를 활용만 하는 게 아니라, 만들어 제공을 할 수 있을까는 궁금하기는 합니다.   아무튼... 덕분에 수월하게 바코드 활용과 관련된 앱을 만들어 볼 수 있었습니다.    최근 버전은 아래와 같습니다. 이걸 gradle 파일에 추가하면 사용을 시작해 볼 수 있습니다. // barcode scan implementation 'com.journeyapps:zxing-android-embedded:4.3.0' implementation 

안드로이드 앱 만들기 : File Download 구현 (ktor 활용)

원본출처: 티스토리 바로가기 안드로이드가 파일을 download 해야 한다고? 이런 일이 있을까 싶기도 합니다.  안드로이드 앱에서 파일을 받아야 한다니?    하지만 그것이 필요한 시점이 되었을 때,  기초가 미흡한 입장에서는 어디서 찾아야 하는 가 하는 고민을 하게 됩니다.  오늘은  ktor을 활용해 파일 받기 구현을 해 보았습니다.    gradle 구성하기 // ktor download implementation "io.ktor:ktor-client-android:1.2.5" implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.3' implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4' 앱 수준의 grade 파일에는 위와 같은 implementation 이 필요합니다.    manifest에서 필요 권한  선언 하기 <uses-permission android:name="android.permission.INTERNET" /> 당연한 이야기 이겠지만, internet 접속을 위한 권한은 있어야 합니다. 그래야 통신으로 원격지에 있는 파일을 받아올 테니까요. 인터넷을 활용하는 앱을 구성할 때 챙겨서 가야  하는 부분들이 있더군요. 인터넷은 비동기 통신을 하기 때문에 꼭 들어가야 합니다.    <application ... android:usesCleartextTraffic="true" android:networkSecurityConfig="@xml/network_security_config" ... > 개발자 페이지 참조 요새는 다들 보안 때문에 HTTPS:// 으로 시작하는 대부분의 URL

수다떨기 ... 챗봇과 함께 ( 카카오 KoGPT API활용해 보기)

원본출처: 티스토리 바로가기 혼자만 있으면 심심하고 나른한 오후 챗봇과 함께 수다를 떨어 보아요... 이 앱은 카카오의 KoGPT API을 호출하여 응답을 생성합니다. 수수떨기 open   API로 챗봇이 이런저런 것들을 대신하려고 한다는 기사가 빛발 치는 시기에 급 생각이 나서 앱을 하나 만들어 보았습니다.    혼자 놀기 심심할 때 누군가와 대화가 필요할 때 답이 정확 하지 않아도 궁금한 무엇이 생각날 때 이럴 때 한번 실행해 보세요. 이   공식 이미지 메인 화면 앱에서 동작하는 버튼은 앱정보 정보 ( information ) 버튼 : 이 설명서 페이지로 연결됩니다.  지우기 ( X ) 버튼 : 대화창의 내용을 지우고자 할 때 사용 됩니다.  대화전송 ( Send Text ) 버튼 : 입력한 대화를 전송 합니다.  다른 기능은 아무것도 없습니다.     대화기능 입력한 대화는 카카오 KoGPT API 을 호출합니다.   무료 버전으로 월간 1000건 쿼터가 적용되는 상태입니다.  그래서 어느 순간 답이 오지 않는 경우가 발생할 수 도 있습니다.    추후 다른 챗봇 API을 알게 되면 그것도 활용해 보겠습니다.   개인정보관련 이 앱에서 입력한 모든 정보는 기록하지 않습니다.  앱이 실행되고 있는 동안만 화면에 보이며, 그 마저도 지우기 버튼으로 지울 수 있습니다.    기타 관련 문의가 있으시면 help@billcorea.com 으로 메일을 주시기 바랍니다.    이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

나도 코딩의 파이썬 입문 - 도서 소개

원본출처: 티스토리 바로가기 나도 코딩의 파이썬 입문 파이썬 입문 오늘은 도서 하나를 소개해 볼까 합니다. 며칠 전에 facebook의 생활코딩이라는 그룹의 포스팅을 보다가 길벗 출판사에서 하시는 도서 이벤트가 있길래 신청을 했더랍니다. 오~  당첨되었다는 감사한 말씀과 함께 도서를 보내 주신다는 이야기를 듣고 마음 설래이며 기다렸더랬죠...    읽어보면 좋을 대상 이 책은 철저하게 초심자를 위해서 작성된 책으로 보였습니다. 저도 구글링을 하면서 따라 하기는 하나 기초가 그리 탄탄하지는 않기 때문에 말입니다.  이제 진정한 파이썬 코딩을 해 볼 수 있을 듯합니다.    비전공자가 읽어도 좋아요 이 책의 설명은 스킬업을 하고 싶은 비 전공자가 보아도 이해가 갈 수 있도록 서술되어 있습니다.  그렇다고 해서 컴퓨터와 담을 싸고 있는 경우라면 따라가기에는 쫌~   기초부터 차근차근 기술되어 있으니 읽어 보시면서 하나씩 따라 하고 단위마다 나오는 실습문제들을 풀어 나가다 보면 어느새 탄탄한 기초가 마련될 거라고 생각이 됩니다.    초급자 분들은 저 처럼  조금은 알고 있다고 생각하시는 분들은 기초를 다진다 생각하시고 읽어 보세요... 아직도 튜플과 딕션너리가 혼란스럽다면 말입니다.  리스트는 알겠는 데, 튜플은 무엇이고 디션 너른 어떻게 다른가 하는 혼돈의 숲에서 나오실 수 있을 겁니다. 그 혼돈의 숲에서 나오면 아마 다음 책을 또 하나 사서 봐야 하지 않을까 하는 생각이 듭니다.    이제 파이썬으로 떠나 보겠습니다. 저는 이제 깊숙한 파이썬의 숲으로 떠나 보렵니다.  제가 하고 싶은 것들은 자동화 스크립트를 조금 더 탄탄하게 만들어 내고 싶은 것들인데, 이 책에서 그것들의 기초를 다시 찾을 수 있을까 하는 호기심을 가지고 이제 떠나 보겠습니다.      이 글은 길벗 출판사 이벤트에 당첨되고 얻은 책 한 권을 보면서 작성된 이야기입니다.   

앱 홍보글 : 주문이요...

원본출처: 티스토리 바로가기 오늘도 홍보글 하나 달아요... 이 앱은 미니키오스크를 구현합니다. 휴대장치만 있으면 구현됩니다. 앱은 무료지만 기능은 필요한 건 만들어 드려요. 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

앱 홍보용 gif ... 일자리 구하기

원본출처: 티스토리 바로가기 홍보는??? 무언가를 만들어 내기는 했지만 알림을 만드는 재주는 없으니 ... 답답하네요. 이런걸 필요로 하는 사람이 있는 지도 모르겠고... 어떻게 하면 좋을까요? 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

앱 홍보글... 결제도 공유가 될까요? 리모트 페이...

원본출처: 티스토리 바로가기 이런 앱도 만들어 보기는 했지만 필요한 경우가 있을까요? 알 수 없는 일이에요... 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

리모트 페이 사용자를 위한 페이지 (결제도 공유가 되나요?)

원본출처: 티스토리 바로가기 * 이 앱의 사용은 페이앱 (https://payapp.kr)에서 제공하는 API을 지원합니다.  ** 이 앱은 페이앱 리셀러 활동을 위해서 제작 배포 됩니다. *** 이 앱에서 페이앱 회원 가입을 하는 경우에만 정산 수수료의 3%(부가세별도)의 지정이 가능 합니다. 앱 사용자 설명서  이 앱에서는 이메일 회원 가입 후 로그인 및  구글 계정, 카카오톡 ID, 네이버 ID을 통한 간편 로그인도 지원됩니다.  로그인 페이지 ** 테스트 계정 안내 이 앱의 테스트 운영을 위해서 테스트 계정을 제공합니다.  이메일 로그인 시 help@billcorea.com으로 password 1qazZAQ! 을 이용해 로그인해 볼 수 있습니다.   회원 프로필 관리 프로필관리에서는 간편 로그인의 경우는 해당 사이트에서 등록된 프로필 사진, 별명, 이메일 주소가 자동을 설정됩니다. 이메일 로그인의 경우만 프로필 사진을 임의로 등록할 수 있도록 지원합니다.   ** 사진 등록을 위해서는 앱 처음 실행 시에는 카메라 권한 허가를 요청하게 되어 있습니다.   이 화면에서 보이는 아이콘의 기능은 다음과 같습니다. 뒤로 가기 : 이전 화면으로 돌아갑니다. 저장하기 : payapp 사용자 ID을 저장합니다.  꼭 저장을 해야 합니다. 그렇지 않을 경우 결제 요청등의 기능 사용이 불가능할 수 있습니다. 회원 프로필 관리 PayApp 사용자 등록 : payapp.kr에 회원 가입을 진행할 수 있도록 회원 정보 등록을 지원합니다.  회원정보 등록 후 관리자의 승인 후 정산 업무 처리가 가능합니다. Payapp 사용자 ID : payapp 회원 등록 시에 사용한 ID을 입력해 줍니다.  ID입력 후 체크  아이콘으로 중복 여부를 확인해 볼 수 있습니다.   기본 화면 이 화면에 표시되는 아이콘의 기능은 다음과 같습니다. 뒤로 가기 : 앱을 종료합니다. 다시 보기 : 화면

안드로이드 앱 만들기 : 주소 API 사용해 Kakao 우편번호 서비스 활용해 보기 #2 (feat jetpack compose)

원본출처: 티스토리 바로가기 이전 이야기  https://billcorea.tistory.com/215   안드로이드 앱 만들기 : 주소 API 사용해 Kakao 우편번호 서비스 활용해 보기 앱을 만들다 보니, 주소 검색을 해야 하는 경우가 생긴다. 구글에서 찾아보면 추천해주는 방법이 2가지 정도로 압축 된다고 볼 수 있을 것 같다. 1. Daum 우편번호 서비스 장정 : API 가 필요하지 않 billcorea.tistory.com 오늘은 이전 포스팅의 내용에서 일부 변형된 모습에 대한 이야기를 잠시해 보겠습니다.  이전 포스팅에서는 webView을 layout.xml을 이용해서 구현한 모습에 대한 이야기를 했습니다.    오늘 구현한 소스는 jetpack compose 을 이용해서 구현한 코드입니다.    먼저 gradle 파일에 webview 사용을 위해서 선언을 해야 합니다. android API 33을 target으로 하고 있어서 아래 버전으로 설정을 해 주면 가능합니다. // Webview implementation "com.google.accompanist:accompanist-webview:0.24.13-rc"   webview을 호출하는 activity는 다음과 같이 전체 코드를 작성했습니다. 주의해서 봐야 할 부분은 다음과 같습니다. MyJavaScriptInterface 함수 : 카카오 API 페이지에서 선택한 주소 정보를 받아서 전달하는 역할 BackHandler : 카카오 API 페이지에서 뒤로 가기를 선택했을 때 처리 하는 역할 webviewClient의 onPageFinished : 카카오 API 페이지 로딩이 완료되면 주소검색 함수를 호출하는 역할 이런 정도의 역할들에 문제가 없도록 구현하는 것이 체크가 되어야 할 부분으로 생각이 됩니다. import android.annotation.SuppressLint import andro