스마트폰/팬택2013.05.30 01:15

베가 시리즈 하면 생각나는것이 무엇이 있을까요?

보통 이병헌(?)을 많이 떠올리시지 않을까 싶습니다.(아니면 스카이...)

 

요즘 핸드폰에 관심이 부쩍 늘어서 많이 알아보고 다녔는데, 아무래도 메인으로 쓰는 베가레이서1 이 있긴했지만

동영상 강의를 듣거나 할때는 부족한 점이 많아서 고심끝에 선택한 폰이 베가No6 였습니다.

(경쟁사에 비해서 저렴한 가격에 태블릿에 가까운 제품으로는 베가No6 가 딱이라는 판단!)

 

이왕 구매하게 된것 그냥 넘어가긴 아까워 간단하게 개봉 및 사용기를 작성해 보도록 하겠습니다.

 

위에 쨍한 정면사진은 봤으니 바로 뒷면부터 살펴보도록 하겠습니다.

 

개통한 기기는 SKT 전용 단말기지만 로고 각인제외하고는 크게 타통신사용 제품도 다른점은 없어 보입니다.

후면에 카메라는 1300만 화소를 지원하고, 바로 아래쪽에 V터치라고 해서 후면 터지가 가능한 곳이 있습니다.

(이곳에 특정 기능을 사용하도록 설정 할수도 있으며, 폰이 너무커서 한손으로 정면에서 터치를 통한 화면스크롤이 불가능할때

후면의 V터치를 이용해서 스크롤등도 가능합니다.)

 

다른 각도에서 본 모습입니다. QUALCOMM 칩이 들어가면 꼭 붙은 스티커가 붙어있습니다.(퀄컴부심도 아니고...)

 

카메라와 V터치 부분을 클로즈업 해보았습니다.

스피커도 살포시 카메라 왼쪽에 자리하고 있습니다. 플래시 정도는 스마트폰이라면 요즘은 거의 다 있는듯 합니다.

케이스 부분보다는 카메라 부분이 돌출된 모습이 보입니다.

 

안테나는 폰 오른쪽 아래에서 뽑아서 사용가능합니다. DMB를 보시려면 필수고, 4단까지 늘어납니다.(1단만 펼쳐둔 상태)

 

뒷커버를 분해해 보았습니다. 커다란 3,140 mAh 대용량 배터리가 보이고, 약간은 허전한 뒷커버 내부가 보입니다.

(뒷커버가 사실 가리개 용도다보니 거의...)

 

설정샷 한방 찍어보았습니다. VEGA!

 

베가No6는 MicroSIM 방식의 USIM 카드만 삽입이 가능합니다.

바로 위쪽에는 MicroSD 카드를 삽입가능한 부분이 존재합니다.(용량이 기본도 크지만 모자라면 MicroSD 로 UPUP!)

 

이어폰 단자는 폰 상단부에 있습니다. 이어폰 단자만 찍기 그래서 스피커와 카메라 V터치부분이 함께 출연했습니다.

 

블랙말고 화이트 모델도 있는데, 제품 문제로 교환을 하면서 화이트를 중간에 잘못 받아서 잠시 써보게 되어 외관사진을

추가로 찍어보았습니다.

 

기본 스티커를 저렇게 붙어서 나옵니다. LG 모델들은 광고가 없어서 제거안하고도 폰사용이 바로 가능한데...

저런거 설명서에만 넣고 기본 필름에서는 빼줬으면 하는 바램이 있습니다.

 

뒷면 입니다. 로고가 다 있는데, 사진상으로는 잘 안보이지만 실제로는 은색빛으로 되어있고 잘 보입니다.

우윳빛갈 베남식 입니다.

 

배터리 커버를 들어내도 유윳빛깔 입니다.(예전에 경쟁사 어떤 폰은 커버만 흰색이었...)

 

블랙이랑 구조가 다 똑같고 색상차이만 확연합니다. 블랙 / 화이트 모두 인기있고 무난한 색상이라 뭐

본인이 좋은것으로 선택하면 될듯 합니다. 남자가 6인치나 되는 하얀물체 들고다니면 필시 붕대로 둘둘감은

흉기라고 오인할 가능성이 많아보여 저는 검정색으로 선택했습니다...

 

부팅을 하면 SK 로고와 함께 시작합니다.

 

이미 실사하는 중이라 최초 설정화면은 패스합니다. 어차피 구글 계정연동이나 이런부분들 물어보는

다른 안드로이드 기기들도 다 해야하는 작업입니다.

(몇가지 설명이 나오긴 하지만 읽기 귀찮아서 항상 패스합니다.)

 

숨기기 기능으로 어플목록을 최대한 간결하게!!!

 

인증샷도 필수겠죠!?

 

실제 화면은 캡쳐를 통해서 만나보도록 하겠습니다.

사진으로 찍은것으로 보셨으니 뭐 외형은 다 보셨고, 제가 꾸민거 자랑할겸 올려 봅니다.

(하지만 핸드폰 교체로 인해서 설정이 다 날아가서 새로 세팅해야 하는것이 함정이라면 함정입니다.)

 

비 엄청 오네요... 깔끔하게 정리한 메인, 기본 앱인 뮤직 플레이어를 실행한 상태로 상단 인디케이터 바를 내려서 알림을 확인한

모습입니다. 간편설정에서는 켜고 끄는것 위주고, 설정진입탭으로 가면 세부설정이 가능한데...

LG 제품들은 롱터치를 통해서 설정화면으로 가는데 그쪽이 사용자 인터페이스와 사용자 경험을 고려한다면,

LG쪽 방식이 더 마음에 듭니다.(특허때문에 따라하진 못했을련지도... 특허일까요...?)

 

기본제공 계산기 및 메모 입니다.

어디서 많이 보던 단어들만 있군요. 폰트도 베가계열 제품들에 기본 제공되는 체인데 이름을 까먹었습니다.

 

뮤직 플레이어 목록 화면과 안드로이드 알람시계 설정입니다.

뭐 넓은 화면이라 사실 캡쳐 엄청큰데 원본으로 올리긴 그래서 두개씩 붙이고 작게 조절했습니다.

(그래도 잘보이네요... 크다...)

 

모바일 Tworld 앱 실행화면입니다. 제가 일부분은 모자이크 했습니다.

35 요금제를 사용하다보니 데이터만 모자라서 많은분에게 강탈했습니다.(2G 면 한달 내내 프리하게 씁니다 저는...)

 

버전 업데이트 창 및 구글 플레이 스토어 화면입니다.

 

 

마지막으로 1300만 화소라도 카메라 성능이 구리지 않을까 하시는 분들을 위해 직접 촬영한 사진하나 올려봅니다.

 

 

뒤쪽 모기장까지 잘 보이시죠 ^^.

집에서 키우는 화분인데 증식을 열심히 시켜서 점점 늘어나고 있습니다. 원래는 키가 작게 자라야 예쁜데....

나무가 되어갑니다.

 

 

베가No6 는 현존 폰중에 국내출시제품으로는 상당히 큰 제품입니다.(탭이라고 안부르는 녀석중에서...)

이미 베가R3 부터 사실상 베가에 대한 안좋은 이미지가 점점 좋게 바뀌어 가고 있는듯 하고,

(이건 물론 고급사용자... 역시 한국에서는 브랜드와 마케팅을 이길자가 없습니다...  대기업 두곳이 사실상
제일 잘나가죠 글로벌 하게.. 물론 제품도 좋습니다.)

베가레이서1 때의 그저그런 수준에서 확실히 올라선 느낌입니다.

 

베가 초창기 모델들부터 지인들이 사용하는것을 많이 보았지만, 역시 최신폰 답게 가장 좋은 퍼포먼스와 쨍한 액정

등등 나무랄데 없는 모습을 보여줘서 개인적으로 다음모델인 베가아이언도 기대가 큽니다.

(물론 가격이 아직은 제손에 닿질 않아서 기회가 되면 꼭 써보고 싶긴 합니다.)

 

베가아이언... 그리고 다음모델이 더 기대되게 만들어준 베가No6

적어도 몇달동안은 주력기기가 될듯한데 큰탈 없이 잘 쓸수 있으면 좋겠습니다!

 

Posted by 해악사마
안드로이드 개발2011.03.09 18:46
개발을 하다보면 아이폰이나 아이팟 혹은 아이패드처럼 딱 지정된 몇개의 해상도만 쓰는것이 아니라.

워낙 기기별로 뒤죽박죽이라서 디스플레이를 멀 쓰는지 필요할때가 생겼다.

간단하게 해당 소스를 사용해서 디스플레이의 width 및 height 값을 가져올 수 있다.

Display display = ((WindowManager)getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
    int display_width = display.getWidth();
    int display_height = display.getHeight();
Posted by 해악사마
안드로이드 개발2011.02.17 15:56
안드로이드 어플을 개발하면서

Activity중 어느 Activity가 현재 최상위에 나와있는지 조건문으로 확인을 하려고 했는데,

어디서 봐야할지를 몰라서 고민하던중 찾은 방법이다.

ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> Info = am.getRunningTasks(1);
ComponentName topActivity = Info.get(0).topActivity;
String topactivityname = topActivity.getPackageName();

해당 소스를 작성한뒤

Log.d(TAGNAME, topactivityname);

위와 같이 로그를 찍어보면 최상위 Activity 명이 나오게 된다.

p.s : 위의 사항을 그냥 실행하려고 하면 에러가 발생하게 된다.
        Manifest 에서 아래의 user permission을 추가해 주어야 한다.
        android.permission.GET_TASKS
Posted by 해악사마
안드로이드 개발2011.02.16 15:30
안드로이드 앱을 만들면서 앱자체가 죽어버리지는 않는데, LogCat 상에서 붉은색 글씨로

Finalizing a Cursor that has not been deactivated or closed. 이라는 메시지가 나왔다.

검색을 해보았더니 메모리 릭이 발생하는 부분이라서 어찌되었든 수정이 필요한 부분이었다.


처음에는 단순히

try {
} catch(SQLException e){} 정도로만 처리해주면 될 줄 알았는데, try 문 안에 넣어줘도 결과는 마찬가지였다.

소스를 전체적으로 다시 보면서

커서 사용시 닫아줘야 하는데 실제로 안닫아 주고 그냥 넘어간 부분들이 많았다.

예를 들면
Cursor mCursor = null;
mCursor = mDb.query(true, DATABASE_TABLE, new String[]{"test"},"test" + "=" + 'hi', null, null, null, null, null);
mCursor.close();

이런식으로 그냥 Cursor 사용이 끝났으면 .close();로 닫아주기만 하면 된다.

일단 해당 에러로 어플이 죽지 않는다면 자칫 넘어가기 쉬운 일이지만 차후에 메모리 릭이라던가 하는 부분으로 귀찮을 수

있는 부분이니 잘 꼭 잡고 넘어가야겠다.
Posted by 해악사마
안드로이드 개발2011.02.15 15:01

기기별 혹은 브랜드 별로 구분을 해야 할 필요등이 생겼을때 유용한 방법 입니다.

        import android.os.Build; // android.os.Build 를 참조하기 위해서 import 합니다.

        Log.i("BOARD", Build.BOARD);
        Log.i("BRAND", Build.BRAND);
        Log.i("CPU_ABI", Build.CPU_ABI);
        Log.i("DEVICE", Build.DEVICE);
        Log.i("DISPLAY", Build.DISPLAY);
        Log.i("FINGERPRINT", Build.FINGERPRINT);
        Log.i("HOST", Build.HOST);
        Log.i("ID", Build.ID);
        Log.i("MANUFACTURER", Build.MANUFACTURER);
        Log.i("MODEL", Build.MODEL);
        Log.i("PRODUCT", Build.PRODUCT);
        Log.i("TAGS", Build.TAGS);
        Log.i("TYPE", Build.TYPE);
        Log.i("USER", Build.USER);

각 해당 하는 항목의 값을 적절히 사용하시면 될 것 같습니다.

삼성 갤럭시S의 경우는

LOGCAT에

NFO/BOARD(32174): SHW-M110S
INFO/BRAND(32174): samsung
INFO/CPU_ABI(32174): armeabi-v7a
INFO/DEVICE(32174): SHW-M110S
INFO/DISPLAY(32174): FROYO.SK22
INFO/FINGERPRINT(32174): samsung/SHW-M110S/SHW-M110S/SHW-M110S:2.2/FROYO/SK22:user/release-keys
INFO/HOST(32174): sep-57
INFO/ID(32174): FROYO
INFO/MANUFACTURER(32174): samsung
INFO/MODEL(32174): SHW-M110S
INFO/PRODUCT(32174): SHW-M110S
INFO/TAGS(32174): release-keys
INFO/TYPE(32174): user
INFO/USER(32174): root

이런식으로 찍히는것을 확인 할 수 있습니다.


에뮬레이터의 경우는

INFO/BOARD(1601): unknown
INFO/BRAND(1601): generic
INFO/CPU_ABI(1601): armeabi
INFO/DEVICE(1601): generic
INFO/DISPLAY(1601): sdk-eng 2.2 FRF91 43546 test-keys
INFO/FINGERPRINT(1601): generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys
INFO/HOST(1601): android-test-25.mtv.corp.google.com
INFO/ID(1601): FRF91
INFO/MANUFACTURER(1601): unknown
INFO/MODEL(1601): sdk
INFO/PRODUCT(1601): sdk
INFO/TAGS(1601): test-keys
INFO/TYPE(1601): eng

이런식으로 찍히는 것을 확인 할 수 있습니다.
Posted by 해악사마
안드로이드 개발2011.02.15 13:42

프로그래밍을 하다보면 특정 장치라는것을 식별하기 위한 값들을 가져와서 각 장치별로 구분이 가능해야 하는데,
이때 쓸만한 것이 전화번호, IMEI값(?), MAC주소 같은것이 될것 같네요.

// 고유 값 알아보기
// 휴대폰의 전화번호 가져오기
        TelephonyManager mgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        String phoneNumber = mgr.getLine1Number();

        WifiManager wifi = (WifiManager)this.getSystemService(Context.WIFI_SERVICE);
       
        String imei = mgr.getDeviceId();
        WifiInfo info = wifi.getConnectionInfo();

// 위와 같은 소스를 통해서 phoneNumber 변수와, imei에는 특정값이 들어가게 될 것입니다.
// 맥주소의 경우는 info.getMacAddress 로 가져와서 바로 출력하도록 했네요.
       
        Log.d("Device Id : ", "휴대폰 번호 = " + phoneNumber + "  단말기 번호 =" + imei + "  맥주소 : " + info.getMacAddress());


해당 내용을 작성하시고 에뮬레이터 상에서 테스트 하시면, phoneNumber 를 제외하고는 제대로 나오지 않을 것입니다.
아마도 imei 는 16자리의 숫자 0이 찍히게 될 것이고, Mac주소는 null 값이 나오게 됩니다.

imei값은 들어있지 않고, Mac주소의 경우는 에뮬레이터에서 Wifi 드라이버를 로딩해오지 않기 때문에 없는것으로 나온답니다.

Posted by 해악사마
안드로이드 개발2011.02.08 13:22
이미지 기본상태와 Press 상태에 따라서 다른 효과를 보여주고 싶었는데,
소스에서 하나하나 조건식으로 하려니까 별로 좋은거 같지 않았는데,
쉬운 방법을 찾았다.

xml 파일을 drawable 폴더쪽에 하나 생성해서 쓰면 되는데

아래와 같은 방식으로 만들어서 넣으면 되고, 이후에 이미지 버튼을 선언할때
ImageButton btn = (ImageButton) findViewById(R.id.생성한xml파일) 식으로 선언해 주면 된다.

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- Pressed -->
    <item android:state_pressed="false" android:drawable="@drawable/누르지 않았을때 보여질 이미지" />
    <item android:state_pressed="true" android:drawable="@drawable/Press시 보여질 이미지" />
</selector>
Posted by 해악사마