我写了一个用网页下载的,并且在Notification里有显示的例子!有两个问题:问题一:我想在Activity同时也有个进度条。能显示下载进度。和Notification里保持一致。
并且下载完能自动启动提示安装。
问题二:在Notification里下载如何能指定下载的的目录。例如我要下载到"/sdcard/first/"目录下。请各位前辈赐教!
package com.myAndroid.notification;import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;import org.apache.http.client.ClientProtocolException;import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
public class DownLoadFile extends Activity{
private ProgressBar pb;
private TextView tv;
private int fileSize;//文件大小
private int downLoadFileSize;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
pb=(ProgressBar)findViewById(R.id.down_pb);//Activity上的ProgressBar
tv=(TextView)findViewById(R.id.tv);//Activity上的Text
tv.setVisibility(View.GONE);//设这初始状态它们不显示
pb.setVisibility(View.GONE);
Button btDownLoad=(Button)findViewById(R.id.bt1);
btDownLoad.setOnClickListener(btClick);
}
//单击下载按钮事件
OnClickListener btClick=new OnClickListener()
{
@Override
public void onClick(View v)
{
tv.setVisibility(View.VISIBLE);//显示
pb.setVisibility(View.VISIBLE);
new Thread(){
public void run(){
String url = "http://img.yingyonghui.com/apk/113877/com.tencent.qq.1305527248382.apk";
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
}
}.start();
}
};
}AndroidManifest.xml<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myAndroid.notification"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".DownLoadFile"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.ACTION_VIEW" />
</intent-filter>
</activity> </application>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.INSTALL_PACKAGES"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
</manifest>
并且下载完能自动启动提示安装。
问题二:在Notification里下载如何能指定下载的的目录。例如我要下载到"/sdcard/first/"目录下。请各位前辈赐教!
package com.myAndroid.notification;import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;import org.apache.http.client.ClientProtocolException;import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
public class DownLoadFile extends Activity{
private ProgressBar pb;
private TextView tv;
private int fileSize;//文件大小
private int downLoadFileSize;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
pb=(ProgressBar)findViewById(R.id.down_pb);//Activity上的ProgressBar
tv=(TextView)findViewById(R.id.tv);//Activity上的Text
tv.setVisibility(View.GONE);//设这初始状态它们不显示
pb.setVisibility(View.GONE);
Button btDownLoad=(Button)findViewById(R.id.bt1);
btDownLoad.setOnClickListener(btClick);
}
//单击下载按钮事件
OnClickListener btClick=new OnClickListener()
{
@Override
public void onClick(View v)
{
tv.setVisibility(View.VISIBLE);//显示
pb.setVisibility(View.VISIBLE);
new Thread(){
public void run(){
String url = "http://img.yingyonghui.com/apk/113877/com.tencent.qq.1305527248382.apk";
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
}
}.start();
}
};
}AndroidManifest.xml<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myAndroid.notification"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".DownLoadFile"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.ACTION_VIEW" />
</intent-filter>
</activity> </application>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.INSTALL_PACKAGES"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
</manifest>
解决方案 »
- 如何学习android应用开发(主要是模仿品牌机的UI及获得认可多的UI,比如GO桌面,MIUI)
- 毕设要做一个电子书软件
- android中的登录???大家都是怎么实现的?请高手指教
- 如何做一个类似物流图标信息的列表
- android 关闭进程问题 killBackgroundProcesses无效
- Android 如何设置 Setting 中的默认选项
- Android源码问题。。。
- Android TextView 默认字体颜色
- 关于ALPHA_8,ARGB_4444,ARGB_8888,RGB_565的互相转换问题?
- !!紧急,在线等!!自定义dialog置顶问题!!
- Android 中GridView加载动态图片
- android Settings里的通话设置,帐户同步和辅助功能源码更改
http://topic.csdn.net/u/20110526/11/187770aa-261b-4512-b612-23a84ae44041.html回复二楼!是下载!notification有进度啊!只是得起动两次,不知道为什么!
您把代码拷贝一下,运行起来在notification有进度条!