通过独立的.aar文件将Flutter模块添加到本机Android应用中

问题描述 投票:0回答:2

我正在尝试通过.aar文件将Flutter Module添加到本机Android应用程序。

我按照这里的步骤操作:https://flutter.dev/docs/development/add-to-app/android/project-setup

我创建了一个新的Android项目。我还独立创建了一个新的Flutter Module(Android项目之外的不同位置和IDE项目)。然后,我通过模块的.aar构建了一个flutter build aar。然后,我从Android项目中的.aar文件创建了一个模块。

很遗憾,我无法使它正常工作。添加aar模块后,我无法访问FlutterActivityFlutterEngine等。FlutterFragment下只有Flutterio.flutter.facade可用。我看不到io.flutter.embedding软件包。

IDE Screenshot

[显然,Flutter依赖关系未包含在.aar存档中。我尝试了各种“ fat aar”构建脚本。没有成功另外,据我了解,所描述的flutter build aar方法应该包含所有必要的Flutter依赖关系,对吧?

有些人似乎可以使用它。不幸的是,在任何地方都没有关于.aar方法的示例项目或特定帮助。

有人可以帮忙吗?

android flutter native aar
2个回答
0
投票

将此添加到您的AndroidManifest.xml中

<activity
android:name="io.flutter.embedding.android.FlutterActivity"
android:theme="@style/LaunchTheme"  android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize"/>

请在下面的链接中引用此内容

https://flutter.dev/docs/development/add-to-app/android/add-flutter-screen?tab=custom-activity-launch-kotlin-tab

这可能对您有帮助。


0
投票

您是对的,AAR应该包含所有依赖项,因此从本机方面来说,您不需要执行任何额外的步骤,也许您缺少其中的一个]

maven {
    url "$project.rootDir/../duy_flutter_module/build/host/outputs/repo"
}
maven {
    url 'http://download.flutter.io'
}

[请记住,如果您的android native项目有2个模块,app和第二个模块(包含一个活动托管您的Flutter),则需要将AAR添加到两个模块中,或添加到allprojects块内的build.gradle根目录。您可以在这里参考https://github.com/duytq94/demo-integrate-flutter

© www.soinside.com 2019 - 2024. All rights reserved.