안드로이드 개발 질문/답변
(글 수 45,052)
1. 제가 알기로 안드로이드 플랫폼 위에서 각 애플리케이션은 각각의 달빅 VM위에서 돌아간다고 알고 있습니다.
예를 들어 제가 2개의 애플리케이션을 제작하였는데, 두 애플리케이션이 서로 통신을 하면서 수행되어야 한다면,
안드로이드 플랫폼의 어떤 부분을 사용해서 통신을 할 수 있을까요?
Binder가 관계가 있는 것같아 살펴보았으나 확신을 할 수가 없네요.
2. 또한 현재 시장에는 나와 있지 않지만, many 코어 환경에 안드로이드 플랫폼이 올려졌을 때,
각각의 VM이 코어 위에 잘 분배되어서 돌아가게 되나요?
또 homogeneous 한 환경이 아닌 heterogeneous 한 환경 위에서(즉 Processor + DSP 이런 식)
애플리케이션을 수행시켰을 때에는 어떠한 형식으로 애플리케이션이 돌아가게 되나요?
내부적으로요.
감사합니당.
1. 인텐트 쪽이 아닐런지요. 명시적인 인텐트가 있고, 암시적인 인텐트가 있어서, 서로 다른 어플끼리 통신이 가능합니다. 라고 책으로 배웠습니다.
2. 모든 것을 VM이 알아서 해줍니다. 하드웨어 사양이 바뀌게 되면 VM도 바뀝니다. 앱 개발자는 자바로된 안드로이드 SDK만 '변화없이' 사용하면 되요. 변화없이란 말이 애매한데, 이건 라이브러리나 프레임워크 디자인과 관련된건데, 하드웨어나 VM이 바뀌어도 SDK는 바뀌지 않게 설계하는게 좋은 디자인이겠죠.?