3

내 응용 프로그램에서 특정 응용 프로그램이 안드로이드 마켓에서 다운로드되고 있는지 여부를 알아야합니다. 이 기능을 어떻게 수행합니까? 진행중인 모든 다운로드 목록을 얻을 수 있습니까? 안드로이드 마켓에 잡힐 수있는 의도가 있습니까?다운로드중인 응용 프로그램 목록을 가져 오는 방법은 무엇입니까?

참고 : 내 대상 응용 프로그램이 android 3.0 이상의 장치에 있으므로, DownloadManager 클래스 (2.3 이후 버전) 사용에는 문제가 없습니다.

+0

[link] [1]이 (가) 도움이 될 수 있습니다. [1] : http://stackoverflow.com/questions/2695746/how-to-get-a-list-of-installed-android-applications-and-pick-one-to- run –

+0

사실, 현재 설치된 앱 목록이 아닌 현재 다운로드중인 앱 목록을 찾고 있습니다. –

답변

1

원하는 것을 성취 할 수있는 API를 찾았지만이를 사용하려면 9 이상의 API가 있어야합니다. 이 작업을 사용하여 다운로드 매니저에서 다운로드 요청 된 모든 다운로드를 얻을 수 있습니다 :

DownloadManager manager = (DownloadManager)getSystemService(Context.DOWNLOAD_SERVICE); 
DownloadManager.Query query = new DownloadManager.Query(); 
Cursor c = manager.query(query); 

당신이 here에 대한 자세한 정보를 얻을 수 있습니다. 낮은 API 레벨에서이 정보를 제공 할 수있는 다른 방법은 없다고 생각합니다.

+0

다운로드 관리자를 사용하는 마켓은 전적으로 구현 세부 사항입니다. 시장이하는 일과 어떤 관계가있을 것이라는 점을 분명히 추측해서는 안됩니다. – hackbod

0

나는 안드로이드 마켓 응용 프로그램의 의도를 잡을 수 있다고 생각하지 않는다. (그러나 나는 안드로이드 마켓 응용 프로그램이 어디에도 나타나지 않기 때문에 100 % 확신 할 수 없다.)

내가보기에, DownloadManager.query(DownloadManager.Query q) 클래스를 통해 모든 진행중인 다운로드를 찾을 수 있어야하고 데이터 소스별로 시장에서 다운로드되지 않은 모든 것을 제외 할 수 있어야합니다.