美文网首页Flutter
Flutter Plugin引用安卓aar包

Flutter Plugin引用安卓aar包

作者: 倪大头 | 来源:发表于2021-09-02 15:12 被阅读0次

    原文:https://www.kikt.top/posts/flutter/plugin/flutter-sdk-import-aar/

    安卓插件直接引用aar,flutter编译时可能会报这个错:

    Direct local .aar file dependencies are not supported when building an AAR.
    

    解决方法是用maven把aar打包成本地仓库

    首先安装maven,mac电脑用brew即可

    brew install maven
    

    在flutter插件项目中的android根目录创建一个libs文件夹,把需要打包的aar文件放进libs目录,然后命令行进到libs目录下执行命令:

     mvn deploy:deploy-file -Dfile=WbCloudNormal-v4.0.14-b005c6b.aar -Durl="file://." -DgroupId="com.wbcloud" -DartifactId="normal" -Dversion="4.0.14"
    

    -Dfile= 后面是你的aar文件名
    -DgroupId= 后面是组名
    -DartifactId= 后面是sdk名称
    -Dversion= 后面是版本号

    命令执行后,本地仓库已生成


    image.png

    我这里有两个aar,一个normal一个ocrsdk

    本地仓库生成成功后就可以把之前拖进来的aar文件删除了

    配置安卓项目的build.gradle文件:
    定义一个找到包路径的方法:

    def getCurrentProjectDir() {
        String result = ""
        rootProject.allprojects { project ->
            if (project.properties.get("identityPath").toString() == ":tencent_ocr_plugin") {
                result = project.properties.get("projectDir").toString()
            }
        }
        return result
    }
    ...
    “tencent_ocr_plugin”修改为你的flutter plugin项目名
    
    在rootProject.allprojects中配置maven包路径
    

    rootProject.allprojects {
    def dir = getCurrentProjectDir()
    repositories {
    google()
    jcenter()
    maven {
    url "$dir/libs"
    }
    }
    }

    
    然后在dependencies中就可以导入想要的aar了
    

    dependencies {
    implementation "com.wbcloud:normal:4.0.14"
    implementation "com.wbcloud:ocrsdk:2.4.5"
    }

    相关文章

      网友评论

        本文标题:Flutter Plugin引用安卓aar包

        本文链接:https://www.haomeiwen.com/subject/rptcwltx.html