我将一个旧版Android应用程序转换为库,并将其放入我当前的flutter项目中,以使用“方法通道”进行调用。它工作正常,但问题是flutter同时安装了这两个应用程序,并在设备屏幕上显示了两个图标!甚至将第二个应用程序用作库和依赖项。 Flutter会将两者安装为常规应用程序。
我正在使用Flutter 1.7.8。
我尝试遵循此答案-> How to use a library project in android studio
我只想安装flutter应用程序,并将第二个应用程序用作其中的库/依赖项。
答案 0 :(得分:1)
您可能会使用以下代码进行两项活动。
<meta-data
android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
android:value="true" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
仅将上述代码用于一项活动,否则android同时启动两个应用程序。
例如,在您的代码中使用它。
<activity
android:name=".MainActivity"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale"
android:hardwareAccelerated="true"
android:theme="@style/LaunchTheme"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
android:value="true" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
答案 1 :(得分:0)
您必须将第二个模块的类型更改为库,更改
apply plugin: 'com.android.application'
进入
apply plugin: 'com.android.library'
在模块的build.gradle上。
,并删除这些模块上的所有意图过滤器主程序和启动器。
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
删除这些部分。