java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
Asked Answered
S

1

7

I'm getting a class cast exception namely

java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication

when I'm trying to use the green droid library in my project.Here is the concerned code. I've been trying to figure out what is going wrong but still no luck. Any sort of help will be much appreciated. Thank you.

public class MainMenu extends GDActivity{
   private QuickActionWidget mBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setActionBarContentView(R.layout.mainmenu);
       mBar = new QuickActionBar(this);
       mBar.addQuickAction(new QuickAction(this, R.drawable.food, "food"));

Button foodButton=(Button)findViewById(R.id.food);




foodButton.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
     mBar.show(v);

}
 });


}

  }

Here is my mainmenu.xml

   <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/back"
android:orientation="vertical" >
<RelativeLayout 

    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
<RelativeLayout 
   android:layout_alignParentBottom="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <Button 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="80dp"
        android:id="@+id/menu"
        android:background="@drawable/menu"></Button>
     <Button 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="80dp"
        android:id="@+id/food"
        android:layout_toRightOf="@id/menu"
        android:background="@drawable/food"></Button>   

</RelativeLayout>
</LinearLayout>

This my LogCat.

> 03-23 10:21:27.887: D/dalvikvm(395): GC_FOR_ALLOC freed 54K, 4% free 6389K/6595K, paused 48ms
03-23 10:21:27.937: I/dalvikvm-heap(395): Grow heap (frag case) to 10.253MB for 4096016-byte allocation
03-23 10:21:28.018: D/dalvikvm(395): GC_FOR_ALLOC freed <1K, 3% free 10389K/10631K, paused 47ms
03-23 10:21:28.128: D/dalvikvm(395): GC_CONCURRENT freed <1K, 3% free 10389K/10631K, paused 3ms+2ms
03-23 10:21:28.967: V/TLINE(395): new: android.text.TextLine@40654a10
03-23 10:21:36.497: D/AndroidRuntime(395): Shutting down VM
03-23 10:21:36.497: W/dalvikvm(395): threadid=1: thread exiting with uncaught exception (group=0x40014760)
03-23 10:21:36.507: E/AndroidRuntime(395): FATAL EXCEPTION: main
03-23 10:21:36.507: E/AndroidRuntime(395): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bombil.ramada/com.bombil.ramada.MainMenu}: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1748)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1764)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.ActivityThread.access$1500(ActivityThread.java:122)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1002)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.os.Looper.loop(Looper.java:132)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.ActivityThread.main(ActivityThread.java:4025)
03-23 10:21:36.507: E/AndroidRuntime(395):  at java.lang.reflect.Method.invokeNative(Native Method)
03-23 10:21:36.507: E/AndroidRuntime(395):  at java.lang.reflect.Method.invoke(Method.java:491)
03-23 10:21:36.507: E/AndroidRuntime(395):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
03-23 10:21:36.507: E/AndroidRuntime(395):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
03-23 10:21:36.507: E/AndroidRuntime(395):  at dalvik.system.NativeStart.main(Native Method)
03-23 10:21:36.507: E/AndroidRuntime(395): Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:21:36.507: E/AndroidRuntime(395):  at greendroid.app.GDActivity.getGDApplication(GDActivity.java:205)
03-23 10:21:36.507: E/AndroidRuntime(395):  at greendroid.app.GDActivity.onCreate(GDActivity.java:147)
03-23 10:21:36.507: E/AndroidRuntime(395):  at com.bombil.ramada.MainMenu.onCreate(MainMenu.java:18)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
03-23 10:21:36.507: E/AndroidRuntime(395):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1712)
03-23 10:21:36.507: E/AndroidRuntime(395):  ... 11 more
03-23 10:22:58.089: D/dalvikvm(446): GC_FOR_ALLOC freed 55K, 4% free 6389K/6595K, paused 48ms
03-23 10:22:58.128: I/dalvikvm-heap(446): Grow heap (frag case) to 10.253MB for 4096016-byte allocation
03-23 10:22:58.207: D/dalvikvm(446): GC_FOR_ALLOC freed <1K, 3% free 10389K/10631K, paused 46ms
03-23 10:22:58.308: D/dalvikvm(446): GC_CONCURRENT freed <1K, 3% free 10389K/10631K, paused 4ms+2ms
03-23 10:22:59.317: V/TLINE(446): new: android.text.TextLine@40654d68
03-23 10:23:01.357: D/AndroidRuntime(446): Shutting down VM
03-23 10:23:01.357: W/dalvikvm(446): threadid=1: thread exiting with uncaught exception (group=0x40014760)
03-23 10:23:01.367: E/AndroidRuntime(446): FATAL EXCEPTION: main
03-23 10:23:01.367: E/AndroidRuntime(446): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bombil.ramada/com.bombil.ramada.MainMenu}: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1748)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1764)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.ActivityThread.access$1500(ActivityThread.java:122)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1002)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.os.Looper.loop(Looper.java:132)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.ActivityThread.main(ActivityThread.java:4025)
03-23 10:23:01.367: E/AndroidRuntime(446):  at java.lang.reflect.Method.invokeNative(Native Method)
03-23 10:23:01.367: E/AndroidRuntime(446):  at java.lang.reflect.Method.invoke(Method.java:491)
03-23 10:23:01.367: E/AndroidRuntime(446):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
03-23 10:23:01.367: E/AndroidRuntime(446):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
03-23 10:23:01.367: E/AndroidRuntime(446):  at dalvik.system.NativeStart.main(Native Method)
03-23 10:23:01.367: E/AndroidRuntime(446): Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:23:01.367: E/AndroidRuntime(446):  at greendroid.app.GDActivity.getGDApplication(GDActivity.java:205)
03-23 10:23:01.367: E/AndroidRuntime(446):  at greendroid.app.GDActivity.onCreate(GDActivity.java:147)
03-23 10:23:01.367: E/AndroidRuntime(446):  at com.bombil.ramada.MainMenu.onCreate(MainMenu.java:18)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
03-23 10:23:01.367: E/AndroidRuntime(446):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1712)
03-23 10:23:01.367: E/AndroidRuntime(446):  ... 11 more
03-23 10:26:58.047: D/dalvikvm(490): GC_FOR_ALLOC freed 54K, 5% free 6311K/6595K, paused 100ms
03-23 10:26:58.097: I/dalvikvm-heap(490): Grow heap (frag case) to 10.176MB for 4096016-byte allocation
03-23 10:26:58.167: D/dalvikvm(490): GC_FOR_ALLOC freed <1K, 4% free 10310K/10631K, paused 39ms
03-23 10:26:58.267: D/dalvikvm(490): GC_CONCURRENT freed <1K, 4% free 10310K/10631K, paused 5ms+4ms
03-23 10:26:59.298: V/TLINE(490): new: android.text.TextLine@406513b8
03-23 10:27:07.167: D/AndroidRuntime(490): Shutting down VM
03-23 10:27:07.167: W/dalvikvm(490): threadid=1: thread exiting with uncaught exception (group=0x40014760)
03-23 10:27:07.177: E/AndroidRuntime(490): FATAL EXCEPTION: main
03-23 10:27:07.177: E/AndroidRuntime(490): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bombil.ramada/com.bombil.ramada.MainMenu}: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1748)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1764)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.ActivityThread.access$1500(ActivityThread.java:122)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1002)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.os.Looper.loop(Looper.java:132)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.ActivityThread.main(ActivityThread.java:4025)
03-23 10:27:07.177: E/AndroidRuntime(490):  at java.lang.reflect.Method.invokeNative(Native Method)
03-23 10:27:07.177: E/AndroidRuntime(490):  at java.lang.reflect.Method.invoke(Method.java:491)
03-23 10:27:07.177: E/AndroidRuntime(490):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
03-23 10:27:07.177: E/AndroidRuntime(490):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
03-23 10:27:07.177: E/AndroidRuntime(490):  at dalvik.system.NativeStart.main(Native Method)
03-23 10:27:07.177: E/AndroidRuntime(490): Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:27:07.177: E/AndroidRuntime(490):  at greendroid.app.GDActivity.getGDApplication(GDActivity.java:205)
03-23 10:27:07.177: E/AndroidRuntime(490):  at greendroid.app.GDActivity.onCreate(GDActivity.java:147)
03-23 10:27:07.177: E/AndroidRuntime(490):  at com.bombil.ramada.MainMenu.onCreate(MainMenu.java:18)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
03-23 10:27:07.177: E/AndroidRuntime(490):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1712)
03-23 10:27:07.177: E/AndroidRuntime(490):  ... 11 more
03-23 10:31:49.177: D/dalvikvm(567): GC_FOR_ALLOC freed 56K, 4% free 6389K/6595K, paused 47ms
03-23 10:31:49.227: I/dalvikvm-heap(567): Grow heap (frag case) to 10.253MB for 4096016-byte allocation
03-23 10:31:49.297: D/dalvikvm(567): GC_FOR_ALLOC freed <1K, 3% free 10389K/10631K, paused 40ms
03-23 10:31:49.398: D/dalvikvm(567): GC_CONCURRENT freed <1K, 3% free 10389K/10631K, paused 3ms+2ms
03-23 10:31:50.468: V/TLINE(567): new: android.text.TextLine@406405f8
03-23 10:31:52.377: D/AndroidRuntime(567): Shutting down VM
03-23 10:31:52.387: W/dalvikvm(567): threadid=1: thread exiting with uncaught exception (group=0x40014760)
03-23 10:31:52.398: E/AndroidRuntime(567): FATAL EXCEPTION: main
03-23 10:31:52.398: E/AndroidRuntime(567): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bombil.ramada/com.bombil.ramada.MainMenu}: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1748)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1764)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.ActivityThread.access$1500(ActivityThread.java:122)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1002)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.os.Looper.loop(Looper.java:132)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.ActivityThread.main(ActivityThread.java:4025)
03-23 10:31:52.398: E/AndroidRuntime(567):  at java.lang.reflect.Method.invokeNative(Native Method)
03-23 10:31:52.398: E/AndroidRuntime(567):  at java.lang.reflect.Method.invoke(Method.java:491)
03-23 10:31:52.398: E/AndroidRuntime(567):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
03-23 10:31:52.398: E/AndroidRuntime(567):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
03-23 10:31:52.398: E/AndroidRuntime(567):  at dalvik.system.NativeStart.main(Native Method)
03-23 10:31:52.398: E/AndroidRuntime(567): Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:31:52.398: E/AndroidRuntime(567):  at greendroid.app.GDActivity.getGDApplication(GDActivity.java:205)
03-23 10:31:52.398: E/AndroidRuntime(567):  at greendroid.app.GDActivity.onCreate(GDActivity.java:147)
03-23 10:31:52.398: E/AndroidRuntime(567):  at com.bombil.ramada.MainMenu.onCreate(MainMenu.java:18)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
03-23 10:31:52.398: E/AndroidRuntime(567):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1712)
03-23 10:31:52.398: E/AndroidRuntime(567):  ... 11 more
03-23 10:32:23.498: I/Process(567): Sending signal. PID: 567 SIG: 9
03-23 10:32:31.847: D/dalvikvm(605): GC_FOR_ALLOC freed 57K, 4% free 6389K/6595K, paused 44ms
03-23 10:32:31.887: I/dalvikvm-heap(605): Grow heap (frag case) to 10.253MB for 4096016-byte allocation
03-23 10:32:31.967: D/dalvikvm(605): GC_FOR_ALLOC freed <1K, 3% free 10389K/10631K, paused 44ms
03-23 10:32:32.057: D/dalvikvm(605): GC_CONCURRENT freed <1K, 3% free 10389K/10631K, paused 3ms+2ms
03-23 10:32:32.857: V/TLINE(605): new: android.text.TextLine@40644090
03-23 10:32:43.418: D/AndroidRuntime(605): Shutting down VM
03-23 10:32:43.428: W/dalvikvm(605): threadid=1: thread exiting with uncaught exception (group=0x40014760)
03-23 10:32:43.438: E/AndroidRuntime(605): FATAL EXCEPTION: main
03-23 10:32:43.438: E/AndroidRuntime(605): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bombil.ramada/com.bombil.ramada.MainMenu}: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1748)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1764)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.ActivityThread.access$1500(ActivityThread.java:122)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1002)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.os.Looper.loop(Looper.java:132)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.ActivityThread.main(ActivityThread.java:4025)
03-23 10:32:43.438: E/AndroidRuntime(605):  at java.lang.reflect.Method.invokeNative(Native Method)
03-23 10:32:43.438: E/AndroidRuntime(605):  at java.lang.reflect.Method.invoke(Method.java:491)
03-23 10:32:43.438: E/AndroidRuntime(605):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
03-23 10:32:43.438: E/AndroidRuntime(605):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
03-23 10:32:43.438: E/AndroidRuntime(605):  at dalvik.system.NativeStart.main(Native Method)
03-23 10:32:43.438: E/AndroidRuntime(605): Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to greendroid.app.GDApplication
03-23 10:32:43.438: E/AndroidRuntime(605):  at greendroid.app.GDActivity.getGDApplication(GDActivity.java:205)
03-23 10:32:43.438: E/AndroidRuntime(605):  at greendroid.app.GDActivity.onCreate(GDActivity.java:147)
03-23 10:32:43.438: E/AndroidRuntime(605):  at com.bombil.ramada.MainMenu.onCreate(MainMenu.java:18)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
03-23 10:32:43.438: E/AndroidRuntime(605):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1712)
03-23 10:32:43.438: E/AndroidRuntime(605):  ... 11 more
03-23 10:37:43.477: I/Process(605): Sending signal. PID: 605 SIG: 9
Signatory answered 23/3, 2012 at 5:8 Comment(1)
put your logcat & add mainmenu.xmlFallon
E
16

I can only guess. Does you android app extends GDApplication ?

For example (in AndroidManifest.xml):

<application
        android:icon="@drawable/ic_gdcatalog"
        android:label="@string/app_name"
        android:theme="@style/Theme.GDCatalog"
        android:name=".CatalogApplication">
...
...

You should in your class do this:

public class CatalogApplication extends GDApplication {

    @Override
    public Class<?> getHomeActivityClass() {
        return CatalogActivity.class;
    }

    @Override
    public Intent getMainApplicationIntent() {
        return new Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.app_url)));
    }

}

You can also download GDCatalog sample Application and run it in Eclipse.

Estimable answered 23/3, 2012 at 9:9 Comment(2)
yes @Estimable that was my problem. I never declared the catalogAplication.Signatory
This just saved me thanks, reorganising an older app and forgot the android:name="<application>" within` the mainifest!Ene

© 2022 - 2024 — McMap. All rights reserved.