首页 > 解决方案 > 如何将第三方 SDK 正确添加到 Cordova 插件?

问题描述

我正在创建一个自定义 Cordova 插件,目前正在尝试将其导入到我的 ionic Cordova 项目中。但是,它总是说我在编译期间找不到 .aar 文件。我遵循了这个答案:Cordova Plugin - 添加第三方 sdk

这是我的插件文件夹结构:

plugin
|--libs
|--src
|----ios
|----android
|------libs
|------sdk.gradle
|--www
|--package.json
|--plugin.xml

这是我的plugin.xml

<platform name="android">
        <framework src="src/android/sdk.gradle" custom="true" type="gradleReference" />    
            <config-file parent="/*" target="res/xml/config.xml">
                <feature name="MationPlugin">
                    <param name="android-package" value="cordova.plugin.custom.MationPlugin" />
                </feature>
            </config-file>
            <config-file parent="/*" target="AndroidManifest.xml"></config-file>
            <source-file src="src/android/MationPlugin.java" target-dir="src/cordova/plugin/custom/MationPlugin" />
            <resource-file src="src/android/libs/library.aar" target="src/android/libs/library.aar" />
</platform>

这是我的sdk.gradle

repositories {    
    jcenter()
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    compile(name:'library', ext:'aar')
}

android {
    packagingOptions {
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
    }
}

ionic cordova run android这是我在插件测试应用程序中运行后收到的错误消息。

E:\wamp64\www\fyp\test\pluginTestApp\platforms\android\gradlew: Command failed with exit code 1 Error output:
FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all files for configuration ':app:debugCompileClasspath'.
> Could not find :library:.
  Required by:
      project :app

标签: androidcordovaplugins

解决方案


 <source-file src="src/android/libs/library.aar" target-dir="libs" />

这对我有用。基本上对于cordova插件,插件中使用的每个java文件或库都需要在plugin.xml中如上所示。我以前的 plugin.xml 没有工作,因为target而不是target-dir


推荐阅读