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

[Android/안드로이드] Android Application 기본에서 놓치기 쉬운 고급정보들.

by 돼지왕 왕돼지 2012. 5. 17.
반응형




 
http://developer.android.com/guide/topics/fundamentals.html 
"Application Fundamentals" 라는 제목의 위 글을 읽으며, 기본인데도 빼먹거나 모르기 쉬운 정보들을 정리해보았습니다.

UID ( User ID )

- 각각의 application 은 각각 다른 user 로 구분됨.
 
- System은 각각의 application 에 Unix User ID 를 부여. 해당 UID ( permission 으로 작용 ) 를 가진 application 만 해당 Sandbox resource 에 접근할 수 있음.

- 다른 app 또는 system service 와 data 나 resource 공유하는 방법.
  1. 두 app 이 같은 UID 를 share 하도록 설정한다.이 경우 서로의 file 에 접근이 가능하다. UID 가 같은 2개의 app은 같은 process 에서 run 되도록 할 수도 있고, 같은 VM 에서 돌도록 할 수도 있다. ( 이 때 같은 signkey 로 sign 되어있어야 한다. )
  2. permission 을 요청한다 




Device & Feature

- 앱을 구동하기 위해 필요한 device 나 feature 를 지원하지 않는 모델에는 앱이 설치되지 않도록 하기 위해서 manifest 에 그것들을 기술할 수 있다. 앱 자체는 그 내용을 알지 못하지만, Google Play 와 같은 서비스에서는 이 device, feature 를 조회하여 검색 자체가 안 되도록 하거나, 설치가 안 되도록 할 수 있다.

- 중요한 단말 특징 중 하나는 Screen Size 와 Density 이다. Screen size 는 small, normal, large, extra large 로, Screen density 는 low density, medium density, high density, extra high density 로 나뉜다. 지원하는 스크린 사이즈를 정확히 명시하기 위해서는 manifest 의 <supports-screens> 부분을 기술해주면 된다.

- 앱에서 사용하는 중요한 Hardware, software feature 도 Manifest 의 <uses-feature> 에 명시해 줄 수 있다. 주의할 것은 Android device 가 적어도 어떤것은 지원할꺼야.. 라고 가정하는 것은 위험한 생각이란 것.



도움이 되셨다면 손가락 꾸욱~




 
반응형

댓글