我刚刚将早期版本的Flutter和Android工作室中的项目移植到新机器和更新的软件中。在尝试在模拟器中构建我的Android项目时,我收到以下错误...
清单合并失败:来自[com.android.support:appcompat-v7:25.4.0] AndroidManifest.xml:28:13-的属性meta-data#android.support.VERSION@value value =(25.4.0) 35 也出现在[com.android.support:support-v4:26.1.0] AndroidManifest.xml:28:13-35 value =(26.1.0)。 建议:在AndroidManifest.xml:26:9-28:38中添加'tools:replace =“android:value”'以覆盖。
这就是我的Manifest的样子......
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yourcompany.myfavkpopflutterexample"
xmlns:tools="http://schemas.android.com/tools"
>
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="21" />
<!-- The INTERNET permission is required for development. Specifically,
flutter needs it to communicate with the running application
to allow setting breakpoints, to provide hot reload, etc.
-->
<uses-permission android:name="android.permission.INTERNET"/>
<!-- io.flutter.app.FlutterApplication is an android.app.Application that
calls FlutterMain.startInitialization(this); in its onCreate method.
In most cases you can leave this as-is, but you if you want to provide
additional functionality it is fine to subclass or reimplement
FlutterApplication and put your custom class here. -->
<application android:name="io.flutter.app.FlutterApplication" android:label="myfavkpopflutter_example" android:icon="@mipmap/ic_launcher">
<activity android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@android:style/Theme.Black.NoTitleBar"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
tools:replace="android:value"
android:value="true" />
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
我添加了建议的tools:replace="android:value"
,但我仍然遇到同样的错误。我见过类似Android Studio的问题。我将其添加到SO中,因为我认为它可能与我的Flutter构建有关。
答案 0 :(得分:2)
我也有同样的问题。 我通过在错误消息中应用建议解决了问题。 添加工具:replace =“ android:label” 在(\ android \ app \ src \ main \ AndroidManifest.xml)中添加如下工具:replace =“ android:label”:
<application
tools:replace="android:label"
android:name="io.flutter.app.FlutterApplication"
android:label="flutterwp"
android:icon="@mipmap/ic_launcher">
并且不要忘记添加这样的工具:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.wp"
xmlns:tools="http://schemas.android.com/tools">
答案 1 :(得分:1)
当我尝试将 AWS Datastore 添加到我的 Flutter 项目时,我遇到了这个问题,该项目已经有用于本地 OCR 的 Google MLKit。 Datastore 或 MLKit 都可以,但不能同时使用。
什么对我有用:
将以下内容添加到 app\src\main\AndroidManifest.xml
tools:replace="android:name"
在 AndroidManifest 中使用以下声明 -
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.ABC"
xmlns:tools="http://schemas.android.com/tools">
答案 2 :(得分:0)
我也有这个问题,但我解决了这个问题。 转到项目目录/ build,然后您将看到google_sign_in,image_picker,firebase文件夹或任何已安装的依赖项。删除它们。返回pubspec文件,再次执行Packages get和Packages升级。
问题可能是image_picker文件夹,删除image_picker就足够了。如果这确实解决了您的问题,请查看manifest-merger-debug-report.txt,您将看到原因。 希望你的问题得到解决。