Android - App crashes on Pre-Lollipop devices

前端 未结 4 1293
栀梦
栀梦 2021-02-05 21:23

My app is running well on Lollipop devices but it keep crashing on prior to version Lollipop. I have simply implemented a banner add in my application with the following code th

相关标签:
4条回答
  • 2021-02-05 21:37

    After expanding more than a hour on problem, I found that I have to do some modification in MyApplication Class like this:

    public class MyApplication extends Application {
    
        @Override
        public void onCreate() {
            super.onCreate();
            // register with Active Android
            ActiveAndroid.initialize(this);
        }
    
        @Override
        protected void attachBaseContext(Context base) {
            super.attachBaseContext(base);
            MultiDex.install(this);
        }
    }
    

    I have overriden the attachbaseContext method and all works fine now.

    0 讨论(0)
  • 2021-02-05 21:52

    reduce your minSdkversion to that version you want to give support

    in gradle file of your project

    As below

    minSdkVersion 10

    0 讨论(0)
  • 2021-02-05 21:54

    +) Building Apps with Over 65K Method will cause this Error.

    +) When your application and the libraries it references reach a certain size ( DEX file of your application can have total number of methods upto 65,536 including Android framework methods, library methods, and methods in your own code), you encounter build errors that indicate your app has reached a limit of the Android app build architecture.

    +) To resolve it, include Multidex Configuration in your build.gradle like the highlighted one in picture, along with this override the attachBaseContext(Context base) method in your Application class with the below content.

    public class YourParentApplication extends Application {
    
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
     }
    }
    

    Add this in you Androidmanifest.xml:

    <application
        android:name=".YourParentApplication"
        android:allowBackup="true"
        android:icon="@drawable/radiius_logo"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:theme="@style/MyMaterialTheme">
    

    For more information about Multidex refer these site: http://developer.android.com/tools/building/multidex.html

    How to enable multidexing with the new Android Multidex support library

    0 讨论(0)
  • 2021-02-05 21:56

    You should lower the API in your AndroidManifest.xml Lollipop is API 21.

    Check this out: API Levels Example:

       defaultConfig {
            applicationId "com.package.name"
            minSdkVersion 11
            targetSdkVersion 21
            versionCode 1
            versionName "1.0"
        }
    
    0 讨论(0)
提交回复
热议问题