넥서스 5에 안드로이드 M 개발자 프리뷰 설치하기

한동안 elementalx 커널(http://elementalx.org/devices/nexus-5/)
과 cataclysm 롬(http://forum.xda-developers.com/google-nexus-5/orig-development/rom-cataclysm-nexus-5-t2518660)
으로 폰을 써 왔다.
순정 롬보다 더 좋은 점을 딱히 찾지 못했고, 종종 폰을 재부팅 해주지 않으면 느려지는 현상도 있었다.
그래서 롬을 새로 설치할까 고민하던차에 마침 android m preview버전의 소식을 듣고 폰을 갈아 엎었다.

설치 방법은 간단하다.
넥서스 5,6,9와 Nexus Player용 이미지를 다운 받는다.(http://developer.android.com/preview/download.html)
압축을 풀고 폰을 연결한다.
adb reboot bootloader 커맨드를 입력한다.
flash-all 커맨드를 입력하여 이미지를 설치한다.

리커버리는 TWRP(https://twrp.me/devices/lgnexus5.html)와 CWM(https://www.clockworkmod.com/rommanager/developers/hammerhead?name=Google%20Nexus%205)모두 설치가 되지만, 롬에서 바로 재부팅을 하면 무한부팅이 된다.
리커버리에서 필요한 이미지를 플래싱 했다면, fastboot모드로 들어가서 fastboot reboot 커맨드로 재부팅 해주자.

Android M에서는 Settings/Storage에서 Media device(mtp)나 Camera(PTP)모드 연결을 설정하지 못한다.
백업한 파일을 옮겨야 하는데 난감했다.
설정하는 방법은 아래와 같다.
  1. 설정(Settings)/폰 정보(About phone)에서 Build number를 터치하여 개발자 옵션을 활성화 한다.
  2. 개발자 옵션(Developer options)에서 USB debugging모드를 활성화한다.
  3. USB에 폰을 연결한다.
  4. 공지 창(notification bar)를 내린다.
  5. 실행중인 앱(ongoing) 에서 Touch for other USB options가 써있는 곳을 누른다.
  6. MTP로 설정한다.

그리고 Android M은 아직 루팅이 되지 않는다.
인터넷에 루팅 방법이라고 떠도는 방법들을 여럿 시도했으나, 무한 부팅(bootlooping)에 빠진다.
http://www.ibtimes.co.uk/how-root-nexus-6-5-9-android-m-developer-preview-build-mpz44q-1503606
http://wccftech.com/how-to-root-nexus-5-on-android-m/
혹 궁금하다면 위 링크를 보고 따라하면 무한부팅을 경험할 수 있다.
루팅이 되려면 Chainfire님이 SuperSU를 업데이트 해주시기를 기다려야 겠다.

Androd M을 새로 설치하니 런처의 앱 정렬이 가장 눈에 띄인다.
즐겨쓰던 야후의 Aviate처럼 알파벳 순 정렬이 되어 좋다.
최근 실행 앱 모두 종료 옵션이 없어서 좀 아쉽지만,
이대로라면 커스텀롬이나 런처 설치가 없어도 충분히 괜찮은 것 같다.
베터리도 예전 보다 더 오래가는 기분이다.(정확한 측정을 안해서 기분탓일 수도 있지만...)
그리고 반응속도도 전보다 빨라진 기분이다.(앱이 별로 안깔려서 그런지...)
롤리팝에서 돌아가던 앱은 Android M에서도 대체로 잘 돌아간다.
Push 알림에 이미지가 실려 나온다.
특정 시간에 알림을 받지 않는 설정이 기본 설정에 포함되어 있다.
넥서스 5에서 아래 오류 메시지와 함께 스크린샷이 안찍힌다.
Couldn't capture screenshot" can't take screenshot due to limited storage space, or it isn't allowed by the app or your organisation.
롤리팝에서 있던 버그라는데 이번에 처음 겪어본다.
롬을 새로 깔면 잘 된다고 하는데, 또 무슨 문제가 있을지 모르니 정식 버전이 나올 때 까지는 그대로 써야겠다.
Android M
아직 개발자용 프리뷰라 좀 불안정하지만, UI등 여러 측면에서 롤리팝 때보다 낫다.

참조

http://lifehacker.com/how-to-install-the-android-m-developer-preview-on-your-1707530107
http://support.wondershare.com/how-tos/why-can-t-i-find-usb-storage-mode-on-my-device.html
http://forum.xda-developers.com/apps/supersu



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

안드로이드 4.4 킷켓(kitkat)에서 5.0 롤리팝(lollipop)으로 업데이트.

안드로이드 롤리팝 버전이 나온 지 한참인데 넥서스 5에서 자동 업데이트가 되지 않아서 주말을 맞아 수동으로 업데이트했다.

구글 넥서스 5 롤리팝 버전 수동 업데이트 순서

  1. 우선 중요 파일과 앱을 백업한다. 지워져도 서운하지 않을 파일만 남긴다.
  2. https://developers.google.com/android/nexus/images#hammerhead 에서 안드로이드 5.0.1 (LRX22C)이미지를 받아 압축을 푼다.
  3. 넥서스 5 전원이 꺼진 상태에서 전원+소리 크게+소리 작게 버튼을 동시에 눌러 빠른부팅모드(Fastboot)로 진입한다.
  4. USB 케이블을 이용하여 컴퓨터에 넥서스 5를 연결한다. (usb 3.0 포트에 꼽으면 fastboot에서 인식을 못 하기도 하니 usb2.0포트에 꼽는다.)
  5. 심호흡을 한다.
  6. flash-all.sh 스크립트를 실행하여 넥서스5 에 이미지를 넣는다. (윈도우즈 사용자는 flash-all.bat)

스크립트를 살펴보면 아래와 같다.
fastboot flash bootloader bootloader-hammerhead-hhz12d.img
fastboot reboot-bootloader
sleep 5
fastboot flash radio radio-hammerhead-m8974a-2.0.50.2.22.img
fastboot reboot-bootloader
sleep 5
fastboot -w update image-hammerhead-lrx22c.zip

부트로더, 라디오, lrex22c버전 이미지 순서로 설치한다.
여기서 아차 싶었다.
커스텀 리커버리를 통해 롬을 설치할 땐 Wipe 메뉴에서 지울 데이터를 선택하여 지우고 롬을 올리면 되는데 이건 싹. 밀어버린다.
내부 저장소에 저장된 파일까지 몽땅.
백업을 해 두긴 했으나 티타늄 백업으로 백업한 apk는 컴퓨터로 옮겨두지 않았는데 모두 다 지워졌다.
새해는 새 기분으로.
폰을 새로 산 기분이다!
혹시나 해서 연락처와 사진은 컴퓨터로 옮겨 두어서 다행이다. 비록 즐겨듣던 노래는 모두 사라졌지만.
아무튼, 이제 넥서스5가 공장 초기화 상태가 되었다.
내친김에 롬도 새로 깔고 커널도 바꾸어 깔아보자.

TWRP recovery 설치

공장초기화 되었기 때문에 우선 커스텀 리커버리를 설치해야 한다.
openrecovery-twrp-2.8.4.0-hammerhead.img
(https://www.androidfilehost.com/?fid=95897840722643055)파일을 받아 fastboot로 설치한다.
fastboot flash recovery openrecovery-twrp-2.8.4.0-hammerhead.img
fastboot모드에서 음량버튼으로 recovery를 선택하여 TWRP로 들어간다.

Cataclysm 롬 설치.

  1. http://forum.xda-developers.com/google-nexus-5/orig-development/rom-cataclysm-nexus-5-t2518660 페이지에서 롬을 내려받는다.
  2. TWRP에서 Wipe메뉴로 가서 internal storage를 제외한 데이터를 날려준다.
  3. 전원을 끈다.
  4. TWRP recovery로 진입한다.
  5. Install 메뉴에서 Cataclysm이미지를 설치한다.
    Wipe후 바로 설치하려고 하면 오류가 발생한다.

ElementalX 커널 설치

  1. http://elementalx.org/devices/nexus-5/에서 ElementalX-N5-2.05를 다운받는다.
  2. TWRP recovery로 진입한다.
  3. Install 메뉴에서 ElementalX커널을 설치한다.
    Cataclysm을 설치하고 재부팅 없이 바로 ElementalX커널을 설치해도 된다.

설치 후기

가벼운 느낌이다.
기분 탓인지 터치 감도가 떨어지는 것 같다.
Cataclysm + ElementalX가 배터리 소모가 적다는데, 아직 피부로 와 닿지는 않는다.

음악이 다 지워져서 허전하다.
낡은 PC를 뒤적거리다가 즐겨찾기 음악 폴더를 발견했고, 십 년도 더 된 노래를 옮겨 담았다.
집을 나서 음악을 틀었더니 이어폰 선을 타고 귀로 퍼진다.
흥겨운 리듬을 타고 머리가 절로 흔들거린다.
덕분에 나도 이십 대로 돌아간 듯 발걸음이 가벼워졌다.

One T Cool T - The Magic Key



by


Tags : , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

android kitkat을 탑제한 구글 레퍼런스 폰. nexus5.


휴대폰 분실로 갑작스럽게 폰을 바꿨다.
쓰지도 않는 제조사와 통신사 앱이 잔뜩 깔려있는게 피곤해서 선택한 nexus5.
취향따라 설정해 쓰는 재미가 쏠쏠하다.


박스-'nexus5'


Arch Linux에 android sdk 설치하기.

sudo yaourt -S android-sdk
sudo yaourt -S android-udev
sudo yaourt -S android-sdk-platform-tools

environment path를 설정한다.
android를 실행시켜서 sdk 받음

nexus5 USB 마운트 하기

MTP설정

  1. nexus5 설정 메뉴로 이동
  2. 저장소(storages) 선택
  3. 우측 상단의 메뉴 버튼 선택
  4. USB 컴퓨터 연결 선택
  5. MTP 체크

USB 디버깅 설정

  1. nexus5 설정 메뉴로 이동
  2. About Phone(휴대전화 정보) 메뉴로 이동
  3. Built Number(빌드 번호) 를 여러번 탭
  4. 다시 nexus5 설정 메뉴로 이동
  5. Developer Options(개발자 옵션) 선택
  6. USB Debugging(USB 디버깅) 체크

adb에서 nexus5를 장치로 인식하지 못할 때.

sudo adb kill-server
sudo adb devices

lsusb로 연결 확인 (케이블 문제로 연결이 안될수도 있으니 확인한다.)

fastboot devices에서 nexus5를 장치로 인식하지 못할 때.

  1. 넥서스5 전원을 끈다.
  2. Volume Up(소리크게), Volumn Down(소리 작게), Power(전원) 버튼을 동시에 누른다.

adeb devices에 nexus5가 잡혔는지 확인 후 다음 커맨드를 입력한다.

fastboot oem unlock
볼륨키로 YES를 선택한 후 전원키를 눌러 확인한다.

fastboot reboot 커맨드로 nexus5를 재부팅 한다.

nexus5에 커스텀 리커버리 TWRP 설치

fastboot flash recovery ~/openrecovery-twrp-2.7.0.0-hammerhead.img

TWRP 실행

  1. 볼륨키로 Rstart Bootload 선택한다.
  2. 전원 버튼을 누른다.
  3. 부트로더가 reload 된다.
  4. 볼륨키로 Recovery Mode를 선택한다.
  5. 전원 버튼을 누른다.

nexus5에 커스텀 롬 설치

설치한 커스텀 롬은 carbon(https://carbonrom.org/downloads/?device=hammerhead&type=nightly)으로 깔끔해서 마음에 든다.

  1. Wipe 선택
  2. Dalvik Cache, System, Data, and Cache 선택
  3. Swipe to Wipe
  4. TWRP 메인 메뉴로 이동
  5. Install
  6. Custom Rom 설치
  7. Gapps 설치
  8. Reboot And System

nexus5 루팅하기

nexus 5를 리커버리 모드로 켜고, 컴퓨터에연결된 상태에서 아래 커맨드를 실행한다.
adb push UPDATE-SuperSU-vX.XX.zip /sdcard/
1. TWRP 메인 메뉴로 이동
2. Install
3. SuperSu 설치
4. Reboot And System
금융어플을 사용할 경우 spapa님의 뱅킹 SuperSu(http://spapa1004.tistory.com/188)를 받아 설치하면 된다.


nexus5 루팅상태로 은행 앱 사용하기 (http://cafe.naver.com/develoid/402823)

develoid의 팁을 참조하여 적용하였으나, 루팅감지를 회피하지 못한다.
1. SELinux Mode Changer 설치
2. PERMISSIVE로 선택
3. 재부팅
4. Cydia Substrace 설치
5. Link Substrace Files 선택
6. 재부팅
7. RootCloak Plus 설치
8. Add/Remove에서 루팅감지 회피할 앱 선택
9. 재부팅


nexus5 유용한 앱


nexus5 팁


참조



by


Tags : , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

스마트폰 잃어버렸을 때 원격에서 잠금‧초기화. Android device manager.

요즘 대부분의 사람이 스마트폰을 이용한다.
그만큼 도난‧분실도 잦은데 막상 스마트폰을 잃어버린다면, 하드웨어뿐 아니라 소프트웨어도 함께 분실한다.
중요한 자료가 스마트폰에 담겨있다면?
주소록의 연락처가 모두 유출된다면?
공인인증서가 남의 손에 넘어간다면?
가뜩이나 휴대폰 잃어버린 것도 서러운데, 정보까지 유출될까 걱정해야 한다니!

구글에서는 이를 어느 정도 해소해줄 방법을 제공한다.
안드로이드폰은 구글 계정과 동기화할 수 있는데, 동기화에 성공하면 안드로이드 기기관리자를 통해 스마트폰을 원격에서 제어할 수 있다.

현재 위치를 추적하고, 벨을 울리도록 하며, 화면도 잠그고, 기기의 초기화까지 제공한다.
단, 휴대폰에 원격에서 접근할 수 있는 상태(전원이 켜져 있고, WIFI나 데이터네트워크가 가능한 상태)여야만 한다.
온라인에서만 작동한다는 것은 아쉽지만, 스마트폰 분실‧도난에 대비하여 미리 설정해 둔다면, 기기가 없어졌을 때 발 빠른 조치를 할 수 있다.
이걸 미리 알았다면 어제 휴대폰을 잃어버리자마자 조치를 했을 텐데, 늦게 알게 되어 아쉽다.

안드로이드 기기 관리자 (https://www.google.com/android/devicemanager)


안드로이드 기기 관리자는 휴대폰의 전원이 꺼져있다면 방법이 없지만, 오프라인 상태의 스마트폰 이동 경로를 추적하는 방법이 있다.
스마트폰의 지난 이동 경로를 보려면 구글 지도의 지난 이동 경로 보기를 이용하는 것이다.
지난 이동 경로를 본다고 해도 휴대폰에 아무런 조치를 할 순 없지만, 휴대폰이 꺼져있는 경우 마지막 위치를 확인하는 데 도움이 된다.
구글 지난 경로 보기-'안드로이드 기기 지난 경로 보기'

나의 구글 지난 경로 보기로 다시 본 결과, 나의 스마트폰은 분실지점에서 45분가량 주인을 기다리다가, 주인이 휴대폰을 찾으러 그 장소에 다시 도착하기 10분 전부터 이동을 시작했다.
이동속도로 보면, 휴대폰은 자전거로 이동한 듯 보인다. 마지막 신호는 도림천에서 끊겼다.

혹시 2014년 04월 25일 오전 9시 55분경 서강대교 인근 한강변 의자에서 휴대폰을 습득하시고, 한강변과 안양천을 따라 자전거를 타신 후, 2014년 04월 25일 오전 10시 56분경 도림천에 도착하신 분이 이 글을 보신다면 연락 주시면 좋겠다.
약 10KM를 달리는데 45분가량 걸린 걸로 추측건대 천천히 라이딩을 즐기시는 여유로운 분으로 생각된다. :D

구글 지도 지난 경로 보기 (https://maps.google.com/locationhistory)



이동전화를 분실하여 통신사에 분실‧도난 신고를 했다면, 이동전화 단말기 자급제 사이트에서 신고가 제대로 되었는지 IMEI 번호를 통해 확인할 수 있다.
이동전화 단말기 자급제(http://www.checkimei.kr/search/search_1.php)

분실된 휴대폰을 찾고 싶다면, 아래의 사이트에서 확인할 수 있다.


분실된 스마트폰 찾기



by


Tags : , , , , , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

크롬 개발자들이 들려주는 개발 노하우. Chrome developer day.

오랜만에 오프라인 강연을 들었습니다.
Chrome developer day.
평소 사용하는 Devtool 활용법과 PageSpeed 세션을 들으려고 갔어요.
PageSpeed는 뭔가 새로운 팁을 듣고 싶었는데 일반적인 이야기뿐이라 좀 아쉬웠습니다.
그래도 원래 들으려던 강연 말고도 전체적으로 만족스러웠어요.
특히 렌더링 관련 강연이 좋았습니다.
또 이런 좋은 행사가 열리면 찾아들어야겠어요.:D


신기술

flex-direction과 Position: sticky등 CSS와
Geolocation, Orientation등 자바스크립트 기능을 소개했다.
가장 눈에 띄었던 건 Offline events인데 네트워크에 연결되지 않은 상태라면 웹사이트에서 이를 인식한다. 이걸 이용하면 오프라인시에 웹에서 안내를 제공하면 되겠다.
localSotrage, Websql, indexdb 세 종류의 storage API도 소개했다.
semantic input types는 사용성 향상에 도움을 준다.
성능 측정이 필요하면 navigation timing API나 Resource timing API를 쓰면 된다.
그 밖에도 Camera, Web audio, getuserMedia, Web rtc(real time communication), webGL, android intend (QR) 등도 간략히 소개했다.


Polymer 라이브러리.

Web components.
DOM 엘리멘트로 되어있어 친숙하다.
그러나 템플릿 코드와 혼재하여 사용하면 코드가 지저분해지겠다.


DevTools

workspace를 이용하면 페이지 새로 고침을 하지 않고 실시간으로 확인할 수 있다.
workspace를 사용하려면 resource에서 원하는 파일을 add to workspace로 추가 해 주어야 한다.
sass와 less도 지원한다.

모바일 웹 환경에서 리모트 디버깅(https://developers.google.com/chrome-developer-tools/docs/remote-debugging)을 사용하면 편리하다.

타임라인(https://developers.google.com/chrome-developer-tools/docs/timeline)

  • 파랑은 로딩(Loading)
  • 노랑은 스크립팅(Scripting)
  • 보라색은 렌더링(Rendering - Recalculate Style)
  • 녹색은 그리기(Paint)

적절한 타임라인 순서 예시

  • Function Call
  • Recalculate Style
  • Layout
  • Paint Setup
  • Paint
  • Composite Layers

DevTools 페이지에 들어갔다가 테마를 입맛에 맞게 바꾸는 법을 발견해서 취향대로 바꿨다.
zerodarkmatrix(https://github.com/mauricecruz/chrome-devtools-zerodarkmatrix-theme)테마 참 잘 만들었다. 테마는 아래 폴더에 넣으면 된다.
Chromium: ~/.config/chromium/Default/User\ StyleSheets/

Html5 Games

Canvas, WebGL(OpenGL ES 2.0)(2007년에 나왔는데 IE11에서 이를 지원한다.), WebAudio, Fullscreen API, Pointer lock API, Web Workers, PNaCl(Portable Native Client) 등의 라이브러리를 이용하여 게임을 개발하면 된다.


Chrome Apps

  • 오프라인에서 동작(Offline by default)
  • 클라우드 친화적(Cloud ready)
  • OS에 자연스럽게 통합(Natively Integrated)
  • 다양한 장치 지원(Multi device support)

하드웨어를 제어할 수 있다.
Phonegap(http://phonegap.com/)을 이용하면 크롬 앱을 안드로이드나 iso 플랫폼 앱으로 변환할 수 있다.


성능

  • Element를 모두 렌더링 하는 것은 아니고 보이는 것만 렌더링 한다.
  • 모바일에서 touch시에 클릭 이벤트는 300ms를 기다려야 하니 touch 이벤트 리스너를 사용하여 지연을 줄여준다. (Canjs에선 touchstart 이벤트를 사용하면 되겠다.)
  • 1초에 60프레임 보여주려면 최대 지연율이 16.67ms 이하여야 한다.
  • 에니메이션 함수에 setTimeout(function, 16.67)을 이용한다.(http://stackoverflow.com/questions/729921/settimeout-or-setinterval)
  • redirect 쓰지 말자. 외부 api를 쓸때 dns lookup이 여러번 일어나는데 dns prefetch를 이용하면 성능이 향상된다.
  • CSS animation에

    {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    }

    를 이용해 GPU 가속을 활성화한다. (이건 핵이다.)
  • 웹 페이지 성능을 알아보려면 Pagespeed extension을 이용한다.
  • ATF(http://whatis.techtarget.com/definition/above-the-fold) 컨텐츠가 처음 15kb안에 배달되야 한다.(https://developers.google.com/speed/docs/insights/PrioritizeVisibleContent)

배치를 바꿀 때 transform을 이용하는 게 좋다고 하나, 문서(http://blog.tumult.com/2013/02/28/transform-translate-vs-top-left/)를 찾아보니 transition을 사용하지 않는다면 top/left로 위치를 잡는 것이 더 빠르단다. 심지어 불투명한 요소만 포함하고 있다면 GPU 가속 핵을 사용하지 않는 것이 더 빠르다. 배터리 소모도 고려해야 하므로 핵을 쓸 땐 잘 생각해서 쓴다.


Dartlang(https://www.dartlang.org)

구조화된 웹 앱을 개발을 돕는 새로운 개발 언어.
이미지 처리에 강점을 보인다니, 혹 게임을 만들 일이 생기면 한번 써봐야겠다.



by


Tags : , , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

What will happen to me (WWHtoMe)



소개



“What will happen to me?"는 웹에 등록된 각종 공연/행사 정보,

학교 시험 시간표,커뮤니티 스케쥴 등을 RSS로 받아와서,

앞으로 무얼 할까 고민하는 사람들에게 도움을 주는 소프트웨어입니다.

정보를 제공하는 사이트에서 포스팅할때 publish date를 수정할 수 있는것을 이용하여,

일정이 있는 날에 포스팅 한 것을, RSS Feed로 받아오게 됩니다.

사용자는 각종 행사 정보가 가득한 달력을 보며 휴일이나, 일과후의

계획을 좀 더 편하게 잡을 수 있습니다.



사용방법

어플리케이션을 실행하면 다음과 같은 화면이 나옵니다.





일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



메뉴 버튼을 눌러서 RSS Feed를 받아올 채널을 추가해주세요.(RSS1.0,RSS2.0,ATOM)

받아올 feed items의 publish date는 일정이 잡힌날로 posting 되어 있어야 합니다.



- 채널 예제 - (6월)

Exam : http://dorajistyle.pe.kr/scheduleExam.php?tempskin=_rss2

Exhibition : http://dorajistyle.pe.kr/SDexhibition.php?tempskin=_rss2

Movie : http://dorajistyle.pe.kr/SDmovie.php?tempskin=_rss2




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



채널명 주소를 적고 채널을 잘 나타내 줄 수 있는 아이콘을 선택하고 Enter키나 Dpad의 Center 버튼을 누르면 채널이 추가됩니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

예제 채널들을 추가 하였습니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

메뉴의 Retrive all을 이용하여 추가한 채널들에서 일정을 받아옵니다.

하나의 채널에서만 받아오려면 채널을 선택후, Retrieve this를 선택하시면 됩니다.

받아오기를 하는동안 상태바에 아이콘이 표시됩니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

받아오기가 완료되었으면 일정을 확인하기 위해 Schedule Viewer로 이동합니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

뷰어에서는 다양한 키가 사용됩니다.



스케쥴 리스트 보기 모드 변경키

Q: show all schedule items 토글 (과거의 일정은 포함하지 않는다)

E: favorites schedule items 토글

F: 전체화면 모드 토글



달력 컨트롤을 위한 키

A: 3달 전으로 커서를 이동

D: 3달 후로 커서를 이동

W: 한달 전으로 커서를 이동

S: 한달 후로 커서를 이동

DPAD_UP: 일주일 전으로 커서를 이동

DPAD_DOWN: 일주일 후로 커서 이동

DPAD_LEFT: 하루 전으로 커서 이동

DPAD_RIGHT: 하루 후로 커서 이동



리스트 컨트롤을 위한 키

NEW_LINE , DPAD_CENTER: 선택된 아이템 자세히 보기

PERIOD : 리스트 커서를 한칸 위로 이동

COMMA : 리스트 커서를 한칸 밑으로 이동

M : favorites에 추가/해제



약속을 만들고 싶은날로 커서를 이동해서 어떤 일들이 벌어지고 있는지 볼 수 있습니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



favorites 보기에서는 favorites로 추가한 아이템들을 볼 수 있습니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



스케쥴이 있는 날로 커서를 이동하면, 그날의 스케쥴이 보이게 됩니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



메뉴키를 눌러서 채널 리스트 화면으로 갈 수 있습니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



리스트의 아이템을 선택하면 일정에 대한 좀 더 자세한 정보를 볼 수 있습니다.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



메뉴키를 눌러서 채널 리스트 화면으로 갈 수 있습니다.




What Will Happen to Me?



Introduction



“What Will Happen to Me?” is an Android application, which allows users retrieve performance/event information,class schedules and community schedules that are registered on Internet sites through RSS and helps people decide what they should do instantly.

When website administrators post such information, users can retrieve posted information that are scheduled on the date of the event.

The users can easily plan and make schedules according to the calendar with information of the events.



How to use?

Once you execute this application, you will see the screen like below:





일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



Press [menu] to add RSS Feed channels.(RSS1.0,RSS2.0,ATOM)

The publish date should be posted on the date of event.



- Channel sample - (June)

Exam : http://dorajistyle.pe.kr/scheduleExam.php?tempskin=_rss2

Exhibition : http://dorajistyle.pe.kr/SDexhibition.php?tempskin=_rss2

Movie : http://dorajistyle.pe.kr/SDmovie.php?tempskin=_rss2




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



Put channel address and select the icon that can show the channel type well. Then press [Enter] or [DPAD_CENTER] buttun, and the channel will be added.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

Sample channels are added.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

Download schedules from added channels through “Retrieve all” in the menu.

If you want to retrieve from one channel, select channel and press “Retrieve this".

While retrieving channel, icon on status bar will appear.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

When retrieving gets completed, move to “Schedule Viewer” to check schedules.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

In the viewer various types of buttons are used.



Buttons to change to schedule list view mode.

Q: toggle show all schedule items. (except the schedules in the past)

E: toggle show favorate schedule items.

F: toggle full screen list.



Buttons to control calendar.

A: move the cursor to three months before.

D: move the cursor to three months after.

W: move the cursor to a month before.

S: move the cursor to a month after.

DPAD_UP: move the cursor to a week before.

DPAD_DOWN: move the cursor to a week after.

DPAD_LEFT: move the cursor to a day before.

DPAD_RIGHT: move the cursor to a day after.



Buttons to control list.

NEW_LINE , DPAD_CENTER: view details of selected list item.

PERIOD : move the list cursor to the previous list item.

COMMA : move the list cursor to the next list item.

M : add or remove to/from favorites



You can view the schedules of the date you want to make appointments by moving cursor to that day.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

You can see added favorites items in the favorites view mode.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

Once you move the cursor to the date of event, you will see the schedules of the date.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

You can move to the channel list screen by pressing [menu].




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]

Once you select the item of the list, you can see more detail information about the schedule.




일정관리 어플리케이션 What will happen to me? - 안드로이드 어플리케이션[안드로이드,android,application]



You can move to the channel list screen or schedule viewer screen by pressing [menu].





by


Tags : , , , , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

안드로이드에서 데이터베이스를 열지 못할때. [안드로이드,데이타베이스,DB,database,android]

이미지출처 : news.cnet.com

안드로이드에서 데이터베이스를 열지 못할때.








안드로이드를 사용해서 뭔가 만들어보려고 뚝딱거리다가,



어느순간 m5버젼이 나왔다.



m3버젼을 쓰고 있었는데, m5버젼이 나왔다.



돌아가는 모습을 좀 보려고 튜토리얼을 실행시켰는데.. 이런!



데이터베이스를 열지 못한다. nullPointerException이 나온다.



프로그램을 처음 접했을 때부터 무던히도 날 괴롭히던 녀석이..



여기서도 어김없이 등장했다.



디버깅 모드를 써서 추적을 해봐도..



추적이 쉽지않다.



결국 추적을 위해 비슷한 어플리케이션을 만들어서..



아직 api 소스가 나오지도 않았기에 역컴파일까지 해서 추적을 했더니…



db를 쓰지도 못하고 읽지도 못하는것 아닌가!



그래서 db에 null값이 들어있기 때문에 이런 현상이 발생하는 것이었다.



이런! 이 문제를 어떻게 해결할 것인가..



이건 코드 레벨에서 어찌 할 수 있는 문제가 아니었다.



방법은..



기존에 있던 유저파일을 리셋하는것이다.



에뮬레이터 실행할때.



-wipe-data 옵션을 줘서 유저데이터를 지울 수 있고,



혹은 아래의 경로에서 직접 삭제 할 수 있다.


Code:





Linux: ~/.android/userdata.img

Windows: C:\Documents and Settings\<loginname>\Application

Data\Local\Android\userdata.img


Upgrading the SDK 문서가 좀 더 일찍 나왔더라면 이런 수고는 하지 않았을텐데 아쉽다.



Reference




by


Tags : , , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

이번에 대형 출판사인 구글에서 문학공모전을 열기로 했다.



쟝르는 안드로이드로, 다소 생소한 쟝르이기에,



전 세계 사람들에게 널리 알리고자 이번 공모전을 여는것이라고 한다.



재미있을것 같고, 좋은 경험이 될 것 같아서 친구와 함께 참여하기로 했다.



나는 글을, 친구는 약간의 삽화를 그려주기로 하였다.



일정관리를 잘해서 시간에 쫒기지 않고,



좋은 작품을 출고 할 수 있도록 해야겠다.



———————————————

Related videos



* Introducing Android





* Androidology - Part 1 of 3 - Architecture Overview




* Androidology - Part 2 of 3 - Application Lifecycle




* Androidology - Part 3 of 3 - APIs





* A first hand look at building an Android application




———————————————



Android Writer Challenge

[Android Writer Challenge - 안드로이드 공모전]



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.