Android 전문가에게 도움이 필요합니다. 나는 안드로이드 멍청 아. 기본 UI 스레드 외부에서 캔버스를 사용하여 비트 맵을 그릴 필요가있는 응용 프로그램이 있습니다. SurfaceView 클래스를 발견하고 간단한 데모를 조롱했습니다. 나는 별도의 비트 맵 인스턴스를 생성하고 그것을 끌어 들인다. SurfaceView의 OnDraw가 발생하면이 비트 맵을 SurfaceView에 복사합니다. 활동이 끝날 때까지 (예 : 홈 화면으로 돌아갈 때까지) 효과가 있습니다. 그 시점에서, SurfaceView 스레드가 멈춘 것처럼 보이고, 내가 작업하고있는 비트 맵 이미지를 잃어 버리는 것 같습니다. 앱으로 돌아 가면 처음부터 다시 시작됩니다.활동이 끝나면 비트 맵을 지속합니다.
퍼포먼스상의 이유로 메인 UI 스레드와는 별도의 스레드에서 캔버스 2D 드로잉 호출을 사용하여 비트 맵 이미지를 생성하고 싶습니다. 잠시 후에 그 비트 맵을 주 사용자 인터페이스로 가져와야합니다. 그리고 비트 맵 이미지가 유지되고 활동이 일시 중지되거나 중단되었을 때 계속 유지되도록 (계속 유지하려면) 비트 맵 이미지가 필요합니다.
메인 UI 스레드에서 모든 도면을 수행해야하므로 SurfaceView가 유일한 해결책 인 것처럼 보입니다. 하지만 나는 그 중 하나를 기대했던 것처럼 작동하지 않습니다.
백그라운드 작업이나 스레드가 실행을 멈추지 않아서 비트 맵 이미지를 만들어야하고 잠시 후 기본 인터페이스로 비트 맵을 가져와야합니다 (예 : 10hz 업데이트).
HELP! 어떻게해야합니까?
당신을 위해 별도의'process' 작업을 생성합니까 나는이 처리 할 수있는 사용하여 캐싱을 생각? –
안녕하세요 다크 크로우, 슈퍼 빠른 답장을 보내 주셔서 감사합니다. 좀 더 자세히 설명해 주시겠습니까? C++, NDK 및 별도의 프로세스를 사용 하시겠습니까 ?? 미안 나는 아직도 멍청이야. – Batdude
'Android Manifest'에서는별로 도움이되지 않는 별도의'process'를 생성 할 수 있습니다. –