최근에 MWC이전에 공개되는 삼성, 소니, HTC안드로이드 4.0 (ICS)이 탑재된 디바이스들을 보면
갤럭시넥서스의 가상버튼이 아닌 이전처럼 하드웨어 버튼을 채용하고 있다.
현재 분위기론 넥서스원의 광학 트랙볼처럼 흑역사가 될 것 같다.
가상버튼이 주는 별다른 장점이 없어,
기존 하드웨어 버튼에 익숙한 사용자들에게 호소할 점이 부족하다.
특히, 갤럭시 넥서스의 경우도 동영상 감상시외에는 가상버튼이 주는 장점이 없으며,
오히려 가상버튼으로 인해 게임등에서는 빈번히 문제가 발생하고 있다.
최근 사용자들은 스마트폰 화면의 대형화에 거부감이 없고,
5인치의 갤럭시 노트가 인기를 얻고 있는 것을 볼때,
가상버튼을 채용하며, 디바이스의 크기를 줄이는 이득이 적어 보인다.
갤럭시 넥서스의 경우 하드웨어 버튼이 없음에도 하단 베젤이 작지 않다.
개발자가 아닌 일반 사용자가 아이스크림 때문에 갤럭시 넥서스를 구입할 생각이라면
우선 보류하는 것이 좋을 것 같다.
2012년 2월 3일 금요일
2011년 12월 7일 수요일
갤럭시 넥서스 소프트웨어버튼의 알려진 단점 및 문제점
- 메뉴버튼의 삭제
- 구 앱들중 메뉴버튼이 필요한 앱들은 팝업으로 뜨는데 뭔가 좀 불편하다.
- 버튼을 숨기거나 꺼내는 조작법이 존재하지 않는다.
그래서 기본내장플레이어가 아닌 앱으로 동영상 재생시 풀화면 전환후 다시 버튼이 나와야할때 안나올때가 있다.
- 홈 버튼은 키보드의 스페이스 바와 같은 선상에 있어 실수로 잘 눌린다.
- 화면을 터치하려다 오입력 할 가능성이 높다.
- 구글은 온스크린 버튼을 강제하지는 않는다. 안드로이드 파편화는 더욱 심각해질 것이고
기본 버튼조차도 통일되지 못해서 앱들끼리 파편화가 이루어질 것이다.
개발자로써 걱정되는건 파편화가 더 심해질거라는 점이다.
우선은 갤럭시 넥서스의 보급 속도가 느린만큼 다른 ICS기기들을 지켜봐야 겠다.
- 구 앱들중 메뉴버튼이 필요한 앱들은 팝업으로 뜨는데 뭔가 좀 불편하다.
- 버튼을 숨기거나 꺼내는 조작법이 존재하지 않는다.
그래서 기본내장플레이어가 아닌 앱으로 동영상 재생시 풀화면 전환후 다시 버튼이 나와야할때 안나올때가 있다.
- 홈 버튼은 키보드의 스페이스 바와 같은 선상에 있어 실수로 잘 눌린다.
- 화면을 터치하려다 오입력 할 가능성이 높다.
- 구글은 온스크린 버튼을 강제하지는 않는다. 안드로이드 파편화는 더욱 심각해질 것이고
기본 버튼조차도 통일되지 못해서 앱들끼리 파편화가 이루어질 것이다.
개발자로써 걱정되는건 파편화가 더 심해질거라는 점이다.
우선은 갤럭시 넥서스의 보급 속도가 느린만큼 다른 ICS기기들을 지켜봐야 겠다.
2011년 9월 4일 일요일
2010년 12월 13일 월요일
Android SDK의 Proguard지원
안드로이드 2.3 진저브레드 출시와 함께 공개된
Android SDK r08 과 ADT 8.0.1에서 Proguard지원을 함으로써
간편하게 Proguard를 적용할 수 있게 되었다.
ADT 8.0.1에서부터 새로 안드로이드 프로젝트를 생성하면
프로젝트 root에 proguard.cfg파일이 추가로 생성된다.
프로젝트에 있는 default.properties 파일에
proguard.config=proguard.cfg
위 한줄을 추가하면 proguard적용 완료.
평소 디버그 시에는 동작안하고
이클립스에서 Android Tools -> Export Signed/Unsigned Application Package...를 할 때에만,
즉 릴리즈시에만 Proguard를 적용시킨다.
좀 더 자세한 내용을 원하면 아래 페이지를 참조하면 됩니다.
<참조>
http://developer.android.com/guide/developing/tools/proguard.html
Android SDK r08 과 ADT 8.0.1에서 Proguard지원을 함으로써
간편하게 Proguard를 적용할 수 있게 되었다.
ADT 8.0.1에서부터 새로 안드로이드 프로젝트를 생성하면
프로젝트 root에 proguard.cfg파일이 추가로 생성된다.
프로젝트에 있는 default.properties 파일에
proguard.config=proguard.cfg
위 한줄을 추가하면 proguard적용 완료.
평소 디버그 시에는 동작안하고
이클립스에서 Android Tools -> Export Signed/Unsigned Application Package...를 할 때에만,
즉 릴리즈시에만 Proguard를 적용시킨다.
좀 더 자세한 내용을 원하면 아래 페이지를 참조하면 됩니다.
<참조>
http://developer.android.com/guide/developing/tools/proguard.html
2010년 10월 12일 화요일
AppWidgetProvider 와 BroadcastReceiver
AppWidgetProvider에서 Intent계열 Action은 registerReceiver()를 호출하면 에러가 난다.
AndroidManifest.xml에도 intent-filter를 등록해도 제대로 동작하지 않는다.
내가 내린 결론은 AppWidgetProvider에선 AppWidgetManager에 있는 Action만 Broadcast가 가능한 것 같다.
AppWidget제작시 자연스레 Service가 필요한 것 같다.
하지만 사용자가 강제종료하는 경우가 많아 Service가 죽으면 Widget이 제대로 동작하지 않는다.
AndroidManifest.xml에도 intent-filter를 등록해도 제대로 동작하지 않는다.
내가 내린 결론은 AppWidgetProvider에선 AppWidgetManager에 있는 Action만 Broadcast가 가능한 것 같다.
AppWidget제작시 자연스레 Service가 필요한 것 같다.
하지만 사용자가 강제종료하는 경우가 많아 Service가 죽으면 Widget이 제대로 동작하지 않는다.
2010년 10월 9일 토요일
옵티머스Q 단종
<이미지 출처 - LG Cyon공식 홈페이지>
옵티머스 Q의 단종 소식
10월말까지 출고 후 11월까지만 판매된다.
현재 LG에서 나온 하이엔드 스마트폰임에도 불구하고 LG U+나와 제대로 평가받지 못한 비운의 명기
LGU+로 나오지 않았다면 출시때부터 안드로이드2.1로 나왔을 텐데 1.6으로 나와 실망감이 컸다.
그리고 LG의 2.2프로요 업그레이드 약속도 불분명한 태도를 취해 사용자들이 집단 청원한 것도 안좋은 이미지 형성에 컸다.
SKT+갤럭시 S, KT+아이폰4의 싸움에 전혀 주목받지 못하다가 나름 개념 쿼티키패드를 가져 일부 유저들에게는 명기로 꼽히지만 이젠 쓸쓸히 퇴장한다. 요즘 계속되는 LGE의 삽질은 언제 끝이 나려나~
***
옵티머스Q의 단종 소식이 번복되었다. 실제 LGU+에서 단종이 안될지는 두고볼 일이지만 이번 단종 헤프닝으로 옵티머스Q의 판매량이 급증했던걸 보면 뭍히기엔 아까운 폰이다.
옵티머스 Q의 단종 소식
10월말까지 출고 후 11월까지만 판매된다.
현재 LG에서 나온 하이엔드 스마트폰임에도 불구하고 LG U+나와 제대로 평가받지 못한 비운의 명기
LGU+로 나오지 않았다면 출시때부터 안드로이드2.1로 나왔을 텐데 1.6으로 나와 실망감이 컸다.
그리고 LG의 2.2프로요 업그레이드 약속도 불분명한 태도를 취해 사용자들이 집단 청원한 것도 안좋은 이미지 형성에 컸다.
SKT+갤럭시 S, KT+아이폰4의 싸움에 전혀 주목받지 못하다가 나름 개념 쿼티키패드를 가져 일부 유저들에게는 명기로 꼽히지만 이젠 쓸쓸히 퇴장한다. 요즘 계속되는 LGE의 삽질은 언제 끝이 나려나~
***
옵티머스Q의 단종 소식이 번복되었다. 실제 LGU+에서 단종이 안될지는 두고볼 일이지만 이번 단종 헤프닝으로 옵티머스Q의 판매량이 급증했던걸 보면 뭍히기엔 아까운 폰이다.
2010년 10월 2일 토요일
Android Application Fundamentals
http://developer.android.com/guide/topics/fundamentals.html
안드로이드 Fundamental에 대해 설명된 페이지다.
생각보다 알찬 정보가 많다.
보통 책에서도 앞장에서 많이 설명하기는 한데 안드로이드에 대한 경험없이 읽으면 놓치기 쉽다.
필독할 필요가 있는듯!
안드로이드 Fundamental에 대해 설명된 페이지다.
생각보다 알찬 정보가 많다.
보통 책에서도 앞장에서 많이 설명하기는 한데 안드로이드에 대한 경험없이 읽으면 놓치기 쉽다.
필독할 필요가 있는듯!
Notification의 Pending Activity 단일로 실행되게 하기
AndroidManifest.xml에 Activity를 정의할 때 launchMod를 singleTask로 지정하면 된다.
<activity android:name=".SampleActivity" android:launchMode="singleTask" />
<activity android:name=".SampleActivity" android:launchMode="singleTask" />
안드로이드 ListView에서 리스트 끝에 오면 자동으로 데이터를 추가하고 싶을 때
ListView에서 리스트의 끝에 오면 자동으로 데이터를 추가해서 갱신하고 싶었는데
ListView에 OnScrollListener를 등록해서 해결했다.
OnScrollListener의 onScroll메소드를 재정의하면 된다.
new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if(totalItemCount > 0 && firstVisibleItem + visibleItemCount == totalItemCount) {
//데이터 처리
}
}
}
ListView에 OnScrollListener를 등록해서 해결했다.
OnScrollListener의 onScroll메소드를 재정의하면 된다.
new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if(totalItemCount > 0 && firstVisibleItem + visibleItemCount == totalItemCount) {
//데이터 처리
}
}
}
안드로이드 유튜브 내부 Uri 주소
어플리케이션에서 유튜브 동영상을 재생하고 싶을 때
폰에 내장된 유튜브 어플리케이션을 이용해 재생하면 쉽게 재생할 수 있다.
내부 유튜브 Uri 주소 : vnd.youtube:XXXXX (유튜브 video id)
ex)
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + videoId));
startActivity(intent);
당연히 에뮬레이터에서는 돌아가지 않으며 폰에서만 확인할 수 있다.
폰에 내장된 유튜브 어플리케이션을 이용해 재생하면 쉽게 재생할 수 있다.
내부 유튜브 Uri 주소 : vnd.youtube:XXXXX (유튜브 video id)
ex)
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + videoId));
startActivity(intent);
당연히 에뮬레이터에서는 돌아가지 않으며 폰에서만 확인할 수 있다.
2010년 10월 1일 금요일
알짜만 골라 배우는 안드로이드 프로그래밍 2
가장 최근에 구매한 안드로이드 책이다. CookBook처럼 주제별로 빨리 찾아서 책을 보기에 좋다. 필요한 요소들을 많이 다루는 것은 좋으나 설명이 너무 적다. 그리고 내용이 쉬운 건 좋은데 심화과정의 내용은 적다. 그래도 활용도가 높은책이다.
참고로 최근 들어서 한국인 저자의 책들도 나오기는 하는데 마음에 드는 책이 없어서 구매한 건 없다. 특징이 없거나 무엇보다 한국인 저자들에 대한 불신 같은게 있달까. 과연 제대로 안드로이드 경력을 갖춘 사람들이 책을 쓴건지 책 내용이 실망스런 경우가 많다. 워낙 요즘 안드로이드가 돈이 된다하니 여기저기서 급조한 티가 많이 난다.
아무래도 계속 미국 번역서적에 의존할 수 밖에 없을 것 같다.
안드로이드 2 마스터북
최근에 출판된 관계로 안드로이드 2.2 프로요 관련 내용을 다루고 있어서 좋다. 크로스 플랫폼인 티타늄 프로젝트도 다루고 있는데, 사실상 이책을 통해 접근하는 유저들은 안드로이드를 이제 막 다루려는 사람인데 크로스 플랫폼을 다룬건 책의 구성상 좋지는 않다.
안드로이드의 미래에 대해서 불안해 하는 사람들이 많은데 크로스 플랫폼이라고 해서 확실한 것은 아니다. 티타늄 프로젝트뿐만 아니라 PhoneGap 등 여러 플랫폼이 나오고 있어서 어느 플랫폼이 살아남을 지 모르기 때문이다. 물론 크로스 플랫폼들이 html/javascript기반으로 프로그래밍이 가능하지만 결국 고급테크닉을 사용하기 위해선 특정 플랫폼에 종속적이 될 수 밖에 없다.
프로 안드로이드 게임 개발
국내에 출간된 안드로이드 서적 중 유일하게 게임에 대해 상세히 다룬 책이다. 아무래도 게임관련해서 자세히 알고 싶으면 기존에 출간된 게임서적을 참고해서 안드로이드에 적용할 수 밖에 없는 것 같다.
그리고 NDK를 다룬 얼마 안되는 책이기도 하다. 하지만 현재 게임만들 일이 없어서 봉인 중이다.
안드로이드 매력에 빠지다
레퍼런스에 충실한 미국 쪽 수입서적과는 달리 일본 쪽에서 수입되는 컴퓨터 서적은 바로 써먹을 수 있는 예제 위주의 책이 많은 편인데 이 책도 그렇다. 하지만 바코드 예제 써먹은 이후론 봉인중. 물론 다른 안드로이드 책을 많이 구매한 이유도 있다.
시작하세요! 안드로이드 프로그래밍
저자가 모바일 프로그래밍 경력이 있는 관계로 기존 모바일 프로그래밍 관련 내용이 추가되어있다. 부록에 딸려 있는 내용 때문에 사긴 했는데 기대외로 가끔 도움이 많이 되는 책이다. 이 책 역시 나온지 시간이 흐른 관계로 안드로이드 1.6기반이다.
프로페셔널 안드로이드 애플리케이션 개발
나온지 오래되서 안드로이드 1.5/1.6기반의 내용이지만 가장 쓸만한 책이다. 초반엔 많이 봤지만 요즘은 익숙해지니 잘 안보게되는 책이 되버렸다. 개정판이 나오긴 했지만 차이점은 적은 편이다.
피드 구독하기:
글 (Atom)








