* 이번에는 자동 로그인 등과 같은 기능을 구현할 때 유용하게 사용할 수 있는 기능인 SharedPreference에 대하여 알아보도록 하자. - 이전 글 2012/11/07 - [Android(안드로이드) 앱 개발 기초] 안드로이드 프로젝트 생성하고 에뮬레이터로 앱 실행하기 2012/11/10 - [Android(안드로이드) 앱 개발 기초] 간단한 인터페이스 구현과 다른 Activity로 넘어가기 2012/11/21 - [Android(안드로이드) 앱 개발 기초] Activity 라이프사이클 공부 2012/11/24 - [Android(안드로이드) 앱 개발 응용] Google Map API로 지도 보여주기(MapView), Overlay Item 그려주기 예제 2012/11/28 - [Android(안..
* 이번에는 음악 재생을 위하여 사용하게 되는 MediaPlayer의 개발자 매뉴얼을 살펴보도록 하자. 음악을 재생할 때 주의할 점들과 각종 상황들에 대한 다양한 팁들을 포함하고 있어서 읽어보면 매우 유익할 것이다. - 이전 글2012/11/07 - [Android(안드로이드) 앱 개발 기초] 안드로이드 프로젝트 생성하고 에뮬레이터로 앱 실행하기2012/11/10 - [Android(안드로이드) 앱 개발 기초] 간단한 인터페이스 구현과 다른 Activity로 넘어가기2012/11/21 - [Android(안드로이드) 앱 개발 기초] Activity 라이프사이클 공부2012/11/24 - [Android(안드로이드) 앱 개발 응용] Google Map API로 지도 보여주기(MapView), Overlay..
* DB로 직접 접근하기 vs ContentProvider 사용하기?: 안드로이드에서는 기본적으로 SQLite를 사용할 수 있도록 API를 다양하게 편리하게 제공해주고 있다. 하지만, 이러한 SQLite는 기본적으로 해당 DB를 생성한 앱에서만 접근이 가능한 제약 사항이 있기 때문에, 앱간의 공유가 어려웠었다. 하지만, 이제는 안드로이드에서 기본적으로 주소록이나 콜로그 등에 대해서 ContentProvider를 통해서 데이터를 제공해주고 있고, Android SDK에서도 해당하는 내용을 사용할 것을 권하고 있다. 만약 앱에서 데이터를 내부적으로만 사용한다면, 굳이 ContentProvider를 사용하지 않아도 되고, 사실 ContentProvider를 처음에 접하게 되면 익숙하지 않기도 하고 제대로 된 ..
* 최근 SNS와 웹사이트를 연동하는 일들이 많아지면서, 많은 사이트들이 페이스북 로그인과 연동을 하고 있다. 페이스북에서 어떻게 로그인 연동을 해야 하는지 한번 알아보자. * 자바스크립트 SDK를 이용한 페이스북 로그인: 페이스북 앱들은 동작하는 장비나 프로젝트에 따라서 몇 가지의 로그인 단계를 거치게 된다. 이번에는 웹앱에서 로그인하는 단계를 한단계씩 알아볼 것이다. 여기서는 웹사이트인 경우 페이스북에서 추천하는 로그인 방식인 페이스북에서 제공하는 자바스크립트 SDK를 사용해서 페이스북 로그인을 할 것이다. 만약 자바스크립트 SDK를 사용하지 못하는 상황이라면 페이스북에서 제공하는 별도의 로그인 절차를 수동적으로 생성해야 할 것이다. * 빠른 시작: 일단 먼저 어떻게 구현해야 하는지 빠르게 훑어본 다..
* 옛날에 개발해뒀던 인스타그램에서 사진을 수집하는 크론이 갑자기 실행이 안되길래 원인을 분석해보니, 어느새부터인가 curl에 줘야하는 옵션이 바뀌었나보다. SSL 문제 이후에 보안을 더 신경 썼는지 curl을 실행하고나면 아래와 같은 오류가 나타났다. SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed : 이것을 해결하려면 간단하게 curl의 옵션을 추가하면 된다. curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt ($ch, CURLOPT_S..
* PHP로 RESTful API를 개발하다보면 가끔 AJAX(XMLHttpRequest)를 이용해서 호출하는 경우 로그인 정보를 유지하여 정보 검증을 해야하는 경우가 있는데, AJAX를 이용하는 경우에도 php의 $_SESSION 정보는 활용할 수 있다. 이것을 이용해서 페이지에서 로그인한 정보를 확인하고 검증이 안된 사용자에 대해서는 권한이 없음을 알려주면 권한 관리에 용이하다. * 하지만 php 페이지에서 바로 $_SESSION을 사용하면 로그인 정보를 가져올 수가 없고, session_start();를 AJAX처리하는 PHP 페이지 상단에 넣어야 정상적으로 동작하게 될 것이다. 아래가 아주 간단한 예이므로, 응용하면 된다. API 호출하는 페이지 예 ./api.php 페이지 소스 예 * 잊지말고 ..
* PHP를 통해서 원격에 있는 이미지를 긁어오거나 복사하고 싶을 때가 많은데 예외상황이 많을 것이다. 한번 예외상황들에 대해서 적어보고, 특히 php.ini를 마음대로 수정못하는 웹호스팅을 하고 있다면 꽤나 골치 아플 일이 많을 것이다. : 일단 첫번째로 확인해야될 제약사항은 php.ini에서 "allow_url_fopen"이 "on" 되어있어야한다는 것이다. 만약 이것이 on 되어있다면 원격의 파일을 꽤나 쉽게 가져올 수 있다. * copy 함수를 이용해서 원격 이미지 가져오기: 우선 가장 간단하게 가져올 수 있는 방법은 copy 함수를 쓰는 것이다. copy("http://remotedomain.com/image.jpg", "/tmp/local.jpg"); : 위와 같이 하면 바로 원격의 파일을 로..
* 이번에 개인적으로 작은 프로젝트를 하나 하게 되면서 새로이 nodejs와 heroku에다가 올려놓고 간단하게 하면 좋겠다는 생각이 들어서 오랜만에 heroku를 다시 세팅하고 nodejs를 해보았다. 익숙하지 않지만 새로운 영역에서 개발하고 그것이 성공적이라면 너무나 재미있다! (실패하게 되면 물론 짜증나지만..) 이번에 개발할 때 heroku에 eclipse 플러그인을 사용해서 개발해봤는데 무료서버호스팅 서비스 중 하나인 Heroku의 플러그인과 Eclipse를 연동하는 것을 해보자. * Eclipse plug-in 설치: heroku에서는 플러그인으로 이클립스에서 개발을 할 수 있는 환경을 제공해주고 있다. 물론 heroku는 git를 기반으로 호스팅 서비스를 제공하고 있기 때문에 git의 플러그..
* 웹페이지의 성능에 대한 인식이 뛰어나지 않은 국내 시장에서 다양한 웹페이지의 성능 진단 및 최적화를 진행함으로써 다양한 데이터를 모으려고 한다. 아직은 많은 데이터를 수집해야하는 시기라 실제 진단하는 케이스들과 최적화를 하는 케이스가 있으면 천천히 하나씩 블로그에 포스팅을 하려고 한다. : 현재까지 국내에서는 백엔드의 성능에 치중한 성능 최적화가 많았지만, 실제로 웹페이지가 사용자의 브라우져에 뜰 때까지 걸리는 모든 시간의 80%~90%는 서버의 백엔드가 아닌 프론트엔드인 브라우져에서 할애하게 된다. 따라서, 프론트 엔드에서 사용자들에게 직접적으로 UX에 영향을 주는 사항들에 대하여 검토하고 진단 그리고 나아가 최적화를 시킬 수 있는 방향까지 제시하고자 한다. 현재까지 해외에서는 웹페이지의 성능에 대..
* 이번에 localStorage를 사용하면서 안드로이드에서는 되는데 아이폰에서만 안되는 독특한(?) 현상 때문에 애를 먹다가 옛날에 모바일 브라우져 환경에서 디버깅을 하는데 사용했던 툴을 깔아야하나 고민 중이었는데, 아이폰용 사파리의 아주 편리한 기능을 알게 되었다. 작년에 웹페이지에 라이브러리를 깔아가면서 모바일을 디버깅했던 때와 비교하면 아주 혁신적으로 엄청 편리해진 것을 발견할 수 있을 것이다. * 웹속성 사용하기 : 모바일에서 디버깅을 하기 위한 툴이 부족한 상황에서 모바일에서의 자바스크립트를 디버깅하는 것은 매번 alert를 띄우거나 조금 부실한 아이패드에서 사파리 디버깅 콘솔을 설정해서 console.log를 사용하는 정도이었는데, 이 웹속성 기능을 사용하게 되면 조금 느리기는 하지만 마치 ..
- Total
- Today
- Yesterday
- 안드로이드 앱 개발 기초
- google app engine
- 자바스크립트
- 강좌
- Javascript
- c++
- HTML5
- 탐론 17-50
- K100D
- GX-10
- php
- gae
- 서울
- gre
- Android
- 속깊은 자바스크립트 강좌
- Writing
- ny-school
- 뽐뿌
- 사진
- java
- mini project
- TIP
- HTML5 튜토리얼
- 샷
- 팁
- Python
- 삼식이
- lecture
- 안드로이드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |