【问题标题】:How to import third party android library to java file in flutter如何在flutter中将第三方android库导入java文件
【发布时间】:2018-07-26 17:33:11
【问题描述】:

我希望将 java 库导入到颤振应用程序。我知道我需要通过每个https://flutter.io/platform-channels/ 的飞镖桥或平台通道调用这个 java 文件的方法。但是,我还不能从我试图导入可调用或可导入的库中创建方法。这些方法在android studio中单独查看java文件时可用,但在flutter查看时它们不可用。

【问题讨论】:

  • 请添加您到目前为止所做的代码以导入库。另外,您所说的“用颤振查看”是什么意思?
  • 到目前为止,我已将 compile 'io.particle:cloudsdk:0.5.0' 添加到 android gradle 中,然后让 gradle 通过控制台检索依赖项。就像一个人将一个库导入一个普通的安卓应用程序一样。 “用颤振查看”我指的是查看整个项目、android ios 和 dart 代码。当您右键单击 android 文件时,您可以像在 android 中一样将它们作为单个项目打开。单独查看 android 文件时,我可以使用库中的方法和类。看整个项目的时候不知道方法和类

标签: android flutter


【解决方案1】:

使用提供的额外信息,我能够重现该问题。

要编辑原生 Android 应用,您必须在新的 Android Studio 实例中打开它:

要添加库x io.particle:cloudsdk:0.5.0,您必须将其添加到app 子文件夹中的build.gradle。您还必须启用 Java 1.8 支持:

android {
    ...
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

...

dependencies {
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation 'io.particle:cloudsdk:0.5.0'
}

仅当您在单独的窗口中打开 Android 项目时,IDE 才会识别该库。 Flutter 应用程序仍然可以毫无问题地编译。

为了摆脱你的Flutter项目中的红色错误下划线,你可以卸载,然后重新加载Android模块(右键点击android文件夹>Load/Unload modules...):

【讨论】:

  • 实际上我在右击 android 文件夹时看不到加载/卸载模块。但是我相信我可以通过单击“同步 android”来获得相同的预期结果。不管它编译所以谢谢你!
  • 我添加了另一个屏幕截图,显示了可以找到该选项的位置
  • 是的,我看到了加载/卸载模块在打开模块设置和创建 gist 按钮之间的关系,但由于某种原因我的菜单中没有。
  • @boformer 现在为 iOs 导出应用程序可以正常工作吗?还是这个解决方案只适用于安卓?
  • 这整个问题/答案仅与 Android 相关,不影响 iOS 导出。请记住,您不能在 iOS 上使用 Java 库。
猜你喜欢
  • 2010-12-30
  • 1970-01-01
  • 1970-01-01
  • 2019-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多