Try using startService() to start your service instead of startActivity ().
Yusuf Saib Android ·T· · ·Mobile· stick together The views, opinions and statements in this email are those of the author solely in their individual capacity, and do not necessarily represent those of T-Mobile USA, Inc. On Jul 30, 8:06 am, kolby <kolbys...@gmail.com> wrote: > Hi all, > I'm trying to call a service directly, and I'm getting an > ActivityNotFoundException thrown. > > My main class looks like this: > --------------------------------------------------------------------------- > ---------------------------------------------------- > @Override > public void onCreate(Bundle savedInstanceState) { > super.onCreate(savedInstanceState); > PackageManager pm = getPackageManager(); > try { > Log.i(TAG,"retrieving services:"); > PackageInfo pinfo = pm.getPackageInfo("test.another", > PackageManager.GET_ACTIVITIES | PackageManager.GET_SERVICES); > for (ServiceInfo serv : pinfo.services) { > Log.i(TAG,"declared service: "+serv.name); > Log.i(TAG," package name: "+serv.packageName); > Log.i(TAG," enabled: "+serv.enabled); > Log.i(TAG," exported: "+serv.exported); > } > } catch (NameNotFoundException e) { > // TODO Auto-generated catch block > e.printStackTrace(); > } > > Intent i = new Intent(); > i.setClassName("test.another", "test.another.MyService"); > startActivity(i); > setContentView(R.layout.main); > } > --------------------------------------------------------------------------- > ---------------------------------- > > My service is empty, minus some log messages: > > --------------------------------------------------------------------------- > --------------------------------- > public void onCreate() { > Log.i(T,"created"); > } > > public void onStart(Intent i, int code) { > Log.i(T,"started"); > } > > @Override > public IBinder onBind(Intent intent) { > // TODO Auto-generated method stub > return null; > } > --------------------------------------------------------------------------- > --------------------------------- > > And the service is declared in the manifest file: > --------------------------------------------------------------------------- > ------------------------------------ > <?xml version="1.0" encoding="utf-8"?> > <manifest xmlns:android="http://schemas.android.com/apk/res/android" > package="test.another" > android:versionCode="1" > android:versionName="1.0"> > <application android:icon="@drawable/icon" android:label="@string/ > app_name"> > <activity android:name=".Main" > android:label="@string/app_name"> > <intent-filter> > <action android:name="android.intent.action.MAIN" /> > <category > android:name="android.intent.category.LAUNCHER" /> > </intent-filter> > </activity> > <service android:name="MyService"></service> > </application> > <uses-sdk android:minSdkVersion="3" /> > </manifest> > > --------------------------------------------------------------------------- > ----------------------------------------- > > When I run it in either the emulator or on my phone, I get this log: > > --------------------------------------------------------------------------- > ----------------------------------------- > 07-30 10:56:52.676: INFO/main(1686): retrieving services: > 07-30 10:56:52.686: INFO/main(1686): declared service: > test.another.MyService > 07-30 10:56:52.686: INFO/main(1686): package name: test.another > 07-30 10:56:52.696: INFO/main(1686): enabled: true > 07-30 10:56:52.696: INFO/main(1686): exported: false > 07-30 10:56:52.696: INFO/ActivityManager(56): Starting activity: > Intent { comp={test.another/test.another.MyService} } > 07-30 10:56:52.716: DEBUG/AndroidRuntime(1686): Shutting down VM > 07-30 10:56:52.716: WARN/dalvikvm(1686): threadid=3: thread exiting > with uncaught exception (group=0x4000fe70) > 07-30 10:56:52.716: ERROR/AndroidRuntime(1686): Uncaught handler: > thread main exiting due to uncaught exception > 07-30 10:56:52.746: DEBUG/dalvikvm(1622): GC freed 5960 objects / > 376680 bytes in 423ms > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): > java.lang.RuntimeException: Unable to start activity ComponentInfo > {test.another/test.another.Main}: > android.content.ActivityNotFoundException: Unable to find explicit > activity class {test.another/test.another.MyService}; have you > declared this activity in your AndroidManifest.xml? > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.ActivityThread.performLaunchActivity(ActivityThread.java: > 2268) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.ActivityThread.handleLaunchActivity(ActivityThread.java: > 2284) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.ActivityThread.access$1800(ActivityThread.java:112) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.ActivityThread$H.handleMessage(ActivityThread.java:1692) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.os.Handler.dispatchMessage(Handler.java:99) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.os.Looper.loop(Looper.java:123) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.ActivityThread.main(ActivityThread.java:3948) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > java.lang.reflect.Method.invokeNative(Native Method) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > java.lang.reflect.Method.invoke(Method.java:521) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run > (ZygoteInit.java:782) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > dalvik.system.NativeStart.main(Native Method) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): Caused by: > android.content.ActivityNotFoundException: Unable to find explicit > activity class {test.another/test.another.MyService}; have you > declared this activity in your AndroidManifest.xml? > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.Instrumentation.checkStartActivityResult > (Instrumentation.java:1480) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.Instrumentation.execStartActivity(Instrumentation.java: > 1454) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.Activity.startActivityForResult(Activity.java:2656) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > test.another.Main.onCreate(Main.java:38) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.Instrumentation.callActivityOnCreate(Instrumentation.java: > 1123) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): at > android.app.ActivityThread.performLaunchActivity(ActivityThread.java: > 2231) > 07-30 10:56:52.746: ERROR/AndroidRuntime(1686): ... 11 more > > --------------------------------------------------------------------------- > ---------------------------------------------------- > > I'm at my wits end here, but to make matters worse, I have an old > project with the same code that works fine. I dumped my development > environment, re-installed everything, still no dice. > > Any help would be greatly appreciated, > Michael --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---