TondarAPI迅雷離線 API
本項(xiàng)目旨在提供一個(gè)純由Objective-C寫(xiě)成的迅雷離線API,方便在Mac OS X和iOS上開(kāi)發(fā)相應(yīng)項(xiàng)目。
TondarAPI已經(jīng)通過(guò)了iOS/Mac OS X兼容性測(cè)試
名稱(chēng)釋義
Tondar為波斯語(yǔ)(Persian),意為閃電
功能概述
- 迅雷離線賬戶(hù)登陸
- 獲取任務(wù)列表(返回返回每個(gè)任務(wù)的詳細(xì)信息,參見(jiàn)XunleiItemInfo)
- 任務(wù)類(lèi)型識(shí)別
- 獲取BT任務(wù)列表(返回返回每個(gè)任務(wù)的詳細(xì)信息,參見(jiàn)XunleiItemInfo)
- http/ftp/thunder/ed2k/magnet等下載連接類(lèi)型支持
- 刪除任務(wù)
- 添加云轉(zhuǎn)碼任務(wù)(包括選擇不同清晰度)
- 獲取云轉(zhuǎn)碼任務(wù)列表
- 刪除云轉(zhuǎn)碼任務(wù)
- 云點(diǎn)播
- 一鍵添加到迅雷快傳
- 對(duì)迅雷,旋風(fēng),F(xiàn)lashget多種專(zhuān)有連接的下載支持
TODO
- 完善獲取“保留時(shí)間”方法
- 增加對(duì)正在下載任務(wù)的進(jìn)度獲取
- 增加本地BT文件上傳
- 支持批量任務(wù)添加
- 去掉一些開(kāi)源庫(kù)的依賴(lài)
使用迅雷離線API的項(xiàng)目
- 迅雷離線 for iOS
- fakeThunder 2 (Developing)
- TurboX
如果你使用了迅雷離線API,可以和我聯(lián)系添加到這里
要求
系統(tǒng):iOS 5.0及以上(支持ARC)和Mac OX 10.7 Lion及以上
Xcode:4.3及其以上
asi-http-request
RegexKitLite
JSONKit
源文件說(shuō)明
依賴(lài)的開(kāi)源庫(kù)
迅雷離線API依賴(lài)的開(kāi)源庫(kù)有:asi-http-request RegexKitLite和JSONKit
asi-http-request方便了http-request。不過(guò)asi-http-request作者已經(jīng)停止了開(kāi)發(fā),而且不支持ARC,所以我也正在考慮更換成別的開(kāi)源庫(kù),如果有比較好的功能完備的庫(kù)可以推薦給我
RegexKitLite 是一款方便進(jìn)行正則處理的開(kāi)源庫(kù),用起來(lái)非常不錯(cuò),但是據(jù)說(shuō)有reject風(fēng)險(xiǎn)?現(xiàn)在還未確定
JSONKit 處理JSON的開(kāi)源庫(kù),詳細(xì)情況可以查看項(xiàng)目主頁(yè)
開(kāi)源庫(kù)的使用
具體方法就不寫(xiě)了,Google或者到各個(gè)項(xiàng)目主頁(yè)很容易就可以查到。
需要注意的是在啟用了ARC環(huán)境下如果使用不開(kāi)啟ARC的庫(kù),可以找到Target->Build Phases->Compile Sources->找到需要關(guān)閉ARC的.m文件,然后加入-fno-objc-arc
關(guān)于開(kāi)源庫(kù)的使用,當(dāng)時(shí)為了開(kāi)發(fā)的方便加入了三個(gè)開(kāi)源庫(kù)能夠讓我用最快的時(shí)間開(kāi)發(fā)出來(lái),把主要精力放在寫(xiě)正則上,現(xiàn)在iOS和Mac OS X對(duì)JSON和正則的支持也很不錯(cuò),所以可能會(huì)去掉這兩個(gè)開(kāi)源庫(kù),用起來(lái)方便一些。
特別注意:如果你是從別的地方獲取的asi-http-request,那么需要修改一處代碼以支持中文。
把
[self setDefaultResponseEncoding:NSISOLatin1StringEncoding];
改成
[self setDefaultResponseEncoding:NSUTF8StringEncoding];
詳細(xì)操作點(diǎn)擊這里
API結(jié)構(gòu)說(shuō)明
迅雷離線API包含了10個(gè)文件
對(duì)外調(diào)用需要以下文件: HYXunleiLixianAPI,XunleiItemInfo 和Kuai
HYXunleiLixianAPI 提供了獲取任務(wù)列表,添加任務(wù)刪除任務(wù)等功能
XunleiItemInfo 提供了任務(wù)返回信息(包含任務(wù)名稱(chēng),dcid等)
Kuai中對(duì)外調(diào)用為其中的KuaiItemInfo類(lèi),包含了從迅雷快傳提取任務(wù)的各種信息
更新日志
- 2012-8-22 v0.5 fix some bugs && 增加了對(duì)迅雷,旋風(fēng),F(xiàn)lashget專(zhuān)有下載鏈接格式的支持
- 2012-8-21 v0.4.1 fix some bugs && update README
- 2012-8-20 v0.4 released!,增加了迅雷快傳
- 2012-8-19 重寫(xiě)了接口
