在我的java android应用程序中,我可以下载由Web服务提供的文件 - 我已经开发了“手动”下载 - 逐字节读取 - 但我想知道如何在下载时执行此操作,显示该图标通知栏(类似于从市场下载时) - 也可以异步下载,我现在不做的事情 - 我想我必须使用异步任务,但我不知道如何使用它。
关于通知状态,我假设我必须使用sdk中的一些功能 - 我在android参考中找到了下载管理器类,但它仅在api级别9之后才可用。
编辑:刚刚找到了我需要的here的哪一部分,但是我真的很感激,如果有人能解释我怎样才能适应那些带有状态的通知图标。
更新
我在下载文件时已经有了异步任务。在我的班上,我有这段代码:
while ((count = input.read(data)) != -1) {
total += count;
conta = (int)(total*100/lenghtOfFile); //calculate the received data
publishProgress(conta); // this does nothing
output.write(data, 0, count); // write file received
Log.v("conta:", Integer.toString(conta)); // it's right - 0 -100%
}
变量“conta”它是正确的,它从0到100%。我的问题是向用户显示该信息。我希望通知栏上显示的信息显示其上的进度条。 - 像市场下载一样。
我找到了一个很好的例子here:
问题,因为我使用异步任务:
public class DownloadFile extends AsyncTask<String, Integer, String>{
@Override
protected String doInBackground(String... urlpassado) {
我无法对布局进行更改,我遇到了像
这样的问题类型DownloadFile
的方法setContentView(int)未定义
我该如何解决这个问题?