Hello, In an ActivityUnitTestCase I'm trying to do:
Activity activity = startActivity(INSERT_INTENT, initialState, null); Bundle outState = new Bundle(); getInstrumentation().callActivityOnSaveInstanceState(activity, outState); But on the save state call I get this trace: android.util.AndroidRuntimeException: Acquiring SearchManager objects only valid in Activity Contexts. at android.app.ApplicationContext.getSearchManager(ApplicationContext.java:976) at android.app.ApplicationContext.getSystemService(ApplicationContext.java:861) at android.view.ContextThemeWrapper.getSystemService(ContextThemeWrapper.java:73) at android.app.Activity.getSystemService(Activity.java:3091) at android.app.Activity.performSaveInstanceState(Activity.java:1004) at android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1255) at com.blah.blah.SomeActivityTest.testLoadingAndSavingState(SomeActivityTest.java:90) at java.lang.reflect.Method.invokeNative(Native Method) at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:136) at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:126) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:155) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:142) at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:313) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1508) Going through the ApplicationContext source code I've found this (http://tinyurl.com/d8qsyc): private SearchManager getSearchManager() { // This is only useable in Activity Contexts if (getActivityToken() == null) { throw new AndroidRuntimeException( "Acquiring SearchManager objects only valid in Activity Contexts."); } synchronized (mSync) { if (mSearchManager == null) { mSearchManager = new SearchManager(getOuterContext(), mMainThread.getHandler()); } } return mSearchManager; } It seems the problem is that the activity token is not set. But here I'm puzzled, I don't know where to go next. Any ideas on how to fix it or workaround it are appreciated. I want to test that my application is saving its state correctly. Thanks. -- J. Pablo Fernández <pup...@pupeno.com> (http://pupeno.com) --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---