On Saturday, December 8, 2012 12:11:28 PM UTC, Mihai Badea wrote:
--Dear friends,I would like to create a launch configuration, to run any activity with arguments, for quick manually interactive testing.I have one Android Application with many activities. Some of them are chained in a wizard, each activity is a step, so they are launched from one another, with put extras in the intent as arguments for the next step. I would like to quickly reach the read marked step marked in the flow below, in other words I would like to launch directly an activity towards the end of my wizard, without having to go through all the previous wizard steps.[extras] [...] [...] [extras] [...] [...]Activity_1 --------> Activity_2 --> [...] --> Activity_6 ----------> Activity_7 --> [...] --> Activity_9I managed to create a run configuration that launches the activity I want. But I can't find how to define the extras in the run config, and without arguments running that activity doesn't make sense.To create a run configuration for a different activity I added a LAUNCHER intent-filter in AndroidManifert.xml:<activityandroid:name=".Activity_7"android:label="@string/label_activity_7" > <meta-dataandroid:name="android.support.PARENT_ACTIVITY" android:value="com.example.hello.activity_6" /><intent-filter><action android:name="android.intent.action.WHATEVER_ELSE_THAN_ MAIN_TO_AVOID_ICON_IN_ LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter></activity>I am following two paths that I think might achieve what I want - but so far to no avail:1. Trying to use ActivityManager in the ADB shell to launch the activity, then try to fit these parameters in the launch configuration file:~ $ adb shell$ am start -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -n com.example.hello/Activity_7 -e "param_1" "foo" -e "param_2" "boo" Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.hello/. Activity_7 (has extras) } OK this worked fine in ADB Shell. I launched directly the 7th step in my wizard, with params: param_1=foo, param_2=boo and I can now manually test directly the activity I am working on. I didn't have to go jumping hoops through all previous 6 steps of the wizard so I can reach where I want and have a play at the UI.Now I need to enter this params somehow in "Eclipse->Run->Run Configurations...->Android Application". Seems there's no means to to that.Trying to edit directly the launch file from "workspace\.metadata\.plugins\org.eclipse.debug.core\. xml file:launches\Activity_2.launch" [...]<launchConfiguration type="com.android.ide.eclipse.adt.debug.LaunchConfigType"> <intAttribute key="com.android.ide.eclipse.adt.action" value="1"/> <stringAttribute key="com.android.ide.eclipse.adt.activity" value="com.example.hello. Activity_2"/> <stringAttribute key="com.android.ide.eclipse.adt.commandline" value=""/> [...]No matter what I wrote in the value of "com.android.ide.eclipse.adt.commandline" or whatever other "com.android.ide.eclipse.adt.*" attributes I added, I could not manage a proper activity launch with extras.I have no idea why I don't find this feature, it seems quite basic in an IDE, that when you have run configurations forsoftware with various entry points, you should have a means to pass arguments to them too? 2. Android JUnit TestI need interactive testing. I want to play myself with the UI and see how the user experience feels like. JUnit tests can do UI automation, monkey and other UI stuff, but what I want from it is to start the activity I want and then give me the control for a while.So far I didn't find interactive support in Android Unit Test. Does such a feature exist?Many thanks for your reading this and any helpful thoughts you might have.Mihai
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+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
No comments:
Post a Comment