Android 加了自定义Application后报错 Unable to instantiate activity ComponentInfo ClassNotFoundException

在Android自定义一个类继承集成Application后,并在AndroidManifest.xml里面配置了application的name属性为该类名称后报错:

  Unable to instantiate activity ComponentInfo ClassNotFoundException,应用程序无法启动,找不到首要启动activity。

在网上搜索了很多,最终找到了解决办法:

https://www.jianshu.com/p/dd90d7e7c691

  解决办法:

1、在build.gradle(app)下面加了multiDexEnabled true

android {  
    defaultConfig { 
        multiDexEnabled true 
    }
    dependencies { 
        compile 'com.android.support:multidex:1.0.0' 
    }

2、让自定义的application继承MultiDexApplication

import android.app.Application;
import android.support.multidex.MultiDexApplication;

import com.turuiinfo.www.ywairport.utils.MyExceptionHandler;

public class BaseApplication extends MultiDexApplication {

    /*在Application创建的时候调用,一般用于初始化一些东西,如全局的对象,环境的配置等*/
    @Override
    public void onCreate() {
        super.onCreate();
        /*MyExceptionHandler.getInstance().init(getApplicationContext());*/
    }

}

最终成功解决报错问题

 

 

posted @ 2018-07-23 10:04  _York  阅读(543)  评论(1编辑  收藏  举报