Excellent workflow and yes, streamlining is a tough job.
I started with a 1 minute process with a lot of clicking to a process with 1 click and can collect a feature in 1 second.
On step 6 and 7 this is where you can actually remove step 8, 9, 10.
I have personally worked with the ListViewActionItemPage and yes it doesn't require a feature object, but there is something inside that page that we don't see. My initial guess was the Feature object, but it could definitely be something else.
Right now I am using the GPSAveragingTool instead of the GPSAveragingPage (this will save 10 seconds and 2-3 clicks).
My old code used a GPS average of 2, I found this to be useless for my use cases. Also in ArcGIS Mobile 10.1 I believe they removed the GPSAveragingTool. Instead replaced it with GPSSingleShot, so I would recommend against using it and instead use the GPSStreamingTool.
Regardless here is how my older code works.
When the user goes to the Attributes page, the GPSAveragingTool is already averaging in the background. So I change the Next button to reflect the averaging being completed.
For example, user is now at the AttributesPage, there is a Cancel and a Next button. However the Next button's text shows the following; "GPS Averaging 0/10" then "GPS Averaging 1/10" and etc, all the way up to 10/10. Then the text of the Next button becomes "Next".
When the user clicks on the Next button with the text of Next it will save and sync the feature.
If the user clicks on the Next button while it is averaging, it will do nothing.
When you use the GPSAveragingTool or GPSStreamingTool you will not need to use Step 8,9,10, because you will no longer be using ESRI's forms, but instead coding your own Geometry collection methods.
PS: I will be switching from the GPSAveragingTool to the GPSStreamingTool and then try the GPSSingleShot when I am in 10.1.
In conclusion, modify the application to use the GPSAveragingTool or GPSStreamingTool. So after the user clicks on the FeatureType, go to the AttributesForm, start your GPSAveraging behind the scenes, when the user clicks Next, the feature is saved and go to a page you desire.
For my use cases my each deployment of my application is used in a moving state, meaning vehicles or walking, so Averaging made no sense. I simply use an instantaneous GPS position but I still use the GPSAveragingTool, I take an average of 1 point (itself) which is instantaneous.
Let me know what you think?