안드로이드 애뮬레이터 sdcard에 파일 push 할 때 오류

Failed to push selection: Read-only file system


이런 이런.... 황당한 때가 있나...

강의를 따라가고 있는데, 갑자기 복병을 만났다.

파일을 푸쉬해야 한다는데... 하니까 에러가 났다.


[2015-09-17 16:15:33 - ddms] transfer error: Read-only file system

[2015-09-17 16:15:33] Failed to push selection: Read-only file system



이 문제는 sdcard 사용하도록 허용하지 않았기 때문인데,

우선 sdcard 가 할당되어 있는지부터 확인해야 한다.


안드로이드 애뮬레이터에 sdcard 용량을 지정해줘야 한다.


AVD Manager 를 띄워서

AVD 이름을 선택하고, Edit 버튼을 클릭한다.


그러면 아래처럼 나올텐데....

Device와 SD Card 의 Size를 입력하면 된다.


아래처럼 했다. 256으로 했다.

좀 많이 해봤더니... 용량을 지정하느라 아주.... 느려터지더니...

결국 용량부족으로... 아무것도 안되서 죽여버렸다....

아.... 허무하였다. (512000 으로 줬다... 이 정도는 돼야되는 걸로 생각해서리....)


자... 이렇게 하고, 다시 안드로이드 애뮬레이터를 실행해보면....

그래도 안된다.... 사실 아직 한가지가 더 남았기 때문이다.

[2015-09-17 16:25:50] Failed to push the item(s).

[2015-09-17 16:25:50] null


그건 바로 AndroidManifest.xml 에 sdcard에 write 권한을 허용하지 않았기 때문이다.

아래와 같이 Permissions 에서 Users Permission 을 Add 누르고, android.permission.WRITE_EXTERNAL_STORAGE 선택해보자.


이게 끝이냐??? 아니다....

그러고 나서 안드로이드 애뮬레이터를 종료하고 다시 실행시켜야 한다.


그러고 나면... 아래처럼... 미디어 파일이 잘 PUSH 된다. 

이게 뭔가....

허접하고, 설명도 부족하고.... 힘들었다.


모든 경우에 대해 강사는 설명해줘야 한다.

뒤늦게 알려줘봐야 그건 알려주는 거 아니다.

제대로 좀 해주시길....

안드로이드 애뮬레이터 한글키보드 등록


안드로이드에 점점 빠져들고 있다.

생각보다 어렵다.

아직은 초보를 벗어나지 못하고 있지만

하나 하나 해보면서 작품 만들 수 있겠다는 생각을 해보게 된다.


안드로이드 에뮬레이터에서 한글키보드를 등록하래서 해봤는데,

이게... 만만치 않다.

그냥 쉽게 되는줄 알았더니,

살짝... 귀찮다.


또 뭘 하다 이클립스를 재구동했더니,

한글키보드가 어디 날아가버렸다.


초기화가 된 거 같았다.


먼저... 안드로이드 에뮬레이터를 실행해본다.


아래는 임의의 프로젝트를 오른쪽 마우스 클릭해서 Run As -> Android Application 을 선택한 것이다.


아래는 그렇게 해서 나온 애뮬레이터인데...

지금은 처음 화면이 나온 것이다.


우선 한글키보드를 설치해보겠다.


한글키보드 apk를 다운받아야 한다.

이걸 공유해도 되나 모르겠는데, 검색해서 얻어낸 거라... 문제가 되면 내리겠다는....


HangulKeyboard.apk


softkeyboard.apk


둘 중에 어느 걸 써도 괜찮을 것 같다.


그리고, 이걸 C:\android\android-sdk\platform-tools 폴더에 복사하자.


이제 안드로이드 애뮬레이터에 한글키보드를 설치할 수 있다.


애뮬레이터는 실행되어 있어야 한다.


adb install HangulKeyboard.apk


실행하자.





이젠 안드로이드 에뮬레이터에서 앱 버튼(?) 클릭하자.



아래의 Settings 클릭하자.


그리고, 언어 및 키보드(영어로 되어 있을 수도 있음) 클릭하자.


한글 접촉식 키보드 체크해주자.


이젠 한글 키보드가 선택이 됐고....

한글 키보드로 사용하도록 선택해주면 된다.


홈 화면에 나오는 구글을 클릭하면 아래에 키보드가 나오게 된다.

물론 한영 변환되지 않는 키보드다. (아래의 그림은 이미 선택되어 있어서 좀 다를 수 있음)


Android 키보드 선택되어 있을텐데...

아래의 한글 접촉식 키보드로 바꿔준다.


'한'키를 누르면 아래처럼 한글 키보드가 나타나게 된다.

이젠 마우스 포인터로 클릭해주면 된다.




뭔가 좀 이상하다. 홈페이지에서 안드로이드 SDK 설치하러 갔다.

그런데, 참고 하는 책, 자료랑 디자인이 좀 다르다.

뭐지... 하던 중에....

 

Android Studio 란 걸 발견하게 되었다.

에궁... 책이 구닥다리인가 보다. 홈페이지가  최신이겠지. 생각하고 도전 함 해본다.

 

일단 홈페이지에 접속했다.

주소는 http://developer.android.com/ 이다.

 

첫화면에 나오는 건 이미 폰이나 테블릿, 시계 까지...

다 된다는 듯한 그림이 나오고...

 

그리고, Develop을 클릭한다.

 

Download 클릭하면 안드로이드 스튜디오(Android Studio) 다운하라는 화면이 나온다. 보셨겠지만 오피셜 안드로이드 아디이..... The official Android IDE 라고 한다.

그러니, 써줘야 하지 않겠는가....

 

과감하게 클릭해본다.

 

곧바로 클릭하나... 아래처럼 Download -> Installing the SDK -> Android Studio 나 같다는...

 

우여곡절 끝에 정말 다운로드 버튼이 나왔다.

요거 클릭하면...

 

 

이제부터 설치하는 거다. 과연... 어떤 놈이 나타날꺼나... 궁금해진다.

 넥스트...

 넥스트... 고민할 게 없다. 알아서 디폴트로 설치한다.

 라이선스도 어그리 하고...

스크롤 쭉 해서 읽어보시라.... 참 유익하....

어디다 할거냐고... 디폴트로 해달라고 넥스트...

에뮬레이터... 512메가 짜리다. 좀 약하다. 그래도 패쓰...

디폴트로 인스톨 들어간다.

난데없이 이놈이 먼저 설치된다. 훅 치고 들어왔다가 마침...

설치가 끝났다. 넥스트 누르면 컴플릿트...

이제야... 끝이다. 피니쉬...

해냈어.... 아쉬운 책을 뒤로 하고 내가 해낸겨...

책을 이긴겨... (누구여... 이렇게 책을 만드신 분....이....)

자기 책엔 아마도 이미 설치되어 있어서 처음하는 사람의 심정은 알지 못했던 게지...

 

브라질...

 

어쨌든... 넘어가는 화면 함 볼까...

 

 

 

보라니께... 떴시유....

Java SE Development Kit 8 설치하고 나니까... 떴시유...

 

 

요건... 소스를 어디다가 둘 건지 workspace 지정하는 것이니까... 일단은 오케이 클릭...

 

 

그리고... 기본 화면이 뜬 것이다.  크하하하...

 

왔노라, 보았노라...그 책 저자는 내가 이렇게 훌륭하게 해낼 줄은 몰랐을 거다.

이런 줄도 모를 거다. 책 제목, 저자를 까발리고 싶지만 그 책 판매에 도움을 줄까 두려워... 일단 패쓰...

 

이제 부터는 뭔가 쉽게 진행될 거 같다.

 

뭘 하려면 신기하게도 가로막는 것들이 너무 많다.

 

노트북의 와이파이가 느리질 않나...

다운로드가 안되서 승질 나질 않나...

날새버렸는데... 아직도 씻지도 못하고 있으니...

 

프로그래머는 노가다에 힘든 직업이다.

책이나 보고, 노래나 듣고, 영화나 보는게 속편하지...

아니면 출근해서 책상에 앉아있기라도 하던가...

 

이건 뭐...남는 건 없고 없어지는 건 시간이고,

진도는 시작도 못했고...

 

나의 안드로이드 앱 개발은 가능할까?

아... 꼭 만들어보고싶다.

Java SE Development Kit 8 다운로드 받았다.

이게... 이미 Java Platform (JDK) 7은 구버전이 됐나보다. 신버전으로 다운받을라고... 왔다.

 

http://www.oracle.com/technetwork/java/javase/downloads/index.html

 

 여기서 아래의 다운로드를 클릭했지.

 

그러고 나서 아래의 내 윈도우에 맞는 걸 클릭했지... 그런데 안되는 거야.... 이건 또 뭐야... 했지.

그런데... 역시 내가 잘못했두만... 영어라고 무시했더니...

억셉트를 해줘야 했더라고.... 그래서 억셉트 클릭했더니.... 다운되더라고...

 

이런... 배워야 된다니까...

 

 다운받고 나서 실행했지...

 다음 클릭했고,

 또 다음 클릭했고,

 잠시 쉬었다가 또 다음을 클릭했지.

그리곤 마지막이었어. 잘 됐나... 싶더군...

 

 

과연 어떻게 됐을까??? 궁금허지??? 나도 궁금해... 실은 안해보고 적고 있걸랑....

Eclipse 설치다시 해본다. 안드로이드 개발하려고...

 

책보고 하고 있는데, 이런... 이게 제대로 안된다.

또 문제 될 거 같아서 기록을 남기고 싶다.

이 책은 반납할 거기 때문에 거기다 낙서는 못하겠고...

 

일단.... Eclipse 다운받았다.

 

 

애개.... 그랬더니, 오류가 난다. 이런... 뭐가 잘못된 거야....

 

이건 뭐지??? 뭘 잘못한 걸까????

 

아마도 순서가 잘못된 거 같다.

 

Java Platform (JDK) 7 설치가 먼저 되어야 하나보다. 다시 해볼까...

전문을 만들다 보니, 정해진 BYTE 대로 구성되어야 한다.

게다가 영숫자, 특수문자 등도 전각(2 BYTE)으로 만들어야 한다.

그래서 TO_MULTI_BYTE()를 써서 쿼리를 만들었다.

 

그런데, 이게... 생각과 약간 다르게 나온다.

왜냐하면 RPAD() 와 같이 조합해서 사용했기 때문이다.

그래서 이걸... 여러번의 테스트 끝에 답을 냈다.

 

간단하면서도 (개인적으로) 까다로운 거라...

꼭 공유를 해보고 싶어서 올려보게 된다.

도움되시길...

 

SELECT DUMP(TO_MULTI_BYTE(RPAD('김창완(1)',10))) FROM DUAL;

☞  길이가 14바이트가 나온다.

Typ=1 Len=14: 177,232,195,162,191,207,163,168,163,177,163,169,161,161

 

SELECT TO_MULTI_BYTE(RPAD('김창완(1)',10)) FROM DUAL;

☞ 아래와 같이 14바이트이다.

 123456789 123456789 1234567890

'김창완(1) '

 

SELECT RPAD('김창완',10,' ') FROM DUAL;

☞ 10바이트다.

 123456789 123456789 1234567890
'김창완    '

 

SELECT 10-LENGTH('김창완(1)') FROM DUAL;

☞ 그냥 해봤다. 3바이트다.

 

SELECT LENGTH(TO_MULTI_BYTE('(1)')) FROM DUAL;

☞ 역시 그냥 해봤다. 3바이트다.

 

SELECT TO_MULTI_BYTE(RPAD('김창완(주)밴드',10)) FROM DUAL;

☞ 이게 잘못 생각한 부분이다. 뒤에 "밴드"가 잘려버렸다.

 123456789 123456789 1234567890
'김창완(주)'

 

SELECT LENGTH('김창완(주)밴드') FROM DUAL;

☞ 왜냐하면 이게 8바이트이기 때문이다.

  이렇게 되면 당연이 2바이트가 남기 때문에 모두 다 나와야 맞는데...

  신기하게도 "밴드"가 잘려버리게 된다.

 

  아마도 한 글자가 전각이기 때문에 2바이트로 인식되기 때문이 아닐까?

  그러면 "김창완" = 6바이트, "()" = 2바이트, "주" = 2바이트

  그래서 합이 10바이트가 된다.

 

  뭔가 엇박자가 나는 부분이라 생각된다.

 

SELECT TO_MULTI_BYTE(RPAD('김창완(주)밴드',20)) FROM DUAL;

☞ 28바이트다.  RPAD('김창완(주)밴드',20) = 14바이트('김창완(주)밴드') + 6바이트(SPACE)

 123456789 123456789 1234567890
'김창완(주)밴드      '

Typ=1 Len=28: 177,232,195,162,191,207,163,168,193,214,163,169,185,234,181,229,161,161,161,161,161,161,161,161,161,161,161,161

 

SELECT TO_MULTI_BYTE(RPAD(TO_MULTI_BYTE('김창완(주)밴드'),20)) FROM DUAL;

☞ 24바이트다. 빈칸(SPACE)은 전각이다.

  이걸로 본다면 "김창완(주)밴드"는 각각 2바이트씩 해서 8자이니 16바이트이고,

  빈칸은 "    "로 4자다. 16바이트에서 4바이트를 더한 것이다. 그래서 합이 20....

  그러니... 엇박자가 나는 것이다.

 

 123456789 123456789 1234567890
'김창완(주)밴드    '

Typ=1 Len=24: 177,232,195,162,191,207,163,168,193,214,163,169,185,234,181,229,161,161,161,161,161,161,161,161

 

SELECT RPAD(TO_MULTI_BYTE('김창완(주)밴드'),20) FROM DUAL;

☞ 그래서 결론은 요렇게 해결했다.

 123456789 123456789 1234567890
'김창완(주)밴드  '

Typ=1 Len=20: 177,232,195,162,191,207,163,168,193,214,163,169,185,234,181,229,32,32,32,32

 

 

위와 같이 해보게 되었다.

결국 20바이트 짜리 텍스트를 얻게 되었다.

순서, 조합에 따라 이렇게 결과가 달라지니, 하나 하나 꼭 점검해봐야 하겠다는 결론을 얻게 된다.

 

(ㅎㅎㅎ 그렇다. 필자는 산울림 오랜... 팬이다. 그래서 김창완을 억수로 좋아한다. ㅋㅋㅋ)

내가 원하는 건 '0000001'으로 되어 있는 스트링을 '1'으로 바꾸고 싶은 거였다.

그래서

아래와 같은 방법으로 해봤더니....

 

< java >

 

String → int로

 

int num = Integer.parseInt(number);

 

int → String으로

 

String num = Integer.toString(number);

 

뭔가 원하는대로 되지 않았다.

 

그래서 고민했다.... 어떻게 해볼까....

 

그래서 해결했다.

 

 

< java >

 

String → int → String으로

 

Integer.toString(Integer.parseInt("0000001"))

 

이해가 되시는가????!!!!

 

이렇게 바뀌게 되는 거다....

 

"0000001" →  1 →  "1"

 

 

간단하게... 코볼스럽게 생각해봤다.

이리저리 뒤집는 건 너무 힘들더라고... ^_^;;;

이클립스(Eclipse) 단축키 모음 캡쳐

 

 

아래는 우연히 Ctrl + Shift + L 을 눌렀더니, 나온 메뉴를 한땀 한땀 캡쳐해봤다.

텍스트가 아닌지라 각각 설명을 적지는 않겠다.... (^_^;;;)

 

얼추 전산 영어들 되시지 않나? (흠흠...)

 

차례대로 캡쳐한 거고, 맨 밑에 1개는 중복되는 거고...

맨 마지막 그림은 캡쳐한 이클립스의 버전이다.

 

너무 많다.

 

많이 쓰는 건 별로 안되는데... 이걸 기억하는 것도 일이겠다. 힘들~뤄~

 

 

 

 

 

 

 

 

 

 

Eclipse Java EE IDE for Web Developers

Version: Indigo Service Release 2

Build id: 20120216-1857

 

 

이클립스를 설치했더니, 눈이 부시는 게 보기가 좀 그래서 색상을 바꿔봐야겠다고 생각했다.

 

Pereferences 를 살펴봤더니.... 앞이 캄캄했다.

이걸 어떻게 하나하나 살펴보면서

설정을 바꿔가면서 세팅하냐????

 

고민하다가 이리저리 찾아봤더니, 에궁... 어렵다.

 

그래서 간단하게 설정방법을 직접 만들어본다.

지금 울트라에디터도 쓰고 있지만 역시... 색상을 바꿔서 사용하고 있다.

흰바탕에 검정 글씨는 너무 부담스럽기 때문이다.

이클립스도 되나 하고 살펴봤더니, 된다. 히힛....

 


이클립스 색상 테마(color theme) 설정


 

 

그럼 캡쳐 떠둔 걸로 함 설명해볼까나...

 

(1) 자... 이거 눈부시다. 지금도.... 난시용 안경을 쓰고 싶은 심정이다...

  게다가 업무용으로 사용하게된다면 이클립스는 하루종일 봐야할 수도 있지 않은가...!!!

 

(2) Help - Eclipse Marketplace 를 클릭하자!

 

(3) Eclipse Marketplace 창이 뜨면 "Color Theme" 를 입력하고 엔터를 치자...

 

(4) 그리고, "Eclipse Color Theme"의 "Install" 버튼을 클릭하자!

 (이미 설치된 뒤라서.... Update 버튼은 비활성화 되어 있고, Uninstall 버튼은 활성화되어있다.

  아마도 Update 할 건 없고, Uninstall 할라믄 하라는...)

 

(5) Window - Preferences 를 클릭하자!

  그리고 General - Apprearance 를 클릭하면 없었던 Color Theme 가 나타난다.

  오른쪽에 나오는 여러가지 테마를 선택해보자!

  보기에 좋은 놈으로 고르면 된다.

 

(6) 아래는 적용된 화면이다. RecognEyes 테마는 눈에 잘알아볼 수 있는 거라고 해둔 구성인 것 같다.

 

(7) 아래는 다른 창들을 닫아봤다. 이렇게 보고 있음 눈이 훨씬 덜 피로할 거라는 생각...

그냥 기본적으로 설정된 걸 사용해도 괜찮겠지만,

가능하다면, 필요하다면 이렇게 설정을 바꿔서 사용해보는 건 어떨까?

 

현실이 어렵고 힘들면 현실에 파묻히지 말고, 현실을 극뽁해보자!

아니면 물어보자.

이미 중원에는 많은 고수들이 내가 고민하는 것들을

해결해두고, 행복하게 살고 있다는...

 

그리고 혹시... 여유가 된다면 이렇게 도움을 줄 수 있게 남겨보자!

이게 행복한 세상 아닐까????!!!

 

티스토리 툴바