You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

download.gradle 2.2 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /**
  2. * To download necessary library from HuaWei server.
  3. * Including mindspore-lite .so file, minddata-lite .so file and model file.
  4. * The libraries can be downloaded manually.
  5. */
  6. def mindsporeLite_Version = "mindspore-lite-maven-1.0.1"
  7. def targetModelFile = "src/main/assets/posenet_model.ms"
  8. def modelDownloadUrl = "https://download.mindspore.cn/model_zoo/official/lite/posenet_lite/posenet_model.ms"
  9. def mindsporeLiteDownloadUrl = "https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.0.1/lite/java/${mindsporeLite_Version}.zip"
  10. def mindSporeLibrary = "libs/${mindsporeLite_Version}.zip"
  11. def cleantargetMindSporeInclude = "libs"
  12. def targetMindSporeInclude = "libs/"
  13. task downloadModelFile(type: DownloadUrlTask) {
  14. doFirst {
  15. println "Downloading ${modelDownloadUrl}"
  16. }
  17. sourceUrl = "${modelDownloadUrl}"
  18. target = file("${targetModelFile}")
  19. }
  20. task downloadMindSporeLibrary(type: DownloadUrlTask) {
  21. doFirst {
  22. println "Downloading ${mindsporeLiteDownloadUrl}"
  23. }
  24. sourceUrl = "${mindsporeLiteDownloadUrl}"
  25. target = file("${mindSporeLibrary}")
  26. }
  27. task unzipMindSporeInclude(type: Copy, dependsOn: ['downloadMindSporeLibrary']) {
  28. doFirst {
  29. println "Unzipping ${mindSporeLibrary}"
  30. }
  31. from zipTree("${mindSporeLibrary}")
  32. into "${targetMindSporeInclude}"
  33. }
  34. task cleanUnusedmindsporeFiles(type: Delete, dependsOn: ['unzipMindSporeInclude']) {
  35. delete fileTree("${cleantargetMindSporeInclude}").matching {
  36. include "*.zip"
  37. }
  38. }
  39. if (file("libs/mindspore-lite-1.0.1.aar").exists()){
  40. downloadMindSporeLibrary.enabled = false
  41. unzipMindSporeInclude.enabled = false
  42. cleanUnusedmindsporeFiles.enabled = false
  43. }
  44. if (file("src/main/assets/posenet_model.ms").exists()){
  45. downloadModelFile.enabled = false
  46. }
  47. preBuild.dependsOn downloadModelFile
  48. preBuild.dependsOn downloadMindSporeLibrary
  49. preBuild.dependsOn unzipMindSporeInclude
  50. preBuild.dependsOn cleanUnusedmindsporeFiles
  51. class DownloadUrlTask extends DefaultTask {
  52. @Input
  53. String sourceUrl
  54. @OutputFile
  55. File target
  56. @TaskAction
  57. void download() {
  58. ant.get(src: sourceUrl, dest: target)
  59. }
  60. }