Comments (11)
已经确认,不存在cancle后这个请求没有从queue中移除的问题。
根据我的分析后的判断,应该是你的逻辑问题,demo中单个下载的按钮点击逻辑是暂停当前下载,再次点击继续这个下载。如果是多个下载,你需要注意:
- nohttp默认并发3个下载,如果要一个个在初始化队列时,传入参数修改队列并发值。
- 修改点击按钮的单个暂停和控制,根据你的业务逻辑修为可以控制多个请求的暂停和继续功能。
from nohttp.
其实我不是并发,是单个按顺序下载,所有创建实例是和demo一样的,点了暂停在点开始时有l一个log提示是....url....is canceled,后面都没反应了,重新进入再开始是可以继续下载的,Downloadquene里面的mUnFinishQueue是什么时候加入数据的
from nohttp.
我明白你不需要并发,不知道你的额一个个下载如果没有用队列是怎么做到的。
点击了暂停是调用request.cancel(),这个下载被取消了,你下载继续时应该重新new一个request出来加入队列,你可以在demo的单个文件下载中找到相关逻辑。
from nohttp.
非常感谢你的及时回复,我就是在单个文件的逻辑上修改的,而且同样的写法在1.0.0的demo里面是没问题的,我迁移到1.0.6才出现这样的问题,实在抱歉打扰了。
from nohttp.
那你下载1.0.6的demo看下,这个1.0.0和1.0.6的变化几乎可以忽略的,应该不会影响到,发布的时候我已经测试过了,1.0.5和1.0.6代码是没有变化的,就是整理了下,然后又发布了一个基于okhttp的版本:https://github.com/yanzhenjie/NoHttp4OkHttp
from nohttp.
我发现这个问题是出在,当我把根据url把DownloadRequest生成为全局变量,就是提前创建好的时候,在恢复下载的时候调用 CallServer.getDownloadInstance().add(0, mDownloadRequest, downloadListener);就无法恢复了,而mDownloadRequest重新根据同样的参数创建就可以重新下载,这是为什么呢
from nohttp.
就在最新的demo里面的单个文件下载就可以试试
from nohttp.
from nohttp.
这个问题在1.0.0的不用重新创建的
from nohttp.
嗯1.0.0当时重新添加时动态修改了取消状态的,但是这么做对于框架是不合理的,所以就取消了。
如果你用了之后的版本的话需要重新创建,建议使用新版,1.0.0这个版本后期升级修改了api的。
from nohttp.
好的,谢谢。
from nohttp.
Related Issues (20)
- RequestQueue多并发实现问题
- 请求头部的添加,自动把键值的首字母改成大写 HOT 1
- 上传进度条问题new FileInputStream(file), "application/octet-stream" 如何设置上传进度条 HOT 1
- 上传请求的数据中包含list list里面是map数据,请问如何上传 HOT 5
- 你好问下表单提交file能拿到上传进度的回调吗
- 报错 v1.1.11 HOT 1
- 使用studio3.2版本在安卓9.0机型请求失败
- 多文件上传 bug HOT 1
- Ftp下载 HOT 1
- 不回调success,Debug发现报 java.util.concurrent.CancellationException
- 设置返回编码无效
- NoHttpSample: java.net.SocketException: socket failed: ENONET (Machine is not on the network)
- 支持https不
- 同步请求数据返回为 “”, 同样的url 异步请求没问题
- post请求中文乱码
- The network is not available, please check the network
- target 29 下载报权限异常 HOT 1
- NoHttpSample: okhttp3.internal.http2.StreamResetException: stream was reset: PROTOCOL_ERROR HOT 1
- 为什么下载后文件正常但是重启设备后文件的后缀多了.nohttp 导致文件异常
- 请求头部的添加,自动把键值的首字母改成大写 ,这个有方法避免吗
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nohttp.