Note that there are some explanatory texts on larger screens.

plurals
  1. POActivityNotFoundException on launching class that is in manifest
    primarykey
    data
    text
    <p>I have an app with the main class launching (or at least this is what I want to happen) two other classes. The main class <code>WhenIGetToActivity</code> launches the fist class <code>CreateLoc</code> without error but throws an ActivityNotFoundException on trying to launch the second <code>Menu</code>.</p> <p>Here is the relevant code from the <code>WhenIGetToActivity</code></p> <pre><code>@Override public boolean onCreateOptionsMenu(Menu menu) { Intent myIntent = new Intent(getApplicationContext(), Menu.class); startActivity(myIntent); return true; } ... public boolean onTap(final GeoPoint p, final MapView mapView) { boolean tapped = super.onTap(p, mapView); if (tapped) { Intent myIntent = new Intent(getApplicationContext(), CreateLoc.class); startActivity(myIntent); } else { </code></pre> <p>Both secondary classes are in the correct (and same) package, both <code>extends Activity</code>.</p> <p>Here is my manifest file</p> <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android" package="SandS.Geo.Cal" android:versionCode="1" android:versionName="1.0" &gt; &lt;uses-sdk android:minSdkVersion="10" /&gt; &lt;uses-permission android:name="android.permission.INTERNET" /&gt; &lt;uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /&gt; &lt;uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" /&gt; &lt;uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /&gt; &lt;application&gt; android:icon="@drawable/ic_launcher" android:label="@string/app_name" &gt; &lt;uses-library android:name="com.google.android.maps" /&gt; &lt;activity android:name=".WhenIGetToActivity" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar" &gt; &lt;intent-filter&gt; &lt;action android:name="android.intent.action.MAIN" /&gt; &lt;category android:name="android.intent.category.LAUNCHER" /&gt; &lt;/intent-filter&gt; &lt;/activity&gt; &lt;activity android:name="CreateLoc" &gt; &lt;/activity&gt; &lt;activity android:name="Menu" &gt; &lt;/activity&gt; &lt;/application&gt; </code></pre> <p></p> <p>Here is the Logcat</p> <pre><code>06-21 17:30:21.479: I/ApplicationPackageManager(3891): cscCountry is not German : XEU 06-21 17:30:22.289: W/TAG(3891): Location unknown 06-21 17:30:22.329: I/MapActivity(3891): Handling network change notification:CONNECTED 06-21 17:30:22.329: E/MapActivity(3891): Couldn't get connection factory client 06-21 17:30:27.189: W/KeyCharacterMap(3891): No keyboard for id 0 06-21 17:30:27.189: W/KeyCharacterMap(3891): Using default keymap: /system/usr/keychars/qwerty.kcm.bin 06-21 17:30:27.229: D/AndroidRuntime(3891): Shutting down VM 06-21 17:30:27.229: W/dalvikvm(3891): threadid=1: thread exiting with uncaught exception (group=0x40018578) 06-21 17:30:27.239: E/AndroidRuntime(3891): FATAL EXCEPTION: main 06-21 17:30:27.239: E/AndroidRuntime(3891): android.content.ActivityNotFoundException: Unable to find explicit activity class {SandS.Geo.Cal/android.view.Menu}; have you declared this activity in your AndroidManifest.xml? 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1405) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.app.Activity.startActivityForResult(Activity.java:2827) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.app.Activity.startActivity(Activity.java:2933) 06-21 17:30:27.239: E/AndroidRuntime(3891): at SandS.Geo.Cal.WhenIGetToActivity.onCreateOptionsMenu(WhenIGetToActivity.java:62) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.app.Activity.onCreatePanelMenu(Activity.java:2158) 06-21 17:30:27.239: E/AndroidRuntime(3891): at com.android.internal.policy.impl.PhoneWindow.preparePanel(PhoneWindow.java:325) 06-21 17:30:27.239: E/AndroidRuntime(3891): at com.android.internal.policy.impl.PhoneWindow.onKeyDownPanel(PhoneWindow.java:570) 06-21 17:30:27.239: E/AndroidRuntime(3891): at com.android.internal.policy.impl.PhoneWindow.onKeyDown(PhoneWindow.java:1220) 06-21 17:30:27.239: E/AndroidRuntime(3891): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1727) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.view.ViewRoot.deliverKeyEventToViewHierarchy(ViewRoot.java:2627) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.view.ViewRoot.handleFinishedEvent(ViewRoot.java:2602) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.view.ViewRoot.handleMessage(ViewRoot.java:1874) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.os.Handler.dispatchMessage(Handler.java:99) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.os.Looper.loop(Looper.java:130) 06-21 17:30:27.239: E/AndroidRuntime(3891): at android.app.ActivityThread.main(ActivityThread.java:3687) 06-21 17:30:27.239: E/AndroidRuntime(3891): at java.lang.reflect.Method.invokeNative(Native Method) 06-21 17:30:27.239: E/AndroidRuntime(3891): at java.lang.reflect.Method.invoke(Method.java:507) 06-21 17:30:27.239: E/AndroidRuntime(3891): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) 06-21 17:30:27.239: E/AndroidRuntime(3891): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 06-21 17:30:27.239: E/AndroidRuntime(3891): at dalvik.system.NativeStart.main(Native Method) </code></pre> <p>I have tried Cleaning the Project.</p> <p>Any ideas.</p> <p>Following suggestions from 4 answers that I change the name of the class, I have done so it in now called <code>StevesToolsMenu.class</code></p> <p>The new <code>onCreateOptionsMenu</code> now has the line:</p> <pre><code>Intent myIntent = new Intent(getApplicationContext(), StevesToolsMenu.class); </code></pre> <p>The relevant part of the manifest file is now:</p> <pre><code>&lt;application&gt; android:icon="@drawable/ic_launcher" android:label="@string/app_name" &gt; &lt;uses-library android:name="com.google.android.maps" /&gt; &lt;activity android:name=".WhenIGetToActivity" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar" &gt; &lt;intent-filter&gt; &lt;action android:name="android.intent.action.MAIN" /&gt; &lt;category android:name="android.intent.category.LAUNCHER" /&gt; &lt;/intent-filter&gt; &lt;/activity&gt; &lt;activity android:name=".CreateLoc" &gt; &lt;/activity&gt; &lt;activity android:name=".StevesToolsMenu" &gt; &lt;/activity&gt; &lt;/application&gt; </code></pre> <p>The new Logcat is:</p> <pre><code>06-23 15:14:22.989: I/ApplicationPackageManager(4088): cscCountry is not German : XEU 06-23 15:14:23.789: W/TAG(4088): Location unknown 06-23 15:14:23.849: I/MapActivity(4088): Handling network change notification:CONNECTED 06-23 15:14:23.849: E/MapActivity(4088): Couldn't get connection factory client 06-23 15:14:30.219: W/KeyCharacterMap(4088): No keyboard for id 0 06-23 15:14:30.219: W/KeyCharacterMap(4088): Using default keymap: /system/usr/keychars/qwerty.kcm.bin 06-23 15:14:30.289: I/ApplicationPackageManager(4088): cscCountry is not German : XEU 06-23 15:14:30.319: D/AndroidRuntime(4088): Shutting down VM 06-23 15:14:30.319: W/dalvikvm(4088): threadid=1: thread exiting with uncaught exception (group=0x40018578) 06-23 15:14:30.329: E/AndroidRuntime(4088): FATAL EXCEPTION: main 06-23 15:14:30.329: E/AndroidRuntime(4088): java.lang.RuntimeException: Unable to start activity ComponentInfo{SandS.Geo.Cal/SandS.Geo.Cal.StevesToolsMenu}: android.view.InflateException: Binary XML file line #7: Error inflating class &lt;unknown&gt; 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.os.Handler.dispatchMessage(Handler.java:99) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.os.Looper.loop(Looper.java:130) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.ActivityThread.main(ActivityThread.java:3687) 06-23 15:14:30.329: E/AndroidRuntime(4088): at java.lang.reflect.Method.invokeNative(Native Method) 06-23 15:14:30.329: E/AndroidRuntime(4088): at java.lang.reflect.Method.invoke(Method.java:507) 06-23 15:14:30.329: E/AndroidRuntime(4088): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) 06-23 15:14:30.329: E/AndroidRuntime(4088): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 06-23 15:14:30.329: E/AndroidRuntime(4088): at dalvik.system.NativeStart.main(Native Method) 06-23 15:14:30.329: E/AndroidRuntime(4088): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class &lt;unknown&gt; 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.createView(LayoutInflater.java:518) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.rInflate(LayoutInflater.java:623) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.inflate(LayoutInflater.java:408) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 06-23 15:14:30.329: E/AndroidRuntime(4088): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:209) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.Activity.setContentView(Activity.java:1657) 06-23 15:14:30.329: E/AndroidRuntime(4088): at SandS.Geo.Cal.StevesToolsMenu.onCreate(StevesToolsMenu.java:20) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615) 06-23 15:14:30.329: E/AndroidRuntime(4088): ... 11 more 06-23 15:14:30.329: E/AndroidRuntime(4088): Caused by: java.lang.reflect.InvocationTargetException 06-23 15:14:30.329: E/AndroidRuntime(4088): at java.lang.reflect.Constructor.constructNative(Native Method) 06-23 15:14:30.329: E/AndroidRuntime(4088): at java.lang.reflect.Constructor.newInstance(Constructor.java:415) 06-23 15:14:30.329: E/AndroidRuntime(4088): at android.view.LayoutInflater.createView(LayoutInflater.java:505) 06-23 15:14:30.329: E/AndroidRuntime(4088): ... 21 more 06-23 15:14:30.329: E/AndroidRuntime(4088): Caused by: java.lang.IllegalArgumentException: MapViews can only be created inside instances of MapActivity. 06-23 15:14:30.329: E/AndroidRuntime(4088): at com.google.android.maps.MapView.&lt;init&gt;(MapView.java:291) 06-23 15:14:30.329: E/AndroidRuntime(4088): at com.google.android.maps.MapView.&lt;init&gt;(MapView.java:264) 06-23 15:14:30.329: E/AndroidRuntime(4088): at com.google.android.maps.MapView.&lt;init&gt;(MapView.java:247) 06-23 15:14:30.329: E/AndroidRuntime(4088): ... 24 more </code></pre> <p>We seem to have replaced one problem with another (or rather uncovered a second problem).</p> <p>Whichever way you look at it, I still find it difficult to understand why one class should work and another (setup in seemingly the same way) class does not.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload