借助浏览器来访问服务器,并且上传数据,不在面向http协议编程
Intent uploadintent = new Intent();
uploadintent.setAction(Intent.ACTION_VIEW);
uploadintent.addCategory(Intent.CATEGORY_BROWSABLE);
Random random = new Random();
int number = random.nextInt(1000);
uploadintent.setData(Uri.parse("http://192.168.1.247:8080/web/UploadServlet?info="+"youku"+number));
//在服务里面开启activity 需要给activity创建一个新的任务栈
uploadintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(uploadintent);
不需要在配置文件里添加访问网络的权限。
上面是在service里面开启的activity,在service里面开启activity时,如果没有uploadintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);这一句就会报错
如下图:
在service里面启动Activity时,service是没有任务栈的,需要显示为这个activity申请一个新的任务栈。
通过点击home键最小化浏览器:
Intent homeintent = new Intent();
homeintent.setAction("android.intent.action.MAIN");
homeintent.addCategory("android.intent.category.HOME");
homeintent.addCategory("android.intent.category.DEFAULT");
homeintent.addCategory("android.intent.category.MONKEY");
homeintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(homeintent);
0权限下载在浏览器里输入:
http://192.168.1.247:8080/data.zip
就可以自动进行下载,无需权限。
自动下载到sd卡 downloads/data.zip