1

The app went to crash when run at beginning of the app. The below crashing issues that i have mentioned here as just shown when i put manually app-debug.apkfile in mobile device after installing part was over. But in case of while running the application through the android studio it will working fine. No crashing point will point out.

One more thing is, i have added all Activities in my application manifest.

Android RuneTime Exception:

FATAL EXCEPTION: main

                                                                       Process: com.interfinet.jobtree, PID: 23960
                                                                            java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.interfinet.jobtree/com.interfinet.jobtree.SplashScreen}: java.lang.ClassNotFoundException: Didn't find class "com.interfinet.jobtree.SplashScreen" on path: DexPathList[[zip file "/data/app/com.interfinet.jobtree-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
                                                                                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2250)
                                                                                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413)
                                                                                at android.app.ActivityThread.access$800(ActivityThread.java:155)
                                                                                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1317)
                                                                                at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                at android.os.Looper.loop(Looper.java:135)
                                                                                at android.app.ActivityThread.main(ActivityThread.java:5343)
                                                                                at java.lang.reflect.Method.invoke(Native Method)
                                                                                at java.lang.reflect.Method.invoke(Method.java:372)
                                                                                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
                                                                                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)
                                                                             Caused by: java.lang.ClassNotFoundException: Didn't find class "com.interfinet.jobtree.SplashScreen" on path: DexPathList[[zip file "/data/app/com.interfinet.jobtree-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
                                                                                at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
                                                                                at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
                                                                                at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
                                                                                at android.app.Instrumentation.newActivity(Instrumentation.java:1089)
                                                                                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2240)
                                                                                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413) 
                                                                                at android.app.ActivityThread.access$800(ActivityThread.java:155) 
                                                                                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1317) 
                                                                                at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                at android.os.Looper.loop(Looper.java:135) 
                                                                                at android.app.ActivityThread.main(ActivityThread.java:5343) 
                                                                                at java.lang.reflect.Method.invoke(Native Method) 
                                                                                at java.lang.reflect.Method.invoke(Method.java:372) 
                                                                                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905) 
                                                                                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700) 
                                                                                Suppressed: java.lang.ClassNotFoundException: com.interfinet.jobtree.SplashScreen
                                                                                at java.lang.Class.classForName(Native Method)
                                                                                at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
                                                                                at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
                                                                                at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
                                                                                        ... 13 more
                                                                             Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
    05-11 17:53:51.758 23960-23960/com.interfinet.jobtree I/Process: Sending signal. PID: 23960 SIG: 9

app.gradle file:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion '25.0.0'

    defaultConfig {
        applicationId "com.interfinet.jobtree"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        multiDexEnabled true

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    aaptOptions {
        additionalParameters "--no-version-vectors"
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(':linkedin-sdk')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support:design:25.3.1'
    compile 'com.android.support:recyclerview-v7:25.3.1'
    compile 'com.android.support:cardview-v7:25.3.1'
    compile 'de.hdodenhof:circleimageview:2.1.0'
    compile 'com.mikhaellopez:circularimageview:3.0.2'
    compile 'com.google.android.gms:play-services-maps:8.4.0'
    compile 'com.google.android.gms:play-services-location:8.4.0'
    compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'
    compile 'com.jaredrummler:material-spinner:1.1.0'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.android.support:multidex:1.0.0'
    compile 'com.facebook.android:facebook-android-sdk:4.0.0'
    compile 'com.wdullaer:materialdatetimepicker:3.1.3'
    compile 'at.blogc:expandabletextview:1.0.3'
}

Manifest.xml file:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.interfinet.jobtree">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/app_luncher_logo11"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme.NoActionBar">
        <activity
            android:name=".SplashScreen"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".OnboardActivity"
            android:screenOrientation="portrait"
            android:theme="@style/AppTheme.NoActionBar" />
        <activity
            android:name=".CredentialActivity"
            android:screenOrientation="portrait"
            android:theme="@style/AppTheme.Login"
            android:windowSoftInputMode="stateHidden|adjustResize" />
    </application>

</manifest>
pb123
  • 489
  • 3
  • 9
  • 25
  • It could be an issue/feature on the new Android Studio update. [Checkout this solution.](https://stackoverflow.com/a/44541324/1972597) – Tony Jun 14 '17 at 10:00

5 Answers5

1

Go to your project location, search for .iml file then remove this file, restart android studio and build .apk file. it will working fine.

Safa
  • 473
  • 5
  • 22
  • Is this .imi or .iml file ?Can you explain me briefly? – pb123 May 11 '17 at 13:07
  • it's `.iml` file, may contains wrong data. Once you delete it and re-open your project the file will re-created with right data `IML is a module file created by IntelliJ IDEA, an IDE used to develop Java applications. It stores information about a development module, which may be a Java, Plugin, Android, or Maven component; saves the module paths, dependencies, and other settings.` – Safa May 11 '17 at 13:13
  • Removed myprojectname.iml this one from my current project. Getting same issues after doing the same stuff that you have mentioned over here.. – pb123 May 11 '17 at 13:27
0

remove multiDexEnabled true from gradle file and try

EKN
  • 1,886
  • 1
  • 16
  • 29
0

As per my knowledge, you should change your package name and as well from activities in menifest.

0

In your AndroidManifest.xml, try using android:name="com.interfinet.jobtree.SplashScreen" instead of android:name=".SplashScreen".

AndroidManifest.xml

    ...........
    ................ 

    <activity
        android:name="com.interfinet.jobtree.SplashScreen"
        android:label="@string/app_name"
        android:theme="@style/AppTheme.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    ...........
    ................ 
Ferdous Ahamed
  • 21,438
  • 5
  • 52
  • 61
0

After some research with the same issue.

If you just upgraded your android studio.

You will not have this option to disable -> Instant Run. (not on the menu)

Seems like with new android studio and gradle upgrade in order to install an apk you need to properly build it.

option 1: with gradle from command line

./gradlew :appName:clean ./gradlew :appName:build

Option 2: from android studio

Android Studio -> build -> build APK (or generate sighed APK)

The generated apk can be installed fine on a device.

Note: if you start a new applicate with this version of android studio you will see that when you run from studio there is no apk generated anymore.

beee
  • 442
  • 5
  • 9