저는 자신 만의 배경을 선택할 수있는 라이브 배경 화면을 가지고 있으며 파일 경로가 존재하면 응용 프로그램 검사를 즉시 시작합니다. 그렇지 않으면 검은 색 화면 만 그려야합니다. 것은, 내가 전화를 다시 시작할 때마다 배경이 그려지지 않지만 라이브 벽지 미리보기에서 그려집니다.LiveWallpaper 파일이 전화 시동시에 존재합니다
나는 미디어 스캐너 또는 모든 디렉토리가 아직 마운트되지 않았 음을 의심 스럽지만 어떻게해야합니까?
저는 자신 만의 배경을 선택할 수있는 라이브 배경 화면을 가지고 있으며 파일 경로가 존재하면 응용 프로그램 검사를 즉시 시작합니다. 그렇지 않으면 검은 색 화면 만 그려야합니다. 것은, 내가 전화를 다시 시작할 때마다 배경이 그려지지 않지만 라이브 벽지 미리보기에서 그려집니다.LiveWallpaper 파일이 전화 시동시에 존재합니다
나는 미디어 스캐너 또는 모든 디렉토리가 아직 마운트되지 않았 음을 의심 스럽지만 어떻게해야합니까?
명백히 해결 방법은 Intent.ACTION_MEDIA_MOUNTED를 브로드 캐스트 수신기에 등록하는 것입니다. 이
미리보기를 클릭 할 때마다 및 배경 화면을 설정할 때마다 배경 엔진이 만들어집니다. 그래서 문제는 엔진에있는 변수에 파일 경로가 있어야한다는 것입니다. 이 변수를 클래스 수준으로 만듭니다. 그것은 작동 할 것이다
고마워,하지만 그게 문제가 아니야. 이미지 배경은 미리보기에서 다시 시작될 때까지 홈 스크린에서 잘 작동합니다. 경로는 SharedPreferences 데이터베이스에 저장됩니다. – Aron
나는 똑같은 문제에 직면 해있다. 내가 한 것은 onSharedPreferenceChanged()입니다. 키를 확인하고 있습니다. key가 null의 경우, 모든 데이터를 우선 순위로부터 취하고있다. 엔진을 만들 때 전화를 다시 시작하면 키가 null로 전달됩니다. –
나는 동일한 문제점을 직면했다. 내가 한 것은 onSharedPreferenceChanged()입니다. 키를 확인하고 있습니다. key가 null의 경우, 모든 데이터를 우선 순위로부터 취하고있다. 엔진이 생성 된 전화를 다시 시작하면 키가 null로 전달됩니다.
당신이 당신의 라이브 배경 화면하는 경우에 파일의 낮은 해상도 사본을 고려한 (단지 물리적으로 외부 저장 장치를 밤은 외부 저장 매체로 appearantly 같은 일을) 실제 외부 미디어 없이도 작동하는 것 같다 기본적으로 이미지를 캐싱하는 이미지가 설정됩니까? 배경 화면에 원본 이미지가 이미 포함되어 있으므로 미디어 스캐너가 간섭하지 않습니다. – gkiar
@iKiar 음, 이해가 안됩니다. 내가 선택한 이미지를 어떻게 든 캐싱해야한다는 것을 의미합니까? 요점은 사용자가 휴대 전화에서 이미지를 선택할 수 있기 때문입니다. – Aron
죄송합니다. 더 명확히하려고 노력하겠습니다. 사용자가 자신의 로컬 파일에서 이미지를 선택하면 배경으로 설정하는 과정에서 응용 프로그램의 로컬 리소스에 캐시 된 파일을 만들 것을 제안합니다. 그렇게하면 시작시 즉시 사용할 수 있습니다. 사용자가 이미지 변경을 요청하면 이전에 있던 캐시 파일을 새 파일로 덮어 씁니다. – gkiar