Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android app fails to load on some phones in PathClassLoader

I have an app, let us call it 'com.company.foo', with a main Activity 'FooBar'. In my AndroidManifest.xml, I have

<application android:label="@string/app_name"
             android:icon="@drawable/icon"
             android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  >
    <activity android:name="FooBar"
              android:label="@string/app_name"
              android:configChanges="keyboardHidden|orientation" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
...
</application>

(where the dots contain other activities inside my app). In this form, it works fine on my HTC desire and on the emulator. However, a (very) small number of people who downloaded the app from the market report a crash with

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.company.foo/com.company.foo.FooBar}: java.lang.ClassNotFoundException: com.company.foo.FooBar in loader dalvik.system.PathClassLoader[/mnt/asec/com.company.foo-1/pkg.apk]

Someone suggested to replace the android:name="FooBar" with android:name=".FooBar", which again works fine on my phone and the emulator, but fails on some other devices. If I leave this attribute out altogether it will not let me install at all.

Any ideas?

like image 769
Kasper Peeters Avatar asked Apr 24 '11 07:04

Kasper Peeters


People also ask

Why some apps are not working on my phone?

Sometimes, the accumulated cache data of an app can cause it to stop working. When such a thing happens, you need to reset the cache data from the device settings. So, if individual Android apps are not working on your phone, another solution to fix it is by clearing the app's cached data.

Why app not responding android?

You can usually clear an app's cache and data through your phone's Settings app. Settings can vary by phone. For more info, contact your device manufacturer. Temporarily free up space when you clear cached data.


1 Answers

I have an app published on Android Market. And sometimes I receive similar crash reports. Seems that's not your fault. This can be reproduced if your app is installed on SD card. Eject this card without unmounting it and run your app.

Additional information can be found here.

like image 93
Michael Avatar answered Sep 22 '22 17:09

Michael