dodola
dodola
@eatmyball 这个断点续传只是加了一个RANGE的头,并不能判断服务器是否支持断点续传,你必须找一个支持断点续传的服务器才行
@eatmyball 建议你去看一下Android源码里的packages\providers\DownloadProvider\src\com\android\providers\downloads\DownloadThread.java 里面有断点续传和判断服务器是否可以断点续传的代码,可以暂停和继续,原理是根据etag和range头判断,还是服务器对http协议标准支持问题。。。
@jasonross 其实,我之前做了一个demo😂,本来打算开始写补丁自动化的部分,然后发现了你这个项目,然后自己就不知道怎么写了。哈哈。项目在这: [HotFix](https://github.com/dodola/HotFix)
@jasonross 哈哈,之前一直写Ant task,转到Gradle还没写过插件,还没想好怎么写就看到这个项目了,赞一个。这个东西看起来简单,貌似很多坑,有很多厂家的rom改的比较多。。
@ddIvan 1.5以后改成Transform API 了
@xxxyanchenxxx 总结的很好,关于ART用这种方法确实会出现问题,其实按道理来说andfix的那种替换ArtMethod的方法应该也会出现问题的说,不知道有没有人遇到.关于你说的异常第二点有个hack的方法可以解决,你可以通过hook的方法获取到那个类的ClassObject 然后通过[CLEAR_METHOD_FLAG ](https://android.googlesource.com/platform/dalvik/+/eclair-release/vm/oo/Object.h#103) 将[CLASS_ISPREVERIFIED ](https://android.googlesource.com/platform/dalvik/+/eclair-release/vm/oo/Object.h#90)的标记给清除掉,hook的过程可以看 [ddi](https://github.com/crmulliner/ddi),我看Andfix也是用的这套
@peive 我觉得ART暂时不要打补丁比较好
@JChord @jasonross 好像是 [http://tools.android.com/tech-docs/new-build-system/transform-api](http://tools.android.com/tech-docs/new-build-system/transform-api) 这个变更造成的
@LuoboDcom 这个我提交了个补丁可以解决了这个问题,你看一下你项目里有没有 local.properties 文件,里面内容是 sdk.dir=SDK路径,不过...我发现作者没有更新到jcenter上,请自行下载源码编译 ``` groovy File localProps = project.rootProject.file("local.properties") if (localProps.exists()) { properties.load(localProps.newDataInputStream()) sdkDir = properties.getProperty("sdk.dir") } else { sdkDir = System.getenv("ANDROID_HOME") } ```
@LuoboDcom 怪我没说清楚,是这个项目 [NuwaGradle](https://github.com/jasonross/NuwaGradle) 作者merge了代码,但是jcenter里的lib还是旧的,所以出现这个情况。