Android O 의 새로운 기능알림 알림 채널, 배경 한도, PIP 등



Android O의 새로운 기능 

: 백그라운드 한계, 알림 채널, PIP (picture-in-picture), 자동 채우기, 적응 형 아이콘 및 API 변경 등이 추가되었습니다.


알림 채널. 

사용자는 채널 소개를 통해 알림을보다 효과적으로 제어 할 수 있습니다. 이 채널은 여러 응용 프로그램의 메시지를 그룹화 할 수 있으며 사용자는 채널을 활성화 / 비활성화하거나 잠금 화면에서 중요도, 사운드, 조명, 진동, 가시성 중 하나의 설정을 적용 할 수 있습니다. 알림에는 더 이상 우선 순위가 지정되지 않으며, 알림이 표시되는 방법과 노이즈, 빛 또는 진동과 관련된 채널을 결정하는 새로운 7 가지 중요도가 제공됩니다. 여러 사용자 계정에 채널을 그룹화 할 수 있습니다. 이는 업무용 및 개인용으로 사용되는 장치에서 채널을 관리하는 데 유용합니다.


백그라운드 제한. 

Android O는 배터리 수명과 성능을 향상시키기 위해 더 많은 백그라운드 제한을 도입합니다. 새 제한의 영향을받는 영역은 암시 적 브로드 캐스트, 백그라운드 서비스 및 위치 업데이트입니다. 백그라운드에서 실행중인 서비스는 몇 분 후에 중지됩니다. 이러한 서비스를 사용하는 응용 프로그램은 제한없는 서비스를 시작할 수있는 몇 분 동안 임시 허용 목록에 배치 될 수 있습니다. 이는 우선 순위가 높은 메시지, 브로드 캐스트 수신시 또는 통지에서 보류중인 인 텐트를 실행할 때와 같이 사용자가 볼 수있는 작업을 응용 프로그램이 처리해야하는 경우에 발생합니다.

위치 업데이트와 관련하여 백그라운드에서 실행되는 응용 프로그램은 매 시간마다 이러한 업데이트를 수신합니다. 응용 프로그램은 포 그라운드로 응용 프로그램을 가져 오거나, 포 그라운드 서비스를 사용하거나, Geofencing API를 사용하거나 수동 위치 수신기를 사용하여이 동작을 변경할 수 있습니다.



PIP (Picture-in-picture). 

Android TV에서 이미 사용 가능하며 PIP는 이제 Android로 가져와 다른 활동 내에서 활동을 표시 할 수 있습니다. PIP는 Android N에 도입 된 멀티 윈도우의 특별한 경우이며 특히 동영상 콘텐츠를 재생하는 데 적합합니다.

자동 완성 프레임 워크. Android O는 사용자가 시간을 절약하고 양식 작성 작업을 반복하지 않기 위해 애플리케이션이 데이터 및 자동 완성 양식을 저장하는 데 사용할 수있는 프레임 워크를 도입합니다. 로그인 데이터 또는 신용 카드 정보 사용에 대한 예가 포함됩니다.


적응 형 아이콘. 

다양한 기기의 실행 프로그램은 둥근 모양, 사각형 모양, squircle 모양 등 다른 모양의 아이콘을 표시 할 수 있습니다. Android O는 배경과 전경을위한 두 개의 이미지 레이어와 마스크로 시작 아이콘을 만듭니다. 이 아이콘은 시각 효과를 지원합니다.

멀티 디스플레이. 개발자는 여러 디스플레이가있는 장치에서 활동을 한 디스플레이에서 다른 디스플레이로 이동할 수 있습니다.


자바. 

Android O에는 OpenJDK 8의 java.time과 OpenJDK 7의 java.nio.file 및 java.lang.invoke가 포함되어 있습니다. 일부 벤치 마크에서는 런타임 성능이 최대 2 배 향상되었습니다.

Android O의 다른 개선 사항에는 XML의 글꼴 리소스, 앱의 광역 색상, 고품질 Bluetooth 오디오 코덱, WiFi 인식, 키보드 탐색, WebView 개선 등이 있습니다.


Google은이 Android 미리보기 버전은 완전히 안정적이지 않으며 후속 버전은 다음 달에 발행 될 것입니다. 

Android O 용으로 개발하려면 Android Studio 2.4 Canary가 필요합니다. 

Android의 새 버전은 에뮬레이터 또는 여러 Nexus 및 Pixel 기기에서 테스트 할 수 있습니다.


출처 : https://www.infoq.com/news/2017/03/android-o?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global





View : http://developer.android.com/reference/android/view/View.html (원문)

이 클래스는 사용자 인터페이스 구성요소에 대한 기본적인 생성 블록을 나타냅니다.


View는 화면의 사각 영역을  포함하며 그리기와 이벤트 처리를 포함합니다.
View는 Button, Text Field 등의 인터렉티브 UI 구성 요소를 만드는데 사용하는 기본 클래스입니다.
View Group의 하위 클래스는 레이아웃의 기본 클래스로, 투명 컨테이너에 View 또는 다른 View Group을 포함합니다.

안드로이드가 View를 그리는 방법 : http://developer.android.com/guide/topics/ui/how-android-draws.html (원문)

2단계에 걸쳐 작업은 진행 됩니다.

1. mesure(int, int)를 통한 영역 확인
: 나->자식 TopDown 방식으로 각각 요소에 대한 공간을 계산하여 확보 합니다.

2. layout(int,int,int,int,)를 통한 배치 작업
: 나->자식 TopDown 방식으로 위에서 지정된 영역 내에서 각각의 요소를 배치 합니다.

View 사용 방법

1. Properties 설정 : 각 요소의 프로퍼티를 설정한다.

2. Focus 설정 : 포커싱을 설정한다 (이벤트에서 포커스 획득, 손실을 이용하여 다양하게 처리 가능

3. Listener 설정 : 원하는 리스너를 등록하여 사용할 수 있다.
Ex) setOnFocusChangeListener(View.OnFocusChangeListener)

4. Visibility 설정 : 뷰를 보여줄지 여부를 설정할 수 있다. setVisibility(int)
    
ID

: View는 Widget과 관련된 상수 ID값을(R.java 참조) 가지고 있으며 일반적으로 xml을 통해 설정한다.

Xml 예시 )

       <Button id="@+id/my_button"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="@string/my_button_text"/>

Activity에서 사용예시 )

      Button myButton = (Button) findViewById(R.id.my_button);

    
기타

Position, Size, Padding & Margins, Layout, Drawing, Focus Handling, Touch Mode, Scrolling, Tags, Animation 은

http://developer.android.com/reference/android/view/View.html (원문) 을 참조하기 바람


Widget : http://developer.android.com/reference/android/widget/package-summary.html (Wdiget 패키지 요약)

Widget은 유저와 상호작용을 하는 View Object입니다. 안드로이드는 Button, Check Box, Text-Entry 등 다양한 Widget을 제공하여 빠른 UI설계를 도와 줍니다. Clock, Zoom, Date Picker와 같은 몇몇 Widget은 복잡하게 이뤄져 있습니다. Widget은 제한을 두고 있지 않으며 기존 Widget 조합 또는 자신만의 View Object를 만들 수도 있습니다.

UI Event : http://developer.android.com/guide/topics/ui/ui-events.html (UI 이벤트 처리)

이제 UI를 만들었으면 버튼을 눌러 다음 행동을 처리하는 Event 처리를 해야 하는데 2가지 방법이 존재한다.

1. 이벤트 리스너 정의 및 등록
View.OnClickListener : 클릭 이벤트 처리
View.OnTouchListener :  터치 이벤트 처리
View.OnKeyListener : 키 이벤트 처리

2. View에 존재하는 콜백 메소드 재정의
onTouchEvent() : 터치 콜백
onTrackballEvent() : 트랙볼 콜백
onKeyDown() : 키다운 콜백

Menu : http://developer.android.com/guide/topics/ui/menus.html (메뉴 만들기)

Menu는 UI의 중요한 부분 중 하나로 메뉴 키를 누를 때 동작하며 기본적으로 안드로이드에서 제공합니다.

메뉴는 View를 사용하면 자동 생성되며 onCreateOptionMenu(), onCreateContextMenu() 이 2개의 콜백 메소드로 알려주며, 항목 선택시에는 onOptionsItemSelected(), onContextItemSelected() 콜백 메소드를 통하여 제어 할 수 있습니다. 리스너를 생성 제어하지 않아도 됩니다.

고급기능


Adapter : http://developer.android.com/guide/topics/ui/binding.html (Apdater를 이용해 데이터 바인딩 하기)

View 또는 ViewGroup의 정보를 하드 코딩이 아니라 외부 정보를 바인딩하여 처리 하고 싶을 때 사용하는 것으로, View 및 각각의 자식 객체를 Adapter를 통해 초기화 및 생성할 수 있습니다.

Style & Themes : http://developer.android.com/guide/topics/ui/themes.html (스타일과 테마 적용하기)

단순한 View 만족하지 못할 경우 , 스타일과 테마을 적용하여 기존 UI를 좀더 멋있게 꾸밀 수 있다.

Style (작은 것) : 특정 View 요소에 적용 가능
Theme (큰 것) : 특정 Activity 및 전역 Application에 적용 가능

Create Custom Widget : http://developer.android.com/guide/topics/ui/custom-components.html (원문)

기본적인 접근

1. View또는 기존 생성한 클래스를 상속(Extends) 받는다.
2. 상위 클래스(Super Class)의 메소드(onXXX …) 를 오버라이드 한다. Ex) onDraw(), onKeyDown(), onMeasure()…
3. 이제 클래스를 새롭게 확장한 이후 이 클래스를 바탕으로 좀더 확장해 나간다.

참조

onDraw () : 2D 그래픽을 그리기 위한 메소드
onMeasure() : Widget의 크기(영역 : 폭, 높이)을 지정하는 메소드

기존 존재하는 클래스 확장 예시

1. 정의
public static class MyEditText extends EditText

2. 클래스 초기화
Super를 사용하여 상위 클래스를 초기화 한다 이후 xml 을 통해 레이아웃을 초기화 할 수 있다.

3. 메소드 오버라이드
onDraw(), onMeasure() 등을 오버라이딩 하여 원하는 형태로 꾸며준다.

4. 커스텀 컴포넌트 사용
      <view
        class="com.android.notepad.NoteEditor$MyEditText"
        id="@+id/note"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@android:drawable/empty"
        android:padding="10dip"
        android:scrollbars="vertical"
        android:fadingEdge="vertical" />

[잡설]

이정도면 40분동안 주저리는 충분하겠지 ..? 후후훗~ 음... 근데 공부하면서 느끼는건데 안드로하다 플렉스하다 와따가따 하면 변수위치가 해깔림 떱.

 Flex)
var sampel:Sample = new Sample;
 VS  Java)
Sample sample = new Sample();

음.. 뭐 이런거 ?




LayoutInflater

XML파일정보를 통해 View를 셋팅할 때 사용되며, 바로 사용되지 않으며
getLayoutInflater() 또는 getSystemService(String) 을 통해
현재 Context에 연결된 표준 LayoutInflater를 반환한다.

예시)
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

자신만의 view를 위한 LayoutInflater(LayoutInflater.Factory) 를 만들기 위해서는,
cloneInContext(Context) 를 통해 존재하는 ViewFactory를 복제한 이후,
setFactory(LayoutInflater.Factory) 를 통해 Factory를 설정한다.

[참조]
퍼포먼스 상의 이유로 인해 XML은 컴파일된 자원(ex) R.xxx )에 만 지원한다.

(빌드시 xml을 파싱하는것은 무거운 대가를 지불하기 때문임..)

원문 주소 :  http://developer.android.com/reference/android/view/LayoutInflater.html

기존 r2(컵케이크) => r3(도우너트) 으로 변경됨.

다운로드 주소 : http://developer.android.com/sdk/1.5_r3/index.html
수정 및 변경사항 : http://developer.android.com/sdk/RELEASENOTES.html#1.5_r3
===============================================================================================================

[지디넷코리아]구글이 안드로이드 모바일 운영체제(OS)에 포함되는 '도우너트' 소스코드를 개발자들에게 공개했다.

 

도우너트는 이전에 선보인 컵케이크와 마찬가지로 그 자체로 독자적인 시스템이라기보다는 차세대 안드로이드의 부분이 될 것이라고 외신들이 27일(현지시간) 전했다.

 

도우너트는 CDMA 이동통신 네트워크, 통합검색, 문서자동읽기 등을 지원한다. 그러나 초미의 관심사였던 멀티터치 기능은 이번에는 포함되지 않았다고 지디넷은 전했다.


현재나와 있는 스마트폰중에선 애플 아이폰과 팜 프리가 멀티터치 기능을 제대로 구현했다는 평가를 받고 있다. 일부 업체들은 애플이 갖고 있는 특허로 인해 멀티터치 기능을 적용하는 것을 주저하는 상황이다.
[ 소개 ]

네이버 OPEN API 활용을 통하여 실시간 순위 정보를 ListView를 통하여 보여 줄 수 있도록 만듬.

차후 수정 예정 목록

1) 파서 부분을 업그레이드 할 예정
: 단 SAX또는 DOM은 안사용... 왜? 별로 파싱할 내용이 없으니깐... 필요시 수용가능

2) 주기적 정보 갱신
: TimerTask 또는 Thread를 통하여 주기적으로 이용하여 화면을 주기적으로 갱신하도록 한다.

[ 추신 ]

당신의 소중한 리플이 더 멋진 프로그램으로 나아가는 소중한 한 걸음이 됩니다.


[ FILE ]

[ RESULT ]


[ FLOW ]




작년 2008년에 ADC I 에서 수상한 작품을 소개한 사이트 링크에서 관심있는 수상작을 골라 포스팅 합니다.
(올해두 ADC가 열리네요 ^^ 자세한 내용은... http://code.google.com/intl/ko-KR/android/adc/ 로 접속하여 확인요~)

$275,000 Award Recipients



손쉽게 택시를 탈 수 있도록 지원해 준다. 현 위치를 기준으로 하여 가까운 택시를 클릭하는것 하나로 콜택시를 부를 수 있는 참 좋은 서비스인것 같다 ^^;




상품의 바코드를 핸드폰의 카메라 스캐닝(촬영)하면 온라인 최저가 및 근처 가게 위치를 확인 할 수 있다.


$100,000 Award Recipients





사진을 공유할 수 있는 시스템으로써 이미지 댓글 기능을 제공하며, 1촌기능을 제공하여 원하는 사용자만 접근을 제한할 수도 있다. 음... 싸이월드 이미지 게시판 정도 ? ^^;


Finalists



사용자의 참여를 유도하여 맵상에 사용자 정보를 추가적으로 입력할 수 있도록 구현한 시스템이다.
맛집, 놀기 좋은곳 ... 여러가지를 아이콘 을 사용하여 한눈에 띄고 또한 상세정보에서는 사용자 댓글을 통해 지속적인 정보 업데이트를 통해 최신 지역 정보를 확인 할 수 있다.


기타 등등... http://code.google.com/intl/ko-KR/android/adc/adc_gallery/ 사이트에 접속하여 작년도 수상작을 확인 할 수 있습니다. 저도 뭐 한번... TRY 해볼까요 후후후~



1. 폴더구성

res
└drawable : 이미지를 복사하여 넣어줄 수 있다.(JPG, PNG, GIF...)
└layout : 레이아웃을 설계 할 수 있다.(XML)
└values : 값을 설정할 수 있다.(XML)

[참조 ☞ ]
기본적으로 파일을 만들때 숫자,예약어로 시작하는 파일은 만들 수 없다.
(자바 변수명 네이밍룰에 의거함)
0.xml <-- 안됨 : 숫자로 시작
if.png <--- 안됨 : 예약어임 ==> 파싱 애러 발생함 ... 여러 경우가 존재함에 유의

2. 기본 설명

기본적으로 위 res폴더 아래 파일을 추가하면
gen 폴더 아래 패키지명 아래 R.java라는 파일이 자동으로 업데이트 된다.

ex)
public static final int WHITE=0x7f050000;  // VALUE = 값(고유 ID) 로 설정되며

코드 상에서는 VALUE를 통하여 호출할 수 있도록 되어 있다.

3. drawable

이미지 파일을 Resource로 사용하기 위해서는 drawable 폴더 아래에 이미지를 복사하여
배치하면 된다. 복사/제거시 자동적으로 R.java가 업데이트 된다.

4. layout

레이아웃은 크게 Layouts 와 Views로 나뉘어 진다.

Layouts 는 Container라고 보면된다. 물건을 넣기 위한 상자이며 해당 내부에 물건이 어떻게 배치되는 가를 지정하는 도구이다. (LinearLayout, ListView, GridView ...)

Views 는 Item이라고 보면 된다. 상자 내부에 들어가는 아이템으로 다양한 기능을 Container 내부에 넣어줄 수 있다. (Button, CheckBox, Gallery ...)

Eclipse에서는 좌측 메뉴에서 드레그앤 드롭을 통하여 손쉽게 레이아웃 및 뷰를 추가 삭제 할 수 있으며 하단 Layout vs Xml 탭을 오가면서 View와 Code를 볼 수 있다. XML코드 같은 경우 세밀하게 Layout을 지정할 때 사용하면 좋음.

MCC, MNC, Lang, SIZE ... 은 나중에 공부좀 하구 ^^;

5. values

Color, Dimension, Drawable, Integer Array... 을 value로 지정할 수 있다.

ex)

<string name="hello">Hello World, helloWorld!</string>
<color name="WHITE">#ffffff</color>
<dimen name="BIG_SIZE">300px</dimen>


6. R.java

Res 폴더에 Resource를 추가하면 gen폴더 아래에 R.java 파일이 자동적으로 업데이트 된다. 코드상에서는 변수명을 지정하면 해당 리소스를 호출하여 사용할 수 있다. 참고로, 값을 보면 해당 값은 특정 idx를 가지고 있으며 순차적으로 증가하는 것을 확인 할 수 있다.

ex)

/* AUTO-GENERATED FILE.  DO NOT MODIFY.

 *

 * This class was automatically generated by the

 * aapt tool from the resource data it found.  It

 * should not be modified by hand.

 */

 

package com.wonsama;

 

public final class R {

    public static final class attr {

    }

    public static final class color {

        public static final int WHITE=0x7f050000;

    }

    public static final class dimen {

        public static final int BIG_SIZE=0x7f060000;

    }

    public static final class drawable {

        public static final int aaa=0x7f020000;

        public static final int icon=0x7f020001;

    }

    public static final class id {

        public static final int AbsoluteLayout01=0x7f070000;

        public static final int AnalogClock01=0x7f070001;

    }

    public static final class layout {

        public static final int main=0x7f030000;

        public static final int sub=0x7f030001;

    }

    public static final class string {

        public static final int app_name=0x7f040001;

        public static final int hello=0x7f040000;

    }

}

7. 레이아웃 적용하기

 setContentView(R.layout.main);

위 코드처럼 적용하고자 하는 레이아웃의 Resource ID 값을 넣어줘서 셋팅 하면 된다.


안드로이드 공부한지 1주일도 안되었지만 .... 음 예전 학원에서 스윙배웠던 기억이 나는듯한 -_-;
열심히 공부해서 계속 함 포스팅 해보겠습니다. 뭐....도움이 많이 되었음 하는 바램에.. ^^;


1. 안드로이드 SDK 1.5 다운로드

http://developer.android.com/sdk/download.html?v=android-sdk-windows-1.5_r2.zip


2. Ecplise 3.4 (Ganymede) 기준 Plug-in 설치

2-1. Help - Software Update... 선택
2-2. Availale Software 탭 이동
2-3. Add Site 선택
2-4. 아래 주소 입력(문제 발생시 https ==> http 로 변경, 보안문제)
https://dl-ssl.google.com/android/eclipse/
2-5. install 시작 (중간에 라이센스 동의 나오면 동의하기 ^^)

3. SDK폴더 지정하기

3.1 window - preferences - Android 선택
3.2 Browse 선택 이후 Adroid SDK 가 설치된 폴더를 선택한다.
3.3 Apply를 눌러 적용한 다음 Eclipse 재실행

4. Hello World 만들기

http://developer.android.com/guide/tutorials/hello-world.html 참조



[참조]
AVD 만드는 방법


 

나의 생각 >>>


이전 스크랩 기사에서 안드로이드VS아이폰 에서 구글에 1표 투표했는데 바로 이런글이... ^^;
저렴한 라이센스 (비용) 이라는 것은 역시 무시할만한 것이 아니네요..
개인적으로 안드로이드를 공부하고 있기는 한데 왠지 이런 기사를 보니 힘이 더 나네요 ㅎㅎㅎ


본문 >>>


[지디넷코리아]구글 안드로이드 모바일 운영체제(OS)가 올해 900%까지 성장할 것이란 조사 결과가 나왔다.

 

시장 조사 업체 스트래티지 어낼리틱스(SA)는 최근 발간한 보고서에서 안드로이드는 올해 휴대폰 제조 업체, 개발자, 이동통신 서비스 업체들의 지원을 등에 업고 무려 900%까지 성장할 것으로 전망했다.

 

안드로이드는 2008년 미국 시장에서 거점을 마련했다. 올해는 유럽과 아시아 시장에서도 가파른 성장세를 보일 것으로 전망된다.

 

T모바일은 지난해 하반기 HTC가 만든 안드로이드 기반 스마트폰 'G1'을 미국에 내놨다. 현재까지 'G1'은 100만대 가량 판매된 것으로 전해졌다.

 

SA는 안드로이드의 강점으로 상대적으로 저렴한 라이선스 모델을 언급했다.

 

세 미(Semi) 오픈소스 구조와 클라우드 서비스를 위한 구글의 지원은 HTC, 모토로라, 삼성전자, T모바일, 보다폰 등 내로라 하는 휴대폰 업체 및 이통사들이 안드로이드를 지지하도록 하고 있다. 이를 기반으로 안드로이드는 2~3년안에 스마트폰 시장에서 정상급 플레이어가 될 것으로 SA는 내다봤다.

 

SA에 따르면 안드로이드에 이어 애플 아이폰OS가 올해 79% 성장할 것으로 전망됐다.

 

경기 침체에도 불구하고, 세계 스마트폰 출하량은 지난해 1억5,200만대에 달했다. 리서치인모션(RIM)블랙베리는 스마트폰 OS 점유율에서 마이크로소프트 윈도모바일을 제치는 기염을 토했다.
[지디넷코리아]
▲ 삼성전자가 오는 6월 안드로이드 플랫폼을 탑재한 스마트폰 `I7500`을 유럽에서 출시한다.

삼성전자가 구글의 개방형 모바일 플랫폼인 '안드로이드'를 탑재한 스마트폰('I7500')을 6월경 유럽 시장에 출시한다.

 

삼성전자는 자사 최초의 안드로이드폰인 'I7500'을 6월 독일 등 유럽 시장에 출시한다고 밝혔다.

 

'I7500'은 안드로이드 OS를 장착하고 구글 맵, 구글 서치, 지메일, 유튜브 등 다양한 구글 어플리케이션을 대거 탑재해 일반 PC처럼 편리하게 모바일 인터넷을 사용할 수 있다.

 

또한 안드로이드 마켓에서 구입한 다양한 컨텐츠도 이용 가능하다.

 

삼성전자는 이로써 글로벌 휴대폰 제조사 중 처음으로 안드로이드, 심비안, 윈도우 모바일, 리눅스 등 모든 스마트폰 OS를 지원하는 스마트폰 풀 라인업을 갖추게 됐다.

 

'I7500'은 특히, 그 동안 출시된 안드로이드폰 가운데 가장 얇은 11.9mm 슬림형 풀터치스크린 디자인에 1500mAh급 대용량 배터리를 장착해 휴대하기 편리하면서도 장시간 사용할 수 있다.

 

꿈의 디스플레이로 불리는 3.2인치 AM-OLED(능동형 유기발광 다이오드)를 탑재해 밝고 선명한 화면을 즐길 수 있다. 7.2Mbps 속도 HSDPA와 5.76Mbps 속도 HSUPA에 WiFi까지 지원해 통신 환경도 완벽하게 구축했다.

 

또한 500만 화소 카메라에 오토포커스, 파워LED 등 고급 디지털 카메라 기능을 탑재했고 8GB 내장 메모리를 기본 제공하고 외장 메모리도 Micro SD로 32GB까지 확장할 수 있어 사진, 음악, 동영상 등 다양한 멀티미디어 파일을 손쉽게 저장, 이용할 수 있다.

 

삼성전자 무선사업부장인 신종균 부사장은 "삼성전자는 안드로이드 개발 을 주도한 오픈핸드셋 얼라이언스(OHA:Open Handset Alliance)의 초기 멤버로서 앞으로 더욱 다양한 안드로이드폰을 선보일 것"이라고 말했다.

'etc > old' 카테고리의 다른 글

설치하기  (0) 2009.04.29
이벤트 링크  (0) 2009.04.29
페이스북의 파격카드, 개발자에 서비스 개방  (0) 2009.04.28
51가지 AS3, Flex 테크닉 & 예제  (0) 2009.04.24
애플 앱스토어 '10억 다운로드'  (0) 2009.04.24

+ Recent posts