안드로이드 개발자 모임 게시판
(글 수 7,996)
문제인 즉, 유저가 어떠한 이벤트를 발생 시켰을때 해당 api에 관련된 모든 정보들을 리스트뷰에 뿌려줍니다.
즉, 어떠한 목록을 받아올려면 각각의 api에 대해 처리를 해서 서버에서 response를 받아야 한다는 말이겠지요
그래서 말인데요, 이때 로드되어 오는 와중에 현제 나온 디바이스중, 스펙이 뛰어나거나 해당 디바이스의 os가 아이낸드를 쓰는
디바이스에는 그러한 블랙스크린이 이슈가 되지 않는데요, 펌웨어2.2의 겔스에선 그런 이슈가 나타나고 있습니다.
이것은 지금 해외에서도 많은 이슈가 되고 있는 걸로 알고 있는데요.. 이러한 정보에대해서 속시원하게 답변 해 주실분이 계신가
싶어서 질문을 드립니다.
제 질문이 이해가 안간다는 부분이나 좀더 세부적인 사항을 알고 싶다 하신분은 연락주시고 해당 이슈를 경험해 보셧거나
잘 알고 계신분이 있거나 하시면 답변 부탁드립니다.
블랙스크린이란 액티비티 전환에 있어서 중간에서 검은화면이 나타났다가 전환 되는 것을 말합니다.
사전 조건으로 서버와의 http 통신이 들어 갑니다. 이때 의심해볼 여지는 많은 api를 받아 옴으로서
디바이스 os의 성능이 딸리기 때문이라 의심이 되지만, 프로그램의 구조상으로 고칠 수 있는 부분이라 예상되기도 합니다.
많은 고수분들의 답변 기다리겠습니다.
2011.02.18 15:48:25
액티비티 전환에서 인텐트를 스타트 시킨게 아니라 모두 getapplicationcontext()를 이용하여 context()를 넘겨 주는 방식으로 구조화 되어 있습니다. 그런데 사실 이러한 부분들이 문제가 되는지 의심 스러운 부분이라 추정만 하고 있습니다.
약간더 확실한건 님도 말씀하신것처럼 i/o의 문제 때문에 그런거 같은데요
사실 리스트에 api를 뿌릴때 현실적으로 동기처리를 해줄 수 는 없다고 봅니다. 딱 정해진.. 예를들어 로그인 부분을 처리하는것도 아니고
리스트에 뿌려줄때 각각의 api는 가져오는 시간이 다 틀리기 때문에 (용량등이유) 비동기식으로 처리하는데요
님이 말씀하신 비동기 쓰레드로 처리했을때 쓰레드간의 충돌때문에 그러한 현상이 이러난다면
제가 언급한듯이 블랙스크린이 뜨고 다시금 정상적인 리스트(즉 해당 액티비티)로 넘어가지않고 오류가 나서 님 말씀처럼 아예
죽어버릴겁니다. 제가 답변드린 정보와 님이 말씀하신 ANR 부분의 커스텀마이징 부분 추축한 부분을 좀더 상세히 설명해주시면
감사하겠습니다.
그리고 다른 정보 있으신분 답변 기다리겠습니다.
약간더 확실한건 님도 말씀하신것처럼 i/o의 문제 때문에 그런거 같은데요
사실 리스트에 api를 뿌릴때 현실적으로 동기처리를 해줄 수 는 없다고 봅니다. 딱 정해진.. 예를들어 로그인 부분을 처리하는것도 아니고
리스트에 뿌려줄때 각각의 api는 가져오는 시간이 다 틀리기 때문에 (용량등이유) 비동기식으로 처리하는데요
님이 말씀하신 비동기 쓰레드로 처리했을때 쓰레드간의 충돌때문에 그러한 현상이 이러난다면
제가 언급한듯이 블랙스크린이 뜨고 다시금 정상적인 리스트(즉 해당 액티비티)로 넘어가지않고 오류가 나서 님 말씀처럼 아예
죽어버릴겁니다. 제가 답변드린 정보와 님이 말씀하신 ANR 부분의 커스텀마이징 부분 추축한 부분을 좀더 상세히 설명해주시면
감사하겠습니다.
그리고 다른 정보 있으신분 답변 기다리겠습니다.




블랙스크린이 잠시 떳다가 사라지는 건인가요?
저는 경험해본적은 없지만 이전에 관련하여 검색해봤을 때는
예전 윈도우 블루스크린처럼 블랙화면에 에러메시지 좀 뜨고 아예 죽어버리는 화면이었습니다.
검은 화면이 잠시 떳다가 사라지는 거면
갤S같은 경우 느린 I/O문제 때문에 ANR(Application Not Responding)관련 부분을 커스트마이징 해놓은게 아닌가
추측해봅니다.
관련 데이터 처리 부분을 비동기 쓰레드로 처리중이신가요?