您的位置:首页 > 编程语言 > Java开发

java+jni+迅雷open api 实现基于迅雷平台下载

2011-04-06 11:40 477 查看
“迅雷下载开放引擎”以DLL形式向用户提供优质的下载服务。

引擎共包含3个文件:

XLDownload.h                    接口的声明文件
XLError.h                           错误码定义文件
XLDownload.dll                  接口实现文件
迅雷开放接口




XLContinueTaskFromTdFile




XLGetErrorMsg




XLInitDownloadEngine




XLPauseTask




XLQueryTaskInfo




XLStopTask




XLURLDownloadToFile




XLUninitDownloadEngine

  XunLeiPerformForJava.dll为JNI接口,主要负责与迅雷7开放api 实现握手

XunLeiPerform xunleiperform=X
4000
unLeiPerform.getInstance("D://");

java获取单例迅雷平台.传入保存文件夹路径.

XunLeiTask task1 = xunleiperform.createTask("http://dl_dir.qq.com/invc/qqimage/QQImage_Setup_11_270.exe");

创建任务并且开始下载

xunleiperform.addListener(XunLeiListener xll)函数可以增加下载过程中的监听器.

XunLeiListener 主要有以下接口方法
public void onProgress(XunLeiTask xlt,XunLeiProgressData progressData);当正在下载时可获取下载进度
 public void onFinished(XunLeiTask xlt);下载完成时回调函数
 public void onStarted(XunLeiTask xlt); 下载开始时回调函数
 public void onPause(XunLeiTask xlt); 下载暂停时回调函数
 public void onStop(XunLeiTask xlt);下载停止时回调函数

迅雷下载任务接口
package com.fjl.xunlei;

/**
* @author 房佳龙
* @迅雷任务开放接口
*/
public interface XunLeiTask {
/**
* @author 房佳龙
* @return 返回任务ID -- 与迅雷开放平台API同步
*/
public int getTaskId();
/**
* @author 房佳龙
* @停止并且释放任务资源
*/
public void stopAndRelease();
/**
* @author 房佳龙
* @return 返回任务状态枚举
*/
public XunLeiTaskState getState();
/**
* @author 房佳龙
* @return 即时查询JNI C 迅雷开放平台API 中任务进度,并且反射返回进度JAVA类数据
*/
public XunLeiProgressData getProgress();
/**
* @author 房佳龙
* @return 暂停该下载
*/
public void pauseDownload();
/**
* @author 房佳龙
* @return 继续该下载
*/
public void continueDownload();
}


来个下载结果给大家看看吧



java 源码下载地址 http://www.fangjialong.com/images/XunLeiPerform.jar
jni C 项目源码地址 http://www.fangjialong.com/images/XunLeiPerformForJava.zip




XLContinueTask
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐