Here are the console commands for installing/removing system apps in android console emulator, very easy ; ) You must have ROOT and console emulator, I found this very helpful, so I hope it helps others as well... __________________________________________________ ___________________________________ Install App to System: Place APK file in the root folder on your sd card. Open terminal and enter..
volatile이란 단어의 뜻은 "변덕스러운"이다. 다시 말하자면 "자주 변할 수 있다"로 생각할 수 있다. 프로그래밍 언어에서는 정의는 언어와 버전마다 다르지만, 대충은 "자주 변할 수 있는 놈이니 있는 그대로 잘 가져다써"정도로 생각을 하면 되겠다. 조금 더 엄밀히 정의를 하자면, (1) 특정 최적화에 주의해라, (2) 멀티 쓰레드 환경에서 주의해라, 정도의 의미를 준다고 보면 된다. Java에서는 어떤 의미를 가질까? volatile을 사용한 것과 하지 않은것의 차이는 뭘까? volatile의 버전마다의 차이는 뭘까? synchronization과 volatile의 차이는 뭘까? 이 의문들에 대해서 정리한 것은 다음과 같다. volatile을 사용하지 않은 변수: 마구 최적화가 될 수 있다. 재배치..
제목 그대로다. android SDK Manager에서 SDK Platform-Tools를 업데이트 받고 Eclipse로 들어갔더니 ADT를 업데이트 받으라고 해서 업데이트 받았다. 그런데 그다음부터 gen폴더, R.java를 지우면 자동으로 recreating안하고 에러만 난다. 모든 R을 가르키고 있는 코드는 에러메세지를 토해낸다. 181818 왜그런지 찾으러 구글을 1시간을 돌아다녔다. ㅠㅜ; 그런데 아래처럼 나랑 똑같은 케이스가 있더군.. ADT버전이 16인데 SDK Platform tools와 SDK Build-tools의 버전이 호환이 안되서 생긴문제다. 해결책은 SDK Manager로 다시 가서 업데이트를 받으면 된다.I had the same issue today after upgradin..
[번역]자바 Enum의 10가지 예제Posted on 2012/07/18작성자: bluepoet1004원본글 : http://javarevisited.blogspot.sg/2011/08/enum-in-java-example-tutorial.html자바의 Enumeration(Enum)은 JDK 1.5에 소개되었고, J2SE5에서 내가 가장 좋아하는특징 중 하나이다.타입처럼 Java Enum은 NEW,PARTIAL,FILL,FILL or CLOSED와 같은 주문의대표적인 상태의 예와같이 확실한 상황하에서 더욱 적합하다.Enumeration(Enum)은 원래 자바에서 이용하지 않았고, C나 C++같은 다른 언어에서사용했다.하지만 결국 자바는 깨닫게 되었고 enum keyword에 의해 JDK 5안에 Enum..
"보안 시스템은 가장 약한 연결 고리만큼만 강하다."보안 시스템은 여러 부분으로 이뤄집니다. 공격자(attacker)는 이 중에서 가장 취약한 부분을 공격할 것이라고 가정해야 합니다. 보안 시스템이라는 사슬에서 가장 약한 고리가 끊어지면 다른 고리가 얼마나 강한지는 문제가 되지 않습니다. 즉, 보안 시스템의 안정성은 '강한 부분이 얼마나 강한가'보다는 '약한 부분이 얼마나 약한가'에 따라서 좌우됩니다.지난해 6월 세계 최대 비즈니스 전문 소셜 네트워크 서비스(SNS) LinkedIn은 사용자 데이터 해킹 사고로 650만 명의 수수아이디와 패스워드 정보가 유출된 후 집단 소송을 당했습니다. 취약한 암호화 알고리즘인 SHA-1을 사용했다는 것이 그 이유였습니다. 이제 보안 시스템의 한 부분인 암호화 알고리즘..
DP (DIP) dp (dip, density independent pixel) 은 안드로이드에서 여러 화면 크기를 서포트 해주기 위해서 만든 유닛이다.만약 많은 화면에서 내가 만든 레이아웃이 제대로 보이길 원한다면 dp를 써서 화면을 만드는 것이 좋다. 우선 주의할 것은 안드로이드는 160dpi를 기본으로 생각한다.이것은 (320 x 480) 스크린의 density를 나다내는 것이다. 그러므로 480 x 800 (240dpi)의 스크린을 dp로 나타낸다면 320 x 533 (480 / 1.5, 800 / 1.5) 이 된다.dp를 이용해서 레이아웃을 잡을때 이 수치를 꼭 기억하고 잡자!dp로 레이아웃을 잡을때 버튼을 4개 만들고 LinearLayout (horizontal)에 넣은뒤 width를 80dp..
Intent와 PendingIntent 이해하기 PendingIntent도 일종의 Intent라고 생각해도 된다. 그런데 Intent의 기본 개념은 특정 컴포넌트(Activity, Service, Broadcast Receiver, Content Provider)를 실행시키는 메시지라는 것이다. 역시 마찬가지로 PendingIntent도 Intent의 일종이므로 특정 컴포넌트를 실행시키는 기능을 한다는 것이다. 그런데 PendingIntent는 생성자가 없고 다음 세 개의 메소드들에 의해서 객체가 생성된다. getActivity(Context, int, Intent, int), getBroadcast(Context, int, Intent, int), getService(Context, int, Inten..
Remote Service 만들기 Remote Service 만들기.. 아! 머리 아프다. 일반적인 Local Service는 많이 짜봤는데, Remote Service는 안짜봤다. 여기서 말하는 Remote Service는 다른 APK에 있는 Service를 호출하여 쓰는 것이다. 이런게 가능한지도 몰랐다 ㅠㅜ; 우선 구현을 위해서 Remote Service를 만든다. 여기서 중요한것이 Service의 Intent-filter이다. 앞에서 말했다시피 다른 APK의 Service는 간단히 쓸수가 없다. 호출을 어떻게 할까? 그래서 나온방법이 action을 사용하는 것이다. 자세한 내용은 Remote Service를 호출하는 Caller소스에서 더 자세히 설명하겠다. package com.example.t..