无法添加工具:replace =“name”到应用程序标记(Sugar Orm应用程序错误)

时间:2018-04-16 09:21:35

标签: android android-gradle sugarorm

我已经为我的proejct导入了一个新的lib。不幸的是,它在SugarOrm的lib中出错了。

当我尝试运行我的proejct时,我有以下gradle错误:

9-42 Error:
Attribute application@name value=(com.orm.SugarApp) from AndroidManifest.xml:47:9-42
is also present at AndroidManifest.xml:47:9-42 value=(com.myproject.application.app.MyApplication).
Suggestion: add 'tools:replace="android:name"' to <application> element at AndroidManifest.xml:43:5-263:19 to override.

我尝试将替换行添加到清单的应用程序标记中:

<application
    android:name=".app.MyApplication"
    android:allowBackup="true"
    tools:replace="android:name"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">

然而,我得到了同样的错误。

我的应用程序类看起来像这样:

public class MyApplication extends SugarApp{


@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}


}

我尝试了以下内容:

Invalidage缓存,重启,重建,清理,重新排序gradle lib import

如果可以,请帮忙。

E D I T:

澄清:我想在Android 4.4(API 19)上使用Sugar ORM的multidex。以后的版本默认使用multidex,但是4.4我必须在gradle中导入它,并且必须在应用程序代码中安装它。

所以基本上我必须将我的清单的应用程序设置为我的应用程序类,它也处理Sugar ORM的东西和multidex instalaltion。

这会导致错误。

版本:

  • multidex 1.02

  • SugarORM 1.5

1 个答案:

答案 0 :(得分:0)

我不得不删除生成的清单文件l ocated at:

C:\my_projects_dir\app\src\debug

现在一切都很好。也许这是一个重新生成的Android Studio错误。