본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[Android/안드로이드] Android 4.1 Jelly Bean ( 젤리 빈 ) 무엇이 바뀌었을까?

by 돼지왕 왕돼지 2012. 7. 3.
반응형

[Android/안드로이드] Android 4.1 Jelly Bean ( 젤리 빈 ) 무엇이 바뀌었을까?







필자의견

- 무엇보다도 가장 눈에 띄는 변화는 부드러운 UI 이다. vsync timing 을 이용하여 iPhone 의 강점으로 내비춰졌던 60 fps 보장이 이제는 안드로이드에서도 가능하다. 두번째는 개발자의 편의성면이 많이 발전되었다.

- 확장된 Navigation, Up navigation, Activity Animation, Live Wallpaper Preview 연결 등.. 이전에는 framework 수정 없이는 거의 불가능했던 것들이 이제는 가능해졌고, 어렵게 control 해야 했던 것들이 이제는 편하게 control 이 된다.

- 장비들간의 통신측면에서 많은 발전이 있었다. Wi-fi Direct 기능이 활성화 될것으로 보이며, 통신 관련 API 들이 많이 제공되어 개발도 편해졌다.

- Media 관련 기능 측면에서도 일반적으로 제공되어야 하는 기능들이 이제는 모두 들어갔다고 보여진다. Low level 의 Hardware & Software codec 접근은, media 관련 개발을 해야 하는 개발자에게는 엄청난 희소식으로 여겨진다.

- GCM ( Google Cloud Messaging ) 의 등장으로 이제, 간단한 IMS 프로그램들이 쏟아질 것으로 예상된다.

- 기타, App의 보안이라든지 나름 이것저것 꼼꼼하게 제공한 것이 눈에 띈다. 





* 더 빠르고, 더 부드럽고, 더 반응성 좋은  젤리빈 ( Jelly Bean )!

- Touch 반응성을 좋게 함으로서, UX 를 향상. 
- vsync timing 을 모든 그리기와 에니메이션에 적용함으로서, 일정한 framerate 를 보장한다.
  ( 16ms or around 60fps )
- tripple buffering 을 graphic pipeline 에 적용.
- 다음 touch point 도 예상하여 touch latency 를 줄이는 기술 적용.
- CPU input boost 를 이용하여 다음 touch 에 대한 반응성을 좋게 함.
- systrace tool 을 통해 system 활동의 전반적인 그림을 볼 수 있도록 Linux kernel 로 부터 data 를 수집하여 보여준다.

<ICS vs. JB ! 속도 비교 영상>

 



* 장애인을 위한 접근성 향상된 젤리빈 ( Jelly Bean )

- Accessibility feature 들을 더 사용하기 쉽도록 강화. ( 일반뷰로 된 앱들은 코드수정 없이 간단히 accessible 하게 할 수 있으며, 간단한 tutorial 제공 )



* 국제 유저 지원하는 젤리빈 ( Jelly Bean )

- 아랍어와 히브리어를 지원하여, right-to-left 글씨쓰기도 지원.
- 추가 언어 지원.
- 추가 언어 키보드 지원.





* 확장형 notification 지원하는 젤리빈 ( Jelly Bean )

- 확장가능한 Notification. ( collapse & expand 가능 )
- 여러가지 추가 action 들을 더할 수 있다.
- Notification builder 를 사용하여 256dp 의 높이까지 notification 을 사용할 수 있고, 3가지 형태의 notification style 적용 가능하다. BigTextStyle( multiline textview ), BigInboxStyle( list 형태 ), BigPictureStyle( bitmap ). 추가적으로 remote view 를 이용해서 custom 하게도 만들 수 있다.
- Notificatgion 에 3가지 action 을 줄 수 있다.



* 사이즈 변경 가능한 app widget을 지원하는 젤리빈 ( Jelly Bean )

- app widget 을 resize 할 수 있다. 그리고 size 에 따라 app widget 의 동작을 변경하도록 할 수도 있다.
- landscape & portrait 모드에 따른 layout 변경도 가능하다.



* 간단해진 task navigation 지원하는 젤리빈 ( Jelly Bean )

- xml의 속성을 통해 Up navigation 을 설정해주면, runtime 에 callback 으로 up navigation 을 관리해주지 않아도 된다. Activity 가 실행될 때 system 이 navigation tree 를 만들어 관리해주고, Actionbar 에 Up navigation 을 추가해준다.
- TaskStackBuilder 를 사용하여 Task에 대한 고급기능을 사용할 수 있다.



* Activity launch animation 사용이 쉬워진 젤리빈 ( Jelly Bean )

- ActivityOptions 라는 class 를 이용하여, activity launch 시의 animation 을 쉽게 관리할 수 있다. 



* Light out 또는 Full Screen mode 로의 전환가능한 젤리빈 ( Jelly Bean )

- UI flag 를 통해서, status bar 는 있고, action bar 는 없고, navigation bar 는 dim 된 Light out mode 또는 모든 것이 hidden 된 Full Screen mode 로 전환이 가능하다.



* 새로운 remotable views를 제공하는 젤리빈 ( Jelly Bean )

- GridLayout 이나 ViewStub 을 app widget 과 notification 에 사용할 수 있다.



* App에서 바로 Live Wallpaper preview를 지원하는 젤리빈 ( Jelly Bean )

- ACTION_CHANGE_LIVE_WALLPAPER 를 통해서 app 에서 바로 live wallpaper 를 설정할 수 있도록 preview 를 제공할 수 있다.


* higher-resolutino contact photos를 지원하는 젤리빈 ( Jelly Bean )

- 720x720 사이즈까지 contact photo 를 저장할 수 있다.




* 연결 혹은 연결해제 되는 input device 감지하는 젤리빈 ( Jelly Bean )

- USB, Bluetooth 등을 통해 새로운 input device 가 연결되었을 때 감지할 수 있다.

- 연결된 input device 의 정보를 query 할 수 있다.
- input device 를 통해서 vibrator 를 control 할 수 있다.



* vsync 기술 도입한 젤리빈 ( Jelly Bean )

- Choreographer 클래스를 통해서 vsync timing 을 조절할 수 있다.




* Android Beam 향상시킨 젤리빈 ( Jelly Bean )

- NFC 통신을 Bluetooth 를 통하게 함으로서 쉽게 사용할 수 있게 되었다.




* Wi-fi network service discovery 지원하는 젤리빈 ( Jelly Bean )

- DNS-based service discovery 를 통해 corss-platform Wi-fi service 을 discovery 하고 사용할 수 있다. ( mobile device, printer, camera, media player 등 )



* Wifi-Direct service discovery 지원하는 젤리빈 ( Jelly Bean )

- pre-associated service discovery 를 통해서 연결 전에 device 정보들 을 가져올 수 있다.



* Network Bandwidth Managerment 지원하는 젤리빈 ( Jelly Bean )

- data 사용량을 관리할 수 있는 api 들 추가.




* Media codec access 지원하는 젤리빈 ( Jelly Bean )

- hardware & sofrware codec 에 대한 low level access 가 허용된다. 




* USB Audio 지원하는 젤리빈 ( Jelly Bean )

- USB audio output 을 지원하여, Open Accessory Development Kit( ADK ) 를 통해 audio dock 을 개발 할 수 있게 되었다.



* Audio record triggering




* Multichannel audio 지원하는 젤리빈 ( Jelly Bean )

- HDMI port 를 통해 multichannel audio 를 지원. AAC 5.1 audio 에 대한 encoding 과 decoding 도 기본으로 지원.



* Audio preprocessing 지원하는 젤리빈 ( Jelly Bean )

- preprocessing effect 를 줄 수 있다.




* Media Router 지원하는 젤리빈 ( Jelly Bean )

- media 를 어디에 play 할지를 고를 수 있는 MediaRouter, MediaRouteActionProvider, MediaRouteButton 을 제공한다.



* Renderscript Computation






* Android Browser and WebView 를 개선시킨 젤리빈 ( Jelly Bean )

- HTML5 video UX 향상. 
- Rendering speed 향상 및 memory 사용량 감소.
- Scroll & zoom performance 향상
- HTML5, CSS3, Canvas animation 성능 향상
- text input 기능 향상
- JavaScript Engine V8 로 업데이트
- HTML5 Media Capture specification 지원.



* Google Cloud Messaging ( GCM ) 지원하는 젤리빈 ( Jelly Bean )

- Android 단말에 sync 없이 짧은 message 를 전송하는 기능.
- multicast를 이욯하여 한번에 1000개의 단말에 메세지를 보낼 수 있다.
- 메세지 전송은 간단한 text 에서 4K data 까지 지원한다.



* App Encryption 제공하는 젤리빈 ( Jelly Bean )

- Google Play 를 통할 때, 유료앱은 device specific key 등을 이용하여 보호해준다.



* Smart App Updates 제공하는 젤리빈 ( Jelly Bean )

- Google Play 를 통해 update 가 있을 때, 변경된 APK 를 전부 전송하는 것이 아닌 변경된 bit 만 전송하는 방식으로 한다.



* Google Play Services ( coming soon )

- Google+ 나 Google 계정 연동 등을 지원할 예정이다.






반응형

댓글