전체 글 29

VPN 앱 제작기 #1

오늘 강의 완주를 끝내고, 머리를 식힐겸 새롭게 앱을 하나 제작해보기로 했습니다. 가장 많이 쓰일 앱이 무엇일지 플레이스토어를 둘러봤어요. 그러다가 VPN 앱이 눈에 들어와서 한번 제작 해보기로 마음을 먹었습니다. 저는 제 VPN앱 이름을 Omega VPN으로 결정했고, 검색해봤는데 아직 없어서 제작하기로 했습니다. 이 VPN 앱이 꺼져도 여전히 뒤에서 백그라운드에서 돌아가야하기 때문에 서비스?라는 기능을 이용해야하더라고요. 그래서 MainActivity 파일 말고, MyVpnService.kt 로 파일을 하나더 만들어줬습니다. MyVpnService.kt 더보기 import android.app.Notification import android.app.PendingIntent import android..

코딩 일지 2024.02.01

안드로이드 스튜디오 by lazy 코딩 (초기화버튼 만들기)

by lazy 코딩은 도대체 무엇인지에 대해 탐구하다가 코딩을 분해해서 사용해보았습니다. 그렇게 탄생한 초기화 버튼 샘플 프로젝트입니다. 우선 왜 다시 처음으로 돌아가는 초기화 버튼에 by lazy 코딩이 쓰일까? 이것이 제 첫 질문이었습니다. Lazy by 코딩은 Kotlin(Android)에서 사용되는 코드로, Android 앱 개발에 자주 사용되는 코드 패턴 중 하나인 "Lazy Initialization(지연 초기화)" 입니다. 한마디로 변수죠. 일단 저희가 생각하는 초기화와 이 코딩에서 생각하는 초기화는 완전히 틀립니다. 제가 이해한 것이 맞다면 코딩에서 초기화 명령어를 넣으면 말그대로 전체 화면이 비어져 리셋되는 것입니다. 하지만 제가 원하는 것은 특정 객체의 데이터를 초기화시키는 것이고요. ..

안드로이드 스튜디오 로또앱

어찌저찌해서 로또앱을 만들었습니다. 코딩을 하는 부분에서 이상은 없었습니다만, 앱을 실행할때 계속 안되서 윗부분을 챗 GPT를 이용하여 수정했습니다. class MainActivity : AppCompatActivity() { private val clearButton by lazy { findViewById(R.id.btn_clear) } private val addButton by lazy { findViewById(R.id.btn_add) } private val runButton by lazy { findViewById(R.id.btn_run) } private val numPick by lazy { findViewById(R.id.np_num) } private val numTextViewLis..

안드로이드 스튜디오 도형 만들기

오늘은 안드로이드 스튜디오로 도형을 만드는 방법에 대해 작성해보겠습니다. 우선 안드로이드 스튜디오를 열어주시고 Drawable 폴더를 우클릭 하고 새파일을 클릭해주세요. 여기에서 만들어낼 도형의 이름을 정해주세요. 사각형이면 Rectangle, 원이면 Circle 또는 Oval로 정해주세요. 어떤 이름이든 상관없지만 반드시 뒤에 .xml 이 붙어줘야합니다. 자 그러면 생성된 파일을 더블클릭하셔서 코딩을 넣어주시면 됩니다. width가 가로길이, height가 세로 길이입니다. 빼고 싶은 기능은 아예 그 부분만 지워주시면 됩니다. //여기에서 모양을 지정해주세요. 원은 Oval //색상코드 입력해주세요. 하얀색은 #FFFFFF //만약 둥근 사각형을 만들고싶으면 radius에서 숫자를 넣어주면 됩니다. /..

초보의 앱개발

오늘 내일배움캠프 사전캠의 강의를 보면서, 다음 강의로 진도를 나갈려고 했으나 BMI 테스트 하는 앱이 조금 아쉬워서 조금 더 손을 봤습니다. 그러다가 보니 4시간이 훅 갔습니다. 우선 완성된 앱 플레이 영상입니다. 오늘 배운 것은 안드로이드 스튜디오애서 앱 로고 이미지 변경과 Splash장면을 바꾸는 기능이었습니다. 이 BMI 코딩은 Edit Text에서 기믹이 추가 되어있는데, 그걸 간단하게 요약해서 정리했습니다. EditText의 텍스트를 숫자로 변환하는 코딩 //숫자로 값을 변환해야하는 EditText칸 선정 val NumEditText = findViewById(R.id.선정한 칸의 ID) //숫자로 변환 val Num : Int = NumEditText.text.toString().toInt(..

코딩 일지 2024.01.25

안드로이드 스튜디오 Button 버튼 코딩

앱에서 흔하게 보이는 버튼은 어떻게 작동할까요? 보통 버튼은 누르면 다른 화면으로 넘어갑니다. 앱을 이용했을때 정말 단순한 기능이지만, 사실 알고 보면 이 간단해 보이는 버튼에 코딩이 숨겨져있습니다. 지정된 이미지를 버튼으로 수행할 수 있게 객체로 지정하며, 그 객체에 코딩을 넣음으로서 단순하게 누른 것만으로 다음 화면으로 넘어갈 수 있는 코딩을 새긴 것입니다. 완전히 무에서 유를 창조하는 것이 아니라 이미 있는 안드로이드 스튜디오 라는 템플릿에서 이들이 원하는 언어를 작성해 앱 기능을 구현하는 것입니다. 시작하기 전에 유의하실 점 안드로이드 스튜디오에서 새로운 프로젝트를 열어주세요. 프로젝트를 열 때 파일이 안열리면 아래 링크를 통해 확인해주세요. 보통 유저명이 한국어라서 안 열려지는 경우인데 아래링크..

앱스타터

내가 앱 트랙 Android에 참여한 계기는 무엇인가요? 직장에서 일하던 도중, 어쩌다가 NFT 프로젝트에 참여하게 되었습니다. 프로젝트 초창기다보니 인원이 적었고, 저는 다양한 분야에 일할 기회를 가지게 되었습니다. 디스코드 커뮤니티 관리자로 서버 관리 및 커뮤니티 관리를 했고, 점점 제가 맡겨지는 일이 많아져 어느새보니 제가 코딩을 하고 있었습니다. 유튜브를 보면서 깃허브에 있는 템플릿을 수정해서 NFT 만개를 만들기 시작해서, 어느새 보니까 챗GPT로 코딩을 해서 쿠폰 제작 코딩을 파이썬으로 만들고 있었고 서버에 이용할 수 있는 디스코드 봇을 개발하고 있었습니다. 그래서 어설프게 독학하는 것보다 제대로 배우고 싶다는 욕심이 생겨서 안드로이드 앱트랙에 지원하게 되었습니다. 내가 이해한 앱개발자는 어떤..

코딩 일지 2024.01.24

안드로이드 스튜디오 앱 실행 화면 미리보기 기능

오늘은 안드로이드 스튜디오에서 앱 실행화면을 미리보는 기능을 습득했습니다. 이 기능은 앱을 테스트 할 때 사용됩니다. 앱이 잘 작동되는지, 모션이 이상하지 않는지를 번거롭게 핸드폰에 다운 받지 않고 컴퓨터로 앱실행을 미리 보는 기능입니다. 우선 이전 글에서 말씀드렸듯이, 안드로이드 스튜디오를 실행시킨 후에 새 프로젝트를 엽니다. 새 프로젝트를 열면 아래 화면처럼 될텐데, 저희는 이제 여기 우측에 있는 Device Manger를 클릭할 겁니다. 우측에 하얀색과 노란색으로 표시한 곳을 클릭하시면 됩니다. Decive Manger를 클릭하면 우측에 새로운 칸이 형성됩니다. 이렇게 저처럼 우측에 있는 칸이 깨끗하게 비어있을 겁니다. 하얀 동그라미로 표시된 + 버튼을 클릭해주세요. 그러면 아래 화면 창처럼 화면이..

안드로이드 스튜디오 설치 your project cantains not apcii character

안드로이드 앱 개발하려면 필요한 프로그램인 안드로이드 스튜디오. 저는 오늘 처음으로 설치했는데 난관을 거쳤습니다. 새 프로젝트를 만들려고 하는데 저 문구가 뜨면서 진행이 멈춰버렸습니다 위 하면 처럼 아래에 빨간 느낌표와 함께 Your project location contains non-ASCII characters 라는 문구가 형성됩니다. 이건 경로에 한글이 포함이 되어있어서 진행이 안된다는 문구입니다. 보통 설치하셨을때 프로젝트 저장 경로를 아래처럼 되있을 것입니다. C:\Users\한글이름\Androidproject\프로젝트 영문이름 처음에는 이 Users 파일에 포함되어있는 제 이름으로 된 파일을 영문으로 바꿀려고 시도했지만, 잘 안됬습니다. 그래서 아주 간단한 방법을 고안했습니다. 이렇게 위에처..