java 안드로이드 동영상 - Android로 파일을 다운로드하고 ProgressDialog에서 진행 상황을 표시합니다.
인터넷에서 물건을 다운로드하려는 경우 매니페스트 파일에 권한을 추가하는 것을 잊지 마십시오!
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.helloandroid"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:debuggable="true">
</application>
</manifest>
업데이트 된 간단한 응용 프로그램을 작성하려고합니다. 이를 위해 파일을 다운로드하고 ProgressDialog
에서 현재 진행률 을 표시 할 수있는 간단한 함수가 필요합니다. ProgressDialog
하는 방법을 알고 있지만 현재 진행률을 표시하는 방법 및 처음에 파일을 다운로드하는 방법을 잘 모르겠습니다.
나는 this 블로그 게시물이 매우 유용하다는 것을 알았고, 그 파일을 다운로드하기 위해 loopJ를 사용했다. 그것은 단지 하나의 간단한 기능만을 가지고 있으며, 새로운 안드로이드 녀석들에게 도움이 될 것이다.
나는 안드로이드 개발을 배우기 시작하면서, ProgressDialog
가 갈 길이라는 것을 배웠습니다. ProgressDialog
의 setProgress
메소드는 파일이 다운로드 될 때 진행 수준을 업데이트하기 위해 호출 할 수 있습니다.
많은 앱에서 내가 본 것 중에 가장 좋은 점은이 진행 대화 상자의 속성을 사용자 정의하여 진행률 대화 상자에 더 나은 모양과 느낌을주는 것입니다. 사용자가 개구리, 코끼리 또는 귀여운 고양이 / 강아지와 같은 애니메이션을 사용하는 것이 좋습니다. 진행 대화 상자에있는 모든 애니메이션은 사용자를 끌어 들이고 오랫동안 기다리지 않는 느낌을줍니다.
ProgressDialog
블로그 게시물을 작성하고 곧 공유하겠습니다.
편집 : android에서 파일을 다운로드 할 때 진행률 표시 줄 표시
Android Query 라이브러리를 사용하십시오. 실제로는 매우 멋지 네요. 다른 예제에서 볼 수있는 것처럼 ProgressDialog
를 사용하도록 변경할 수 있습니다. 레이아웃에서 진행보기를 표시하고 완료 후에 숨길 수 있습니다.
File target = new File(new File(Environment.getExternalStorageDirectory(), "ApplicationName"), "tmp.pdf");
new AQuery(this).progress(R.id.progress_view).download(_competition.qualificationScoreCardsPdf(), target, new AjaxCallback<File>() {
public void callback(String url, File file, AjaxStatus status) {
if (file != null) {
// do something with file
}
}
});
나는 안드로이드 쿼리가 너무 커서 건강에 좋지 않기 때문에 지금 사용하고있는 다른 솔루션에 대한 다른 대답을 추가하고 있습니다. 그래서 나는이 https://github.com/amitshekhariitbhu/Fast-Android-Networking 으로 옮겼다.
AndroidNetworking.download(url,dirPath,fileName).build()
.setDownloadProgressListener(new DownloadProgressListener() {
public void onProgress(long bytesDownloaded, long totalBytes) {
bar.setMax((int) totalBytes);
bar.setProgress((int) bytesDownloaded);
}
}).startDownload(new DownloadListener() {
public void onDownloadComplete() {
...
}
public void onError(ANError error) {
...
}
});