일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 앱
- 네트워크 개념
- 제약
- retrofit
- CustomView
- 커스텀뷰
- RESTful
- gradle
- 안드로이드
- Android
- 안드로이드 통신
- REST API
- udacity
- html
- onMeasure
- 레이아웃
- Udacity Firebase
- Retrofit2
- view
- OnDraw
- 파이어베이스
- 웹프로그래밍
- 어플리케이션
- 프로그래밍
- 제약조건레이아웃
- 초보
- 안드로이드프로그래밍
- HTML 문법
- HTML 기초
- firebase
- Today
- Total
목록Programming (27)
Polyglot's language & programming story.

안드로이드 스튜디오에서 다른 라이브러리를 사용하거나 Jetpack을 이용할 때 Gradle에서 발생하는 에러이다. 이 에러는 왜 발생되는지 잘 모르겠지만, build.gradle은 2가지가 있는데(Project, app) Project에 implementation을 넣는것이 아니라, app build.gradle에 넣으면 에러가 해결된다. 관련 링크 : stackoverflow.com/questions/45783601/android-studio-kotlin-gradle-error-cannot-find-compile-method-for-argument
Gradle 에러가 떴을때는. Gradle 홈페이지에서 그 Gradle 파일을 제공을 해주는가를 살펴주어야된다. 현재 gradle에서 지원하는 사이트 https://services.gradle.org/distributions/ Gradle Distributions services.gradle.org 에 들어가서 내가 사용해서 gradle 오류가 났던 gradle 파일이 있는지 확인해보고 오타가 있는지 없는지 확인을 더 해보자. 없으면 project Files -> gradle -> wrapper -> gradle-wrapper.properties 에서 distributionUrl의 주소를 현재 맞는 gradle 파일로 바꿔주면된다.
그림을 눌렀을 때 다른 웹 사이트로 이동하는 방법에 대해서 알아보도록 하겠습니다. 이 때는 중첩 a태그를 사용해서 구현을 할 수가 있습니다. a태그 안에 img 태그를 넣음으로써 img태그를 눌렀을 때 naver 사이트로 이동하는 코드입니다. 이때는 마우스가 그림위에 있을 때 클릭 버튼으로 바뀝니다. 또한 a태그가 다른 태그안에 들어갈 수가 있습니다. 여기를 클릭하면, 네이버로 이동 위 사례처럼 p태그 안에 a태그를 넣음으로써 특별히 강조할 수가 있습니다.
태그를 사용해 클릭 버튼을 누르면 내가 지정한 위치로 이동시킬 수가 있는 방법이 있습니다. a태그는 anchor의 약자입니다. anchor (닻)의 의미가 있습니다. 사용법은 다음과 같습니다. 여기를 클릭하시면 naver로 이동합니다 anchor 태그에는 href 속성이 안에 꼭 들어갑니다. href 는 "여기를 클릭하시면 naver로 이동합니다"를 마우스로 클릭했을 때 이동시킬 장소(URL)를 뜻합니다. 그리고 href 태그를 사용해서 내부 웹페이지의 특정한 위치로 이동시킬 수 있는 방법도 있습니다. 밑으로 발자취 입니다 #을 사용해서 id가 footer인 곳으로 이동시킬 수 있는 방법입니다. 이를 사용하면 "밑으로" 라는 텍스트를 입력할 시 "발자취 입니다"로 이동합니다. 네이버 target ="_b..
HTML 기초에 관한 문서입니다. 여러분이 HTML 문서를 통해서 웹페이지를 만들 때 한 단락, 한 단락을 구별할 수가 있습니다.이 방법은 p 태그를 사용하는 것입니다. p 태그는 paragraph를 축약한 말이며 paragraph element라고 불립니다. 사용법은 다음과 같습니다. 쓰고싶은말을 적기 위 처럼 쓰고 싶은말에 을 사용해서 열고 로 닫아야 합니다.
Firebase 권한에 관해서 이 글은 Udacity 강의 내용을 정리해서 올린 글입니다.이전 포스팅에서 파이어베이스 데이터 권한을 read와 write 모두 true로 설정해서 어떤 사람이라도 입력을 받거나 받을 수 있도록 했습니다. 하지만 실제로 이런식인 앱을 출시하게 된다면 어느 누구나 앱에 접근할 수가 있어서 데이터의 보안이 취약하게 됩니다. 따라서. 권한인증(Authentication)을 통해 로그인과 로그아웃을 통해 우리 앱의 회원인 사람들만 데이터에 접근할 수 있어야합니다.또한 많은 앱중 결제를 한 사람과 결제를 안한사람의 차별을 두어야 되는 경우도 있습니다. 즉 free버전과 paying 버전의 이용자를 차별화 시킬 경우도 있는데. 이러한 문제도 권한 인증을 이용하여 해결할 수가 있습니다...
Firebase Realtime 데이터베이스를 사용해서 데이터 송수신하기 이번에도 Udacity의 예제를 이용해서 Firebase Realtime Database를 사용해서 데이터 송수신을 하는 방법을 살펴봅시다. Database 송수신 클래스를 알아보기 먼저 FirebaseDatabase 클래스와 DatabaseReference 객체를 알 필요가 있습니다. private DatabaseReference mDatabaseReference; // 데이터베이스의 주소를 저장합니다. private FirebaseDatabase mFirebaseDatabase; // 데이터베이스에 접근할 수 있는 진입점 클래스입니다. FirebaseDatabase 클래스로 실시간 데이터베이스를 접근 할 수 있고 Database..
Udacity 예제 분석 및 스튜디오에 파이어베이스 SDK 설치하기 안녕하세요. 저번 포스팅에서는 파이어베이스와 파이어베이스를 이용한 데이터베이스의 구조를 살펴보았습니다. 이번에는 udacity 주말안에 파이어베이스를 이용해서 채팅앱 만들기 강의 예제를 분석하고 안드로이드에 파이어베이스 SDK를 설치해보도록 하겠습니다. 먼저 예제 파일을 받습니다. firebase예제 파일 깃을 통해 예제를 받았으면. 이 예제를 한번 분석해봅시다. public class FriendlyMessage { private String text; private String name; private String photoUrl; public FriendlyMessage() { } public FriendlyMessage(Strin..
파이어베이스란 무엇인가? 이 글은 Udacity의 강의를 바탕으로 정리하여 만들었습니다. 하나의 어떠한 어플리케이션을 만들기 위해서는... 모든 상용화된 앱은 네트워크를 통해 데이터를 주고 받지만, 이 과정이 항상 쉽지가 않습니다. 데이터가 어디에 저장되어야 될지도 고려해봐야되고, 데이터베이스는 서버랑도 연결이 되어있어야되고.. 또한 파일 저장 공간도 서버랑 연결을 시키고 .. 이 모든 데이터베이스 서버를 서로 합치는 과정이 절대로 필요합니다. 위의 데이터 서버끼리도 묶여야된다. 또한 유저 가입, 광고 보여주기, 알람발생등 이런 것들을 서버로 구현해야되고 이런 것을 고려하면서 클라이언트를 구현하기도 무척이나 어렵습니다. 하지만, 파이어베이스를 사용하게 되면 이런 기반 인프라를 생각하지 않고 구현을 할 수..
안녕하세요 ! 오늘은 MVP 패턴에 관해서 알아보도록 하겠습니다. 안드로이드 프로그래밍을 하다보면 액티비티에 로직 코드를 넣어서 코딩을 하는 경우가 많은데요.그러다보면 코드가 얽히고 섥혀서 나중에 코드를 리뷰하거나, 추가, 수정을 할때 복잡해서 힘들 때가 분명 생깁니다.(그러한 코드를 스파게티 코드라고 부릅니다.) 이를 방지하기 위해서 많은 프로그래머가 어떻게 하면 방지할 수 있을지를 논의하였고 MVP 패턴을 사용하면 스파게티 코드를 방지하고 코드의 간결함과 유닛 단위 테스트를 하기 용이하다고 말합니다. 그렇다면 MVP 패턴이란 무엇일까요?? 1. MVP 패턴의 기본요소 MVP 패턴은 Model, View, Presenter 3개의 층으로 프로젝트를 구성하는 방법을 말합니다. Model(모델) : 데이터..