Although our developer website has a rich API introduction, some API introductions may not be complete, and some APIs are constantly evolving. In order to get a more detailed API, we can get more detailed information through the following commands. For example, we get more information about the "Singledownload" API.
$qmlplugindump Ubuntu.downloadmanager 0.1
The results shown are as follows:
Import Qtquick.tooling 1.1
This file describes the Plugin-supplied types contained in the library.
It is used for QML tooling purposes only.
//
This file is auto-generated by:
' Qmlplugindump Ubuntu.downloadmanager 0.1 '
Module {
Component {
Name: "Ubuntu::D ownloadmanager::D ownloaderror"
Prototype: "Qobject"
Exports: ["Error 0.1"]
Exportmetaobjectrevisions: [0]
Property {name: "type"; Type: "string"; Isreadonly:true}
Property {name: "message"; Type: "string"; Isreadonly:true}
}
Component {
Name: "Ubuntu::D ownloadmanager::singledownload"
Prototype: "Qobject"
Exports: ["Singledownload 0.1"]
Exportmetaobjectrevisions: [0]
Property {name: "AutoStart"; Type: "BOOL"}
Property {name: "ErrorMessage"; Type: "string"; Isreadonly:true}
Property {name: "iscompleted"; Type: "bool"; Isreadonly:true}
Property {name: "downloadinprogress"; Type: "bool"; Isreadonly:true}
Property {name: "Allowmobiledownload"; Type: "BOOL"}
Property {name: "Throttle"; Type: "Qulonglong"}
Property {Name: "Progress"; Type: "int"; Isreadonly:true}
Property {name: "Downloading"; Type: "bool"; Isreadonly:true}
Property {name: "Downloadid"; Type: "string"; Isreadonly:true}
Property {name: "Headers"; Type: "Qvariantmap"}
Signal {
Name: "Canceled"
Parameter {name: "Success"; Type: "BOOL"}
}
Signal {
Name: "Finished"
Parameter {name: "path"; Type: "String"}
}
Signal {
Name: "Paused"
Parameter {name: "Success"; Type: "BOOL"}
}
Signal {
Name: "Processing"
Parameter {name: "path"; Type: "String"}
}
Signal {
Name: "Progressreceived"
Parameter {name: "Received"; Type: "Qulonglong"}
Parameter {name: "Total"; Type: "Qulonglong"}
}
Signal {
Name: "Resumed"
Parameter {name: "Success"; Type: "BOOL"}
}
Signal {
Name: "Started"
Parameter {name: "Success"; Type: "BOOL"}
}
Signal {
Name: "Errorfound"
Parameter {name: "error"; Type: "downloaderror&"}
}
Signal {name: "Errorchanged"}
Method {
Name: "Registererror"
Parameter {name: "error"; Type: "Error"; Ispointer:true}
}
Method {
Name: "Binddownload"
Parameter {name: "Download"; Type: "Download"; Ispointer:true}
}
Method {
Name: "Unbinddownload"
Parameter {name: "Download"; Type: "Download"; Ispointer:true}
}
Method {
Name: "Onfinished"
Parameter {name: "path"; Type: "String"}
}
Method {
Name: "OnProgress"
Parameter {name: "Received"; Type: "Qulonglong"}
Parameter {name: "Total"; Type: "Qulonglong"}
}
Method {
Name: "Onpaused"
Parameter {name: "waspaused"; Type: "BOOL"}
}
Method {
Name: "Onresumed"
Parameter {name: "wasresumed"; Type: "BOOL"}
}
Method {
Name: "Onstarted"
Parameter {name: "wasstarted"; Type: "BOOL"}
}
Method {
Name: "Oncanceled"
Parameter {name: "wascanceled"; Type: "BOOL"}
}
Method {name: "Start"}
Method {name: "Pause"}
Method {name: "Resume"}
Method {name: "Cancel"}
Method {
Name: "Download"
Parameter {name: "url"; Type: "String"}
}
}
Component {
Name: "Ubuntu::D Ownloadmanager::ubuntudownloadmanager"
Prototype: "Qobject"
Exports: ["Downloadmanager 0.1"]
Exportmetaobjectrevisions: [0]
Property {name: "AutoStart"; Type: "BOOL"}
Property {name: "Cleandownloads"; Type: "BOOL"}
Property {name: "ErrorMessage"; Type: "string"; Isreadonly:true}
Property {name: "Downloads"; Type: "Qvariantlist"; Isreadonly:true}
Signal {name: "Errorchanged"}
Method {
Name: "Download"
Parameter {name: "url"; Type: "String"}
}
}
}
We do this separately by using the "finished" signal to get the downloaded event.
Another example (Push notification)
liuxg@liuxg:~$ qmlplugindump ubuntu.pushnotifications 0.1 Import qtquick.tooling 1.1//This file describes the Plugin-su
Pplied types contained in the library.
It is used for QML tooling purposes only. This file is auto-generated by://' Qmlplugindump ubuntu.pushnotifications 0.1 ' Module {Component {n
Ame: "Pushclient" prototype: "Qobject" exports: ["pushclient 0.1"] Exportmetaobjectrevisions: [0]
Property {name: ' AppId '; Type: ' String '} property {name: ' token '; Type: ' String '; Isreadonly:true} Property {name: ' Notifications '; Type: ' Qstringlist '; Isreadonly:true} property {name: ' status '; Type: ' String "; Isreadonly:true} Property {name: ' persistent '; Type: ' Qstringlist '; Isreadonly:true} property {name: "Count"; Type: "int"} Signal {name: "countchanged" Parameter {type: "int"}} Si gnal {name: "NotificationschanGed "Parameter {type:" Qstringlist "}}} Signal {name:" persistentchanged " Parameter {type: "Qstringlist"}} Signal {name: "appidchanged" Parameter
{type: "string"}} Signal {name: "error" Parameter {type: "string"}} Signal {name: "
Tokenchanged "Parameter {type:" string "}} Signal {name:" statuschanged " Parameter {type: "string"}} method {name: "GetNotifications"} method {Name
: "notified" Parameter {name: "AppId"; Type: "string"}} Method {name: "Emiterror"}
Method {name: "Clearpersistent" Parameter {name: "tags"; Type: "Qstringlist"}}}
}